Lançado Adianti Framework 7.6!
Clique aqui para saber mais
SQLSTATE[3F000]: Invalid schema name Olá, pessoal, estou recebendo a seguinte mensagem ao carregar uma grid. SQLSTATE[3F000]: Invalid schema name: 7 ERROR: schema "teste" does not exist LINE 1: SELECT count(*) FROM "teste"."unit_historic" ^.. Porém os dados são carregados. Meu model ...
RS
SQLSTATE[3F000]: Invalid schema name  
Olá, pessoal, estou recebendo a seguinte mensagem ao carregar uma grid.

SQLSTATE[3F000]: Invalid schema name: 7 ERROR: schema "teste" does not exist LINE 1: SELECT count(*) FROM "teste"."unit_historic" ^..


Porém os dados são carregados.

Meu model

  1. <?php
  2. class UnitHistory extends TRecord
  3. {
  4.     const TABLENAME 'sgo.unit_historic';
  5.     const PRIMARYKEY'id';
  6.     const IDPOLICY =  'max'// {max, serial}
  7.     private $unit_type;
  8.     private $person;
  9.     private $system_unit;
  10.     private $upper_unit;
  11.     public function __construct($id NULL$callObjectLoad TRUE)
  12.     {
  13.         parent::__construct($id$callObjectLoad);
  14.         parent::addAttribute('created');
  15.         parent::addAttribute('updated');
  16.         parent::addAttribute('active');
  17.         parent::addAttribute('end_date');
  18.         parent::addAttribute('start_date');
  19.         parent::addAttribute('system_unit_id');
  20.         parent::addAttribute('type_id');
  21.         parent::addAttribute('observation');
  22.         parent::addAttribute('responsible_id');
  23.         parent::addAttribute('code');
  24.         parent::addAttribute('upper_id');
  25.         parent::addAttribute('code_upper');
  26.     }
  27.     public function set_unit_type(UnitType $object)
  28.     {
  29.         $this->unit_type $object;
  30.         $this->unit_type_id $object->id;
  31.     }
  32.     public function get_unit_type()
  33.     {
  34.       try{
  35.           TTransaction::open('teste');
  36.           // loads the associated object
  37.           if (empty($this->unit_type))
  38.               $this->unit_type = new UnitType($this->type_id);
  39.           // returns the associated object
  40.           return $this->unit_type;
  41.           TTransaction::close();
  42.         }
  43.         catch (Exception $e)
  44.         {
  45.             parent::add($e->getMessage());
  46.         }
  47.     }
  48.    
  49.     public function set_person(Person $object)
  50.     {
  51.         $this->person $object;
  52.         $this->person_id $object->id;
  53.     }
  54.     public function get_person()
  55.     {
  56.         // loads the associated object
  57.         if (empty($this->person))
  58.             $this->person = new Person($this->person_id);
  59.         // returns the associated object
  60.         return $this->person;
  61.     }
  62.     public function set_system_unit(SystemUnit $object)
  63.     {
  64.         $this->system_unit $object;
  65.         $this->system_unit_id $object->id;
  66.     }
  67.     public function get_system_unit()
  68.     {
  69.         try{
  70.             TTransaction::open('permission');
  71.             if (empty($this->system_unit))
  72.             {
  73.                 $system_unit SystemUnit::where('id','=',$this->system_unit_id)->load();
  74.                 $this->system_unit $system_unit[0];
  75.             }
  76.             return $this->system_unit;
  77.               TTransaction::close();
  78.         }
  79.         catch (Exception $e)
  80.         {
  81.             parent::add($e->getMessage());
  82.         }
  83.     }
  84.     public function get_upper_unit()
  85.     {
  86.         try{
  87.             TTransaction::open('permission');
  88.             if (empty($this->upper_unit))
  89.             {
  90.                 $upper_unit SystemUnit::where('id','=',$this->upper_id)->load();
  91.                 $this->upper_unit $upper_unit[0];
  92.             }
  93.             return $this->upper_unit;
  94.               TTransaction::close();
  95.         }
  96.         catch (Exception $e)
  97.         {
  98.             parent::add($e->getMessage());
  99.         }
  100.     }
  101. }
  102. ?>

Grid
  1. <?php
  2. class UnitDataGrid extends TPage
  3. {
  4.     protected $form;     // registration form
  5.     protected $datagrid// listing
  6.     protected $pageNavigation;
  7.     use Adianti\base\AdiantiStandardListTrait;
  8.     public function __construct()
  9.     {
  10.         parent::__construct();
  11.         $this->setDatabase('sgo');            // defines the database
  12.         $this->setActiveRecord('UnitHistory');   // defines the active record
  13.         $this->setDefaultOrder('id''asc');         // defines the default order
  14.         $this->setLimit(5);
  15.         //$this->setCriteria($criteria) // define a standard filter
  16.         $this->addFilterField('id''=''id'); // filterField, operator, formField
  17.         $this->addFilterField('system_unit->code_unit''like''code'); // filterField, operator, formField
  18.         $this->addFilterField('system_unit_id''=''system_unit_id'); // filterField, operator, formField
  19.         $this->addFilterField('type_id''=''type_id'); // filterField, operator, formField
  20.         $this->addFilterField('code_upper''like''code_upper'); // filterField, operator, formField
  21.         $this->addFilterField('upper_id''like''upper_id'); // filterField, operator, formField
  22.         $this->addFilterField('start_date''like''start_date'); // filterField, operator, formField
  23.         $this->addFilterField('responsible_id''like''responsible_id'); // filterField, operator, formField
  24.         $this->addFilterField('observation''like''observation'); // filterField, operator, formField
  25.         $this->addFilterField('active''like''active'); //filterField, operator, formField
  26.         $this->form = new TForm('form_search_UnitHistory');
  27.         $this->form->style 'overflow-x:auto';
  28.         $id = new TEntry('id');
  29.         $code = new TEntry('code');
  30.         $system_unit_id = new TDBUniqueSearch('system_unit_id''permission''SystemUnit''id','name');
  31.         //$type_id = new TEntry('type_id');
  32.         $type_id = new TDBUniqueSearch('type_id''sgo''UnitType''id','name');
  33.         $code_upper = new TEntry('code_upper');
  34.         $upper_id = new TEntry('upper_id');
  35.         $start_date = new TEntry('start_date');
  36.         $responsible_id = new TEntry('responsible_id');
  37.         $observation = new TEntry('observation');
  38.         $active = new TEntry('active');
  39.         $id->exitOnEnter();
  40.         $code->exitOnEnter();
  41.         //$type_id->exitOnEnter();
  42.         $code_upper->exitOnEnter();
  43.         $upper_id->exitOnEnter();
  44.         $start_date->exitOnEnter();
  45.         $responsible_id->exitOnEnter();
  46.         $observation->exitOnEnter();
  47.         $active->exitOnEnter();
  48.         $id->setSize('100%');
  49.         $code->setSize('100%');
  50.         $system_unit_id->setSize('100%');
  51.         $type_id->setSize('100%');
  52.         $code_upper->setSize('100%');
  53.         $upper_id->setSize('100%');
  54.         $start_date->setSize('100%');
  55.         $responsible_id->setSize('100%');
  56.         $observation->setSize('100%');
  57.         $active->setSize('100%');
  58.         $id->tabindex = -1;
  59.         $code->tabindex = -1;
  60.         $system_unit_id->tabindex = -1;
  61.         $type_id->tabindex = -1;
  62.         $code_upper->tabindex = -1;
  63.         $upper_id->tabindex = -1;
  64.         $start_date->tabindex = -1;
  65.         $responsible_id->tabindex = -1;
  66.         $observation->tabindex = -1;
  67.         $active->tabindex = -1;
  68.         $id->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']));
  69.         $code->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']));
  70.         $system_unit_id->setChangeAction( new TAction([$this'onSearch'], ['static'=>'1']));
  71.         $type_id->setChangeAction( new TAction([$this'onSearch'], ['static'=>'1']));
  72.         //$type_id->setExitAction( new TAction([$this, 'onSearch'], ['static'=>'1']));
  73.         $code_upper->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  74.         $upper_id->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  75.         $start_date->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  76.         $responsible_id->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  77.         $observation->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  78.         $active->setExitAction( new TAction([$this'onSearch'], ['static'=>'1']) );
  79.         //creates a DataGrid
  80.         $this->datagrid = new BootstrapDatagridWrapper(new TDataGrid);
  81.         $this->datagrid->style 'width: 100%';
  82.         //$this->datagrid->enablePopover('Popover', 'Hi <b> {name} </b>');
  83.         //creates the datagrid columns
  84.         $column_id = new TDataGridColumn('id''#''center');
  85.         $column_code = new TDataGridColumn('code',_t('Code'), 'center');
  86.         $column_system_unit_id = new TDataGridColumn('system_unit->name'_t('Unit'), 'left');
  87.         $column_type_id = new TDataGridColumn('unit_type->name',_t('Type'), 'left');
  88.         $column_code_upper = new TDataGridColumn('code_upper',_t('Code'), 'center');
  89.         $column_upper_id = new TDataGridColumn('upper_unit->name'_t('Higher'), 'left');
  90.         $column_start_date = new TDataGridColumn('start_date''Start Date''left');
  91.         $column_responsible_id = new TDataGridColumn('responsible_id''Responsible''left');
  92.         $column_observation = new TDataGridColumn('observation''Observation''left');
  93.         $column_active = new TDataGridColumn('active',_t('Active'), 'center');
  94.         //add the columns to the DataGrid
  95.         $this->datagrid->addColumn($column_id);
  96.         $this->datagrid->addColumn($column_code);
  97.         $this->datagrid->addColumn($column_system_unit_id);
  98.         $this->datagrid->addColumn($column_type_id);
  99.         $this->datagrid->addColumn($column_code_upper);
  100.         $this->datagrid->addColumn($column_upper_id);
  101.         $this->datagrid->addColumn($column_start_date);
  102.         $this->datagrid->addColumn($column_responsible_id);
  103.         $this->datagrid->addColumn($column_observation);
  104.         $this->datagrid->addColumn($column_active);
  105.         //creates the datagrid column actions
  106.         $column_id->setAction(new TAction([$this'onReload']), ['order' => 'id']);
  107.         $column_code->setAction(new TAction([$this'onReload']), ['order' => 'code']);
  108.         $column_system_unit_id->setAction(new TAction([$this'onReload']), ['order' => 'system_unit_id']);
  109.         $column_type_id->setAction(new TAction([$this'onReload']), ['order' => 'type_id']);
  110.         $column_code_upper->setAction(new TAction([$this'onReload']), ['order' => 'code_upper']);
  111.         $column_upper_id->setAction(new TAction([$this'onReload']), ['order' => 'upper_id']);
  112.         $column_start_date->setAction(new TAction([$this'onReload']), ['order' => 'start_date']);
  113.         $column_responsible_id->setAction(new TAction([$this'onReload']), ['order' => 'responsible_id']);
  114.         //define the transformer method over image
  115.         $column_start_date->setTransformer( function($value$object$row) {
  116.             if ($value)
  117.             {
  118.                 try
  119.                 {
  120.                     $date = new DateTime($value);
  121.                     return $date->format('d/m/Y');
  122.                 }
  123.                 catch (Exception $e)
  124.                 {
  125.                     return $value;
  126.                 }
  127.             }
  128.             return $value;
  129.         });
  130.         $action1 = new TDataGridAction(['SgoUnits''onEdit'], ['id'=>'{id}']);
  131.         $action2 = new TDataGridAction([$this'onDelete'], ['id'=>'{id}']);
  132.         $action3 = new TDataGridAction(['FormResponsible''onSend'], ['id'=>'{id}']);
  133.         $this->datagrid->addAction($action1_t('Edit'),   'far:edit blue');
  134.         $this->datagrid->addAction($action2 ,_t('Delete'), 'far:trash-alt red');
  135.         $this->datagrid->addAction($action3 ,_t('Edit'), 'fa:plus green');
  136.         //create the datagrid model
  137.         $this->datagrid->createModel();
  138.         //add datagrid inside form
  139.         $this->form->add($this->datagrid);
  140.         //create row with search inputs
  141.         $tr = new TElement('tr');
  142.         $this->datagrid->prependRow($tr);
  143.         $tr->addTElement::tag('td',''));
  144.         $tr->addTElement::tag('td',''));
  145.         $tr->addTElement::tag('td',''));
  146.         $tr->addTElement::tag('td'$id));
  147.         $tr->addTElement::tag('td'$code));
  148.         $tr->addTElement::tag('td'$system_unit_id));
  149.         $tr->addTElement::tag('td'$type_id));
  150.         $tr->addTElement::tag('td'$code_upper));
  151.         $tr->addTElement::tag('td'$upper_id));
  152.         $tr->addTElement::tag('td'$start_date));
  153.         $tr->addTElement::tag('td'$responsible_id));
  154.         $tr->addTElement::tag('td'$observation));
  155.         $tr->addTElement::tag('td'$active));
  156.         $this->form->addField($id);
  157.         $this->form->addField($code);
  158.         $this->form->addField($system_unit_id);
  159.         $this->form->addField($type_id);
  160.         $this->form->addField($code_upper);
  161.         $this->form->addField($upper_id);
  162.         $this->form->addField($start_date);
  163.         $this->form->addField($responsible_id);
  164.         $this->form->addField($observation);
  165.         $this->form->addField($active);
  166.         //keep form filled
  167.         $this->form->setDataTSession::getValue(__CLASS__.'_filter_data'));
  168.         //create the page navigation
  169.         $this->pageNavigation = new TPageNavigation;
  170.         $this->pageNavigation->setAction(new TAction([$this'onReload']));
  171.         $this->pageNavigation->enableCounters();
  172.         $panel = new TPanelGroup(_t('Units'));
  173.         //turn on horizontal scrolling inside panel body
  174.         $panel->getBody()->style "overflow-x:auto;";
  175.         $panel->add($this->form);
  176.         $panel->addFooter($this->pageNavigation);
  177.         //header actions
  178.         $dropdown = new TDropDown(_t('Export'), 'fa:list');
  179.         $dropdown->setPullSide('right');
  180.         $dropdown->setButtonClass('btn btn-default waves-effect dropdown-toggle');
  181.         $dropdown->addAction_t('Save as CSV'), new TAction([$this'onExportCSV'], ['register_state' => 'false''static'=>'1']), 'fa:table blue');
  182.         $dropdown->addAction_t('Save as PDF'), new TAction([$this'onExportPDF'], ['register_state' => 'false''static'=>'1']), 'far:file-pdf red');
  183.         $dropdown->addAction'Save as XLS', new TAction([$this'onExportXLS'], ['register_state' => 'false''static'=>'1']), 'fa:file-excel fa-fw purple');
  184.         $dropdown->addAction'Save as XML', new TAction([$this'onExportXML'], ['register_state' => 'false''static'=>'1']), 'fa:code fa-fw green');
  185.         $panel->addHeaderWidget$dropdown );
  186.         $panel->addHeaderActionLink_t('New'),  new TAction(['SgoUnits''onEdit'], ['register_state' => 'false']), 'fa:plus green' );
  187.         $panel->addHeaderActionLink(_t('Record Updated'),new TAction([__CLASS__'onReload'],['register_state' => 'false''static'=>'1']), 'fa:plus green' );
  188.         //vertical box container
  189.         $container = new TVBox;
  190.         $container->style 'width: 100%';
  191.         //$container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  192.         $container->add($panel);
  193.         parent::add($container);
  194.     }
  195. }
  196. ?>


Editado 26/10/2022 (há 1 ano) - 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 (0)