Erro na abertura construtor de AdiantiControlTPage Pessoal, preciso de ajuda para poder rodar o form em php onde este form busca o funcionario e abre o report em html. codigo abaixo: ...
AL
Erro na abertura construtor de AdiantiControlTPage  
Pessoal,

preciso de ajuda para poder rodar o form em php onde este form busca o funcionario e abre o report em html.


codigo abaixo:


 
  1. <?php
  2. //class DpessoalFuncionariosDocumentTRES extends TPage
  3. class DpessoalFuncionariosDocumentTRES extends TPage
  4. {
  5. private static $database = 'mini_erp';
  6. private static $activeRecord = 'DpessoalFuncionarios';
  7. private static $primaryKey = 'id_funcionario';
  8. private static $htmlFile = 'app/documents/DpessoalFuncionariosDocumentTRESTemplate.html';
  9. /**
  10. * Form constructor
  11. * @param $param Request
  12. */
  13. public function __construct( $param )
  14. {
  15. }
  16. public static function onGenerate($param)
  17. {
  18. try
  19. {
  20. TTransaction::open(self::$database);
  21. $class = self::$activeRecord;
  22. $object = new $class($param['key']);
  23. $html = new AdiantiHTMLDocumentParser(self::$htmlFile);
  24. $html->setMaster($object);
  25. $html->process();
  26. $document = 'tmp/'.uniqid().'.pdf';
  27. $html->saveAsPDF($document, 'A4', 'portrait');
  28. TTransaction::close();
  29. parent::openFile($document);
  30. new TMessage('info', _t('Document successfully generated'));
  31. }
  32. catch (Exception $e)
  33. {
  34. // shows the exception error message
  35. new TMessage('error', $e->getMessage());
  36. // undo all pending operations
  37. TTransaction::rollback();
  38. }
  39. }
  40. }

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 (4)


MG

O framework tem algumas regras,
Uma dela é que o código principal de ciração do form esteja no construtor.

Isso não ocorre nesta classe. Seu construtor está vazio.
AL

pode mostrar o modelo de como deveria está ai no construtor?
MG

Claro, segue

 
  1. <?php
  2. private $form; // varial da classe
  3. public funciton __construct*(
  4. {
  5. parent::__construct();
  6. $this->form = new BootstrapFormWrapper(new TQuickForm,'form-vertical');
  7. $this->form->setFieldsByRow(1);
  8. // actions
  9. $btn_generate = $this->form->addQuickAction('Salvar',new TAction([$this,'onGenerate']),'fa:floppy-o #ffffff');
  10. $btn_generate->class ='btn btn-primary';
  11. $panel = new TPanelGroup('Bootstrap Vertical Form');
  12. $panel->add($this->form);
  13. // vertical box container
  14. $container = new TVBox;
  15. $container->style = 'width: 100%';
  16. $container->class = 'form-container';
  17. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  18. $container->add($panel);
  19. parent::add($container);
  20. }
  21. ?>
AL

Marcelo,

obrigado com seu exemplo consegui resolver e puxar os dados do funcionario.

Obrigado pelo apoio.

Att.

Amós Lima