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

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto 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.