Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Dados não carregados, erro no datagrid Prezados, Boa tarde. Sou novo na progração php. Estou tentando replicar um exercício do curso adminando o adianti framework7. Acontece que ao desenvolver um form simples de listagem, está apresentando o seguinte erro(abaixo). Não estou entendendo qual a causa do problema. O código está semelhante ao que foi explicano nas vídeos aulas pelo prof. Pablo, mas o erro persiste. Aos amigos,...
AT
Dados não carregados, erro no datagrid  
Prezados,
Boa tarde.

Sou novo na progração php. Estou tentando replicar um exercício do curso adminando o adianti framework7.
Acontece que ao desenvolver um form simples de listagem, está apresentando o seguinte erro(abaixo). Não estou entendendo qual a causa do problema. O código está semelhante ao que foi explicano nas vídeos aulas pelo prof. Pablo, mas o erro persiste.
Aos amigos, que puderem identificar a causa, fico grato.

Obs: o mesmo error contece para a linha: 72.

Segue o erro:
//-------------------------------------------------
Using $this when not in object context
C:xampphtdocsgto_software02appcontrolmain_gestaoAnosList.php:66

File: appcontrolmain_gestaoAnosList.php:97
AnosList::onReload(AnosList)
File: libadianticoreAdiantiCoreApplication.php:96
AnosList->show(AnosList)
File: engine.php:27
AdiantiCoreAdiantiCoreApplication::run(1)
File: engine.php:66
TApplication::run()
//--------------------------------------------------------------



Segue o código da classe:

  1. <?php
  2. class AnosList extends TPage
  3. {
  4.     private $form;
  5.     private $datagrid;
  6.     private $pageNavigation;
  7.     private $loaded;
  8.     public function __construct()
  9.     {
  10.         parent::__construct();
  11.         $this->datagrid = new BootstrapDatagridWrapper(new TDataGrid);
  12.         $this->datagrid->width '100%';
  13.         $col_id = new TDataGridColumn('id''Código''right''10%');
  14.         $col_anos = new TDataGridColumn('cad_ano_ano''Anos''left''90%');
  15.         /** 
  16.          * 
  17.          * ordenação aqui.
  18.          *
  19.          * **/
  20.         $this->datagrid->addColumn($col_id);
  21.         $this->datagrid->addColumn($col_anos);
  22.         $action1 = new TDataGridAction( ['Cad_AnosForm''onEdit'], ['key' => '{id}'] );
  23.         $action2 = new TDataGridAction( [$this'onDelete'], ['key' => '{id}'] );
  24.         $this->datagrid->addAction($action1'Editar''fa:edit blue');
  25.         $this->datagrid->addAction($action2'Excluir''fa:trash-alt red');
  26.         $this->datagrid->createModel();
  27.         $this->pageNavigation = new TPageNavigation;
  28.         $this->pageNavigation->setAction( new TAction([$this'onReload'] ));
  29. /*        $vbox = new TVBox;
  30.         $vbox->style = 'width:100%';
  31.         $vbox->add($this->datagrid);
  32.         $vbox->add($this->pageNavigation);*/
  33.         $panel = new TPanelGroup;
  34.         $panel->add($this->datagrid);
  35.         $panel->add($this->pageNavigation);
  36.         parent::add($panel);
  37. }
  38. public static function onReload($param)
  39.     {  
  40.         try
  41.         {
  42.             TTransaction::open('gto_software02');
  43.             $repository = new TRepository('Cad_AnosCreate');
  44.             
  45.             $criteria = new TCriteria;    
  46.             $anos $repository->load($criteria);
  47.             
  48.             $this->datagrid->clear(); // para limpar a datagrid
  49.             if ($anos)
  50.             {
  51.                 foreach ($anos as $ano)
  52.                 {
  53.                     $this->datagrid->addItem($ano);
  54.                 }
  55.             }
  56.             $this->loaded true;
  57.             TTransaction::close();
  58.     
  59.         }
  60.         catch (Exception $e)
  61.         {
  62.             new TMessage('error'$e->getMessage());
  63.         }
  64. }
  65. public static function onDelete($param)
  66. {
  67. }
  68. function show()
  69. {
  70.     if (!$this->loaded)
  71.     {
  72.         $this->onReloadfunc_get_arg(0) );
  73.     }
  74.     parent::show();
  75. }
  76. }
  77. ?>
Editado 30/10/2023 (há 6 meses) - Clique para ver alterações

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


AT

Colegas,

Através deste post:
https://adiantiframework.com.br/forum/view_6925?span-classhighlightreferenciaspan-ao-span-classhighlightobjetospan-span-classhighlightatravesspan-do-span-classhighlightthisspan-dentro-de-uma-funcao

Consegui identificar o problema.

Obrigado.