Lançado Adianti Framework 7.6!
Clique aqui para saber mais
PDF Exibe um registro em cada página Boa noite. Crie um PDF no designer do Studio e quando gero o mesmo ele exibe um registro em cada página. Gostaria que ficassem todos os registros um abaixo do outro e ao final de cada página passasse para a próxima dando seguimento aos dados. Onde estou errando? ...
CM
PDF Exibe um registro em cada página  
Boa noite.
Crie um PDF no designer do Studio e quando gero o mesmo ele exibe um registro em cada página.
Gostaria que ficassem todos os registros um abaixo do outro e ao final de cada página passasse para a próxima dando seguimento aos dados.
Onde estou errando?

  1. <?php
  2. function onGenerate()
  3.     {
  4.         try
  5.         {
  6.             // open a transaction with database 'samples'
  7.             TTransaction::open('guttierre');
  8.             
  9.             // load all customers
  10.             $repository = new TRepository('Custo');
  11.             $criteria   = new TCriteria;
  12.             $Custo $repository->load($criteria);
  13.             
  14.             $data $this->form->getData('Custo');
  15.             $this->form->validate();
  16.             
  17.             $designer = new TPDFDesigner;
  18.             $designer->fromXml('app/reports/ListaCusto.pdf.xml');
  19.             $designer->generate();
  20.                                     
  21.             $fill TRUE;
  22.             $designer->gotoAnchorXY('');
  23.             $designer->SetFont('Arial'''8);
  24.             $designer->setFontColorRGB'#000000' );
  25.            
  26.            $designer->setAutoPageBreak(true,0);
  27.            
  28.             if ($Custo)
  29.             {
  30.                 foreach ($Custo as $Custo)
  31.                 {
  32.                     $designer->gotoAnchorX('');
  33.                     $designer->Ln(18);
  34.                     $designer->Cell(70,10DateTime::createFromFormat('Y-m-d'$Custo->data_custo)->format'd/m/Y' ), 00'C'$fill);
  35.                     $designer->Cell(41012utf8_decode($Custo->fornecedor->descricao), 00'L'$fill);
  36.                     $designer->Cell(8512utf8_decode($Custo->custo_total), 00'R'$fill);
  37.                     // cabeçalho
  38.                     $designer->Image('http://zeromeia.com/apps/zeromeia/app/images/ZeroMeia_640x286.jpg',20,18,-300);
  39.                     $designer->SetY(75);
  40.                     $designer->SetFont('Arial'''18);
  41.                     $designer->setFontColorRGB'#000000' );
  42.                     $designer->SetxY(50,86);
  43.                     $designer->SetFont('Arial'''10);
  44.                     $designer->setFontColorRGB'#000000' );
  45.                     $designer->Cell(010utf8_decode('www.zeromeia.com'),0,0,'L');
  46.                                                              
  47.                                                              
  48.                     // rodapé
  49.                     $designer->SetY(-12);
  50.                     $designer->SetFont('Arial'''8);
  51.                     $designer->setFontColorRGB'#000000' ); 
  52.                     $designer->Cell(59010utf8_decode('Pág. ').$designer->PageNo().' de {nb}',0,0,'R');                                         
  53.                     $designer->SetY(-12);
  54.                     $designer->Cell(12210utf8_decode('Zero Meia Tecnologia © 2018 '),0,0,'R'); 
  55.                     $designer->SetY(-12);
  56.                     $designer->Cell(340,10,utf8_decode("Impresso em ".date("d/m/Y H:i:s"."")),0,1,'R');
  57.                     $designer->SetY(-12);
  58.                     $designer->Cell(410,10,utf8_decode(" - ".TSession::getValue('username')),0,1,'R'); //nome do usuário
  59.                     
  60.                     // grid background
  61.                     $fill = !$fill;
  62.                 }
  63.             }
  64.             
  65.             $file 'app/output/ListaCusto.pdf';
  66.             
  67.             if (!file_exists($file) OR is_writable($file))
  68.             {
  69.                 $designer->save($file);
  70.                 parent::openFile($file);
  71.             }
  72.             else
  73.             {
  74.                 throw new Exception(_t('Permission denied') . ': ' $file);
  75.             }
  76.             
  77.            // new TMessage('info', 'Relatório gerado. Por favor, habilite os popups no seu navegador.');
  78.             
  79.             // close the transaction
  80.             TTransaction::close();
  81.         }
  82.         catch (Exception $e// in case of exception
  83.         {
  84.             new TMessage('error''<b>Error</b> ' $e->getMessage());
  85.             TTransaction::rollback();
  86.         }
  87.     }
  88. ?>

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (4)


NR

Por que a impressão do cabeçalho e rodapé está dentro do foreach?
CM

Boa noite Nataniel.
Sabe que nem me dei conta disso?
Seria esse o problema?
Vou testar amanhã na empresa e retorno.
Abraço
CM

Outra coisa amigo.
Será que poderia dar uma força nesse tópico?
Falta só um detalhe para finalizar.
Mas não encontro o erro.

www.adianti.com.br/forum/pt/view_4543?alinhamento-de-campo-no-pdf-de

Obrigado
CM

Resolvido.
Obrigado