Erro no Store alguem ja passou por esse erro na hora de fazer um update ( ! ) PDOException: SQLSTATE[HY000]: General error: 1205 Tempo de espera (timeout) de travamento excedido. Tente reiniciar a transação. in F:SistemaJorgeCentralFomentolibadiantidatabaseTRecord.php on line 393 ja aumentei o timeout o maximo que pude no servidor local e ainda da esse erro. o codigo que esta dando erro é es...
JR
Erro no Store  
alguem ja passou por esse erro na hora de fazer um update

( ! ) PDOException: SQLSTATE[HY000]: General error: 1205 Tempo de espera (timeout) de travamento excedido. Tente reiniciar a transação. in F:SistemaJorgeCentralFomentolibadiantidatabaseTRecord.php on line 393

ja aumentei o timeout o maximo que pude no servidor local e ainda da esse erro.

o codigo que esta dando erro é esse abaixo.
 
  1. <?php
  2. /**
  3. * method onGenerate()
  4. * Executed whenever the user clicks at the generate button
  5. */
  6. function onGeraPDFTitulos($idLote)
  7. {
  8. try
  9. {
  10. $titRel = 'Analise de Conflitos de Títulos';
  11. // TTransaction::setLogger(new TLoggerHTML('tmp/erros/LogGeraDPFTitulos'.'.html'));
  12. // TTransaction::log("** Ate aqui Ok<br> ");
  13. // open a transaction with database 'permission'
  14. TTransaction::open('permission');
  15. // get the form data into an active record
  16. //$formdata = $this->form->getData();
  17. $repository = new TRepository('TempGnrtit');
  18. $criteria = new TCriteria;
  19. $param['order'] = 'temp_id';
  20. $param['direction'] = 'asc';
  21. $criteria->setProperties($param);
  22. $filtro = '';
  23. $today = date('d/m/Y');
  24. $time = date('H:i:s');
  25. TTransaction::setLogger(new TLoggerHTML('tmp/erros/LogGeraDPFTitulosComproblemas'.'.html'));
  26. $objects = $repository->load($criteria);
  27. //TTransaction::log("** Ate aqui Ok<br> ".print_r($objects,true));
  28. TTransaction::log("** Ate aqui Ok<br> ");
  29. //$format = $formdata->output_type;
  30. if ($objects)
  31. {
  32. $widths = array(250,95,100,95,250);
  33. $tr = new TTableWriterPDF($widths,'l','pt','A4');
  34. $pdf = $tr->getNativeWriterPDF();
  35. //$pdf->SetMargins(10, 10);
  36. $pdf->SetAutoPageBreak(true, 10);
  37. // Arial bold 15
  38. $pdf->SetFont('Arial','B',15);
  39. // create the document styles
  40. $tr->addStyle('title', 'Arial', '8', '', '#000000', '#ffffff');
  41. $tr->addStyle('datap', 'Arial', '8', '', '#000000', '#ffffff');
  42. $tr->addStyle('datai', 'Arial', '8', '', '#000000', '#F8F8FF');
  43. $tr->addStyle('header', 'Times', '10', 'B', '#000000', '#ffffff');
  44. $tr->addStyle('footer', 'Times', '12', 'BI', '#000000', '#ffffff');
  45. // Adicionando Header do relatorio
  46. $pdf->AliasNbPages();
  47. $pdf->SetFont('Arial','B',9);
  48. $pdf->Cell(35,10,$today . ' - ' . $time,0,0,'C');
  49. $pdf->Cell(1475,10,'Pagina '.$pdf->PageNo().'/{nb}',0,0,'C');
  50. $pdf->Line('0',40,'850',40);
  51. $pdf->Image('app/images/CDF.png',365,45,80);
  52. $pdf->line('0','155','850','155');
  53. $pdf->Ln(20);
  54. $pdf->SetFont('Arial','B',20);
  55. $pdf->Cell(750,242,utf8_decode($titRel),0,0,'C');
  56. $pdf->Ln(-105);
  57. /// fim do Header
  58. // Adicionando Titulos da linha do relatório
  59. $tr->addRow();
  60. $tr->addCell('Sacado', 'center', 'title','1','1');
  61. //$tr->addCell('Cedente', 'center', 'title','1','1');
  62. $tr->addCell('Título', 'center', 'title','1','1');
  63. $tr->addCell('Vencimento', 'center', 'title','1','1');
  64. $tr->addCell('Vlr. Titulos', 'center', 'title','1','1');
  65. $tr->addCell('Empresa', 'center', 'title','1','1');
  66. // fim da linha de titulos
  67. $colour= FALSE;
  68. $data = new DateTime('NOW');
  69. $dia_anterior_hora_zerada = new DateTime();
  70. $dia_anterior_hora_zerada = $data;
  71. $dia_anterior_hora_zerada->setTime(00,00,00);
  72. $dia_anterior_hora_zerada->modify('-5 day');
  73. //Inicio dos dados
  74. foreach ($objects as $object)
  75. {
  76. $Sacado = new GnrPess($object->temp_SacId);
  77. $titulo = new GnrTit($object->temp_TitIdPesq);
  78. $emp = new GnrEmp($object->temp_TitEmpEnc);
  79. if (($emp->GnrPubPriv == 0 ) && (strtotime($emp->GnrEmpDtPub) < strtotime($dia_anterior_hora_zerada->format('Y-m-d H:m:s'))))
  80. {
  81. $empresa = substr($emp->GnrEmpNomeRedu,0,20);
  82. }else
  83. {
  84. $empresa = 'Privada';
  85. }
  86. $tr->addRow();
  87. $style = $colour ? 'datap' : 'datai';
  88. $tr->addCell($Sacado->GnrPessNome, 'left', $style,'1','1');
  89. $tr->addCell($titulo->GnrTitNum, 'center', $style,'1','1');
  90. $tr->addCell(TDate::date2br($titulo->GnrTitVenOrig), 'center', $style,'1','1');
  91. $tr->addCell(number_format($titulo->GnrTitVlrOrig, 2, ',', '.'), 'center', $style,'1','1');
  92. $tr->addCell($empresa, 'left', $style,'1','1');
  93. $colour = !$colour;
  94. $headerfooter = $pdf->GetY();
  95. if($headerfooter > 540)
  96. {
  97. $pdf->AcceptPageBreak();
  98. $pdf->AddPage();
  99. //inicio do header
  100. $pdf->SetFont('Arial','B',9);
  101. $pdf->Cell(35,10,$today . ' - ' . $time,0,0,'C');
  102. $pdf->Cell(1475,10,'Pagína '.$pdf->PageNo().'/{nb}',0,0,'C');
  103. $pdf->Line('0',40,'850',40);
  104. $pdf->Image('app/images/CDF.png',365,45,80);
  105. $pdf->line('0','155','850','155');
  106. $pdf->Ln(20);
  107. $pdf->SetFont('Arial','B',20);
  108. $pdf->Cell(750,242,utf8_decode($titRel),0,0,'C');
  109. $pdf->Ln(-105);
  110. // Adicionando Titulos da linha do relatório
  111. $tr->addRow();
  112. $tr->addCell('Sacado', 'center', 'title','1','1');
  113. //$tr->addCell('Cedente', 'center', 'title','1','1');
  114. $tr->addCell('Título', 'center', 'title','1','1');
  115. $tr->addCell('Vencimento', 'center', 'title','1','1');
  116. $tr->addCell('Vlr. Titulos', 'center', 'title','1','1');
  117. $tr->addCell('Empresa', 'center', 'title','1','1');
  118. }
  119. }
  120. // stores the file // refazer esse nome do PDF
  121. $nomeCripto = md5('GnrTitReport001'.date('Y-m-d H:i:s'));
  122. if (!file_exists("out/".$nomeCripto.'CRL'.$idLote.".pdf") OR is_writable("out/".$nomeCripto.'CRL'.$idLote.".pdf"))
  123. {
  124. $tr->save("out/".$nomeCripto.'CRL'.$idLote.".pdf");
  125. $retorno = "out/".$nomeCripto.'CRL'.$idLote.".pdf";
  126. try
  127. {
  128. # abri a tabela de lote e gravar o PDF ERRO NESSE UPDATE
  129. //TTransaction::open('permission');
  130. TTransaction::setLogger(new TLoggerHTML('tmp/erros/logLote'.$idLote.'.html'));
  131. $binario = file_get_contents($retorno);
  132. $Lote = new GnrTitLot($idLote);
  133. TTransaction::log("** gravando log lote<br> ". print_r($Lote,true));
  134. TTransaction::log("** LOG GnrTitLog gravando log lote2 <br> ". $idLote);
  135. //$Lote->GnrTitLotPdf = $binario; // comentei pois pensava que era o tamanho do arquivo que era muito grande 199k
  136. //$Lote->GnrTitLotNmPdf = $nomeCripto.'CRL'.$idLote.".pdf";
  137. $Lote->GnrSttId = 22;
  138. $ret = $Lote->store();
  139. TTransaction::log("** Retorno do update do lote <br> ". $ret);
  140. //TTransaction::close();
  141. }catch( Exception $e)
  142. {
  143. $retorno .= 'Problemas para gravar Lote update'.print_r($e,true);
  144. }
  145. }
  146. else
  147. {
  148. $retorno .= 1 ;
  149. $retorno .= 'Não foi possivel criar pasta: ' . "out/".$nomeCripto.".pdf";
  150. }
  151. }
  152. TTransaction::close();
  153. }
  154. catch (Exception $e) // in case of exception
  155. {
  156. // shows the exception error message
  157. $retorno = $e->getMessage();
  158. // undo all pending operations
  159. TTransaction::rollback();
  160. }
  161. return $retorno;
  162. }
  163. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (0)