MOSTRAR O NOME DA CIDADE AO INVES DO ID Como faço para mostrar o nome da cidade ao invés do numero, sendo que o nome das cidades estao em outra tabela e o campo comum das duas tabelas é ID_CIDADE....
LG
MOSTRAR O NOME DA CIDADE AO INVES DO ID  
Fechado
Como faço para mostrar o nome da cidade ao invés do numero, sendo que o nome das cidades estao em outra tabela e o campo comum das duas tabelas é ID_CIDADE.

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


NR

Supondo que você tenha o model Cidade e o model Cliente:
 
  1. <?php
  2. class Cliente extends TRecord
  3. {
  4. public function get_cidade()
  5. {
  6. if (empty($this->cidade))
  7. $this->cidade = new Cidade($this->ID_CIDADE);
  8. // returns the associated object
  9. return $this->cidade;
  10. }
  11. }
  12. // em qualquer control
  13. $cliente = new Cliente(1);
  14. echo $cliente->cidade->nome;
  15. ?>
LG

foi criado model Cidade e o model Cliente.

fiquei com duvida aonde coloco esse codigo
tenho um arquivo ClientList.class.php coloco esse codigo :


 
  1. <?php
  2. class Cliente extends TRecord
  3. {
  4. const TABLENAME = 'cliente';
  5. const PRIMARYKEY= 'id';
  6. const IDPOLICY = 'max'; // {max, serial}
  7. public function get_situacao_cli()
  8. {
  9. $nomes = array('A'=>'Ativo', 'B'=>'Bloqueado','I'=>'Inativo');
  10. return $nomes[$this->SITUACAO];
  11. }
  12. public function get_cidade()
  13. {
  14. if (empty($this->cidade))
  15. $this->cidade = new Cidade($this->ID_CIDADE);
  16. // returns the associated object
  17. return $this->cidade;
  18. }
  19. }
  20. //$cliente = new Cliente(1);
  21. //echo $cliente->cidade->nome
  22. ?>




 
  1. <?php
  2. /**
  3. * ClienteList Listing
  4. * @author <your name here>
  5. */
  6. class ClienteList extends TStandardList
  7. {
  8. protected $form; // registration form
  9. protected $datagrid; // listing
  10. protected $pageNavigation;
  11. protected $formgrid;
  12. protected $deleteButton;
  13. protected $transformCallback;
  14. /**
  15. * Page constructor
  16. */
  17. public function __construct()
  18. {
  19. parent::__construct();
  20. parent::setDatabase('conexao'); // defines the database
  21. parent::setActiveRecord('Cliente'); // defines the active record
  22. parent::setDefaultOrder('ID_CLIENTE', 'asc'); // defines the default order
  23. // parent::setCriteria($criteria) // define a standard filter
  24. parent::addFilterField('CODIGO', '=', 'CODIGO'); // filterField, operator, formField
  25. parent::addFilterField('RAZAO_SOCIAL', 'like', 'RAZAO_SOCIAL'); // filterField, operator, formField
  26. parent::addFilterField('CPF', 'like', 'CPF'); // filterField, operator, formField
  27. parent::addFilterField('CNPJ', 'like', 'CNPJ'); // filterField, operator, formField
  28. parent::addFilterField('ID_CIDADE', 'like', 'ID_CIDADE'); // filterField, operator, formField
  29. parent::addFilterField('FONE', 'like', 'FONE'); // filterField, operator, formField
  30. parent::addFilterField('SITUACAO', 'like', 'SITUACAO'); // filterField, operator, formField
  31. // creates the form
  32. $this->form = new TQuickForm('form_search_Cliente');
  33. $this->form->class = 'tform'; // change CSS class
  34. $this->form->style = 'display: table;width:100%'; // change style
  35. $this->form->setFormTitle('Cliente');
  36. // create the form fields
  37. $CODIGO = new TEntry('CODIGO');
  38. $RAZAO_SOCIAL = new TEntry('RAZAO_SOCIAL');
  39. $CPF = new TEntry('CPF');
  40. $CNPJ = new TEntry('CNPJ');
  41. $ID_CIDADE = new TEntry('ID_CIDADE');
  42. $FONE = new TEntry('FONE');
  43. $SITUACAO = new TEntry('SITUACAO');
  44. // add the fields
  45. $this->form->addQuickField('Código:', $CODIGO, 70 );
  46. $this->form->addQuickField('Razão Social:', $RAZAO_SOCIAL, 400 );
  47. $this->form->addQuickField('CPF/CNPJ:', $CPF, 200 );
  48. $this->form->addQuickField('Situação:', $SITUACAO, 200 );
  49. // keep the form filled during navigation with session data
  50. $this->form->setData( TSession::getValue('Cliente_filter_data') );
  51. // add the search form actions
  52. $this->form->addQuickAction(_t('Find'), new TAction(array($this, 'onSearch')), 'fa:search');
  53. $this->form->addQuickAction(_t('New'), new TAction(array('ClienteForm', 'onEdit')), 'bs:plus-sign green');
  54. // creates a DataGrid
  55. $this->datagrid = new TDataGrid;
  56. $this->datagrid->style = 'width: 100%';
  57. $this->datagrid->setHeight(320);
  58. // $this->datagrid->datatable = 'true';
  59. // $this->datagrid->enablePopover('Popover', 'Hi <b> {name} </b>');
  60. // creates the datagrid columns
  61. $column_CODIGO = new TDataGridColumn('CODIGO', 'Código', 'center');
  62. $column_RAZAO_SOCIAL = new TDataGridColumn('RAZAO_SOCIAL', 'Razão Social', 'left');
  63. $column_CPF = new TDataGridColumn('CPF', 'CPF/CNPJ', 'center');
  64. $column_CNPJ = new TDataGridColumn('CNPJ', 'CNPJ', 'center');
  65. $column_ID_CIDADE = new TDataGridColumn('cidade', 'Cidade', 'center');
  66. $column_FONE = new TDataGridColumn('FONE', 'Telefone', 'center');
  67. $column_SITUACAO = new TDataGridColumn('situacao_cli', 'Situação', 'center');
  68. // add the columns to the DataGrid
  69. $this->datagrid->addColumn($column_CODIGO);
  70. $this->datagrid->addColumn($column_RAZAO_SOCIAL);
  71. $this->datagrid->addColumn($column_CPF);
  72. //$this->datagrid->addColumn($column_CNPJ);
  73. $this->datagrid->addColumn($column_ID_CIDADE);
  74. $this->datagrid->addColumn($column_FONE);
  75. $this->datagrid->addColumn($column_SITUACAO);
  76. // creates the datagrid column actions
  77. $order_CODIGO = new TAction(array($this, 'onReload'));
  78. $order_CODIGO->setParameter('order', 'CODIGO');
  79. $column_CODIGO->setAction($order_CODIGO);
  80. $order_RAZAO_SOCIAL = new TAction(array($this, 'onReload'));
  81. $order_RAZAO_SOCIAL->setParameter('order', 'RAZAO_SOCIAL');
  82. $column_RAZAO_SOCIAL->setAction($order_RAZAO_SOCIAL);
  83. // create EDIT action
  84. $action_edit = new TDataGridAction(array('ClienteForm', 'onEdit'));
  85. $action_edit->setUseButton(TRUE);
  86. $action_edit->setButtonClass('btn btn-default');
  87. $action_edit->setLabel(_t('Edit'));
  88. $action_edit->setImage('fa:pencil-square-o blue fa-lg');
  89. $action_edit->setField('ID_CLIENTE');
  90. $this->datagrid->addAction($action_edit);
  91. // create DELETE action
  92. $action_del = new TDataGridAction(array($this, 'onDelete'));
  93. $action_del->setUseButton(TRUE);
  94. $action_del->setButtonClass('btn btn-default');
  95. $action_del->setLabel(_t('Delete'));
  96. $action_del->setImage('fa:trash-o red fa-lg');
  97. $action_del->setField('ID_CLIENTE');
  98. $this->datagrid->addAction($action_del);
  99. // create the datagrid model
  100. $this->datagrid->createModel();
  101. // create the page navigation
  102. $this->pageNavigation = new TPageNavigation;
  103. $this->pageNavigation->setAction(new TAction(array($this, 'onReload')));
  104. $this->pageNavigation->setWidth($this->datagrid->getWidth());
  105. // vertical box container
  106. $container = new TVBox;
  107. $container->style = 'width: 100%';
  108. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  109. $container->add($this->form);
  110. $container->add($this->datagrid);
  111. $container->add($this->pageNavigation);
  112. parent::add($container);
  113. }
  114. }
  115. mas da erro</your>
LG

Notice: Undefined property: Cliente::$cidade in C:\xampp\htdocs\framework\app\control\admin\ClienteList.class.php on line 20
LG

Sem transação ativa com a base de dados: AdiantiDatabaseTRecord::load cliente
NR

Leonardo, poste os 3 códigos completos: model de Cidade, model de Cliente e List de Cliente
LG

Cidade.class.php

 
  1. <?php
  2. /**
  3. * Cidade Active Record
  4. * @author <your-name-here>
  5. */
  6. class Cidade extends TRecord
  7. {
  8. const TABLENAME = 'cidade';
  9. const PRIMARYKEY= 'ID_CIDADE';
  10. const IDPOLICY = 'serial'; // {max, serial}
  11. /**
  12. * Constructor method
  13. */
  14. public function __construct($id = NULL, $callObjectLoad = TRUE)
  15. {
  16. parent::__construct($id, $callObjectLoad);
  17. parent::addAttribute('DESCRICAO');
  18. parent::addAttribute('UF');
  19. parent::addAttribute('COD_IBGE');
  20. parent::addAttribute('CEP');
  21. parent::addAttribute('ID_USUARIO');
  22. parent::addAttribute('DATA_HORA_ALT');
  23. parent::addAttribute('CONCORRENCIA');
  24. parent::addAttribute('ID_PAIS');
  25. }
  26. }
  27. Cliente.class.php:
 
  1. <?php
  2. /**
  3. * Cliente Active Record
  4. * @author <your-name-here>
  5. */
  6. class Cliente extends TRecord
  7. {
  8. const TABLENAME = 'cliente';
  9. const PRIMARYKEY= 'ID_CLIENTE';
  10. const IDPOLICY = 'serial'; // {max, serial}
  11. public function __construct($id = NULL, $callObjectLoad = TRUE)
  12. {
  13. parent::__construct($id, $callObjectLoad);
  14. parent::addAttribute('CODIGO');
  15. parent::addAttribute('RAZAO_SOCIAL');
  16. parent::addAttribute('NOME_FANTASIA');
  17. parent::addAttribute('ENDERECO');
  18. parent::addAttribute('NUMERO');
  19. parent::addAttribute('COMPLEMENTO');
  20. parent::addAttribute('BAIRRO');
  21. parent::addAttribute('ID_CIDADE');
  22. parent::addAttribute('FONE');
  23. parent::addAttribute('FAX');
  24. parent::addAttribute('CELULAR');
  25. parent::addAttribute('CONTATO');
  26. parent::addAttribute('CNPJ');
  27. parent::addAttribute('INSCRICAO');
  28. parent::addAttribute('EMAIL');
  29. parent::addAttribute('CPF');
  30. parent::addAttribute('IDENTIDADE');
  31. parent::addAttribute('TITULO_ELEITOR');
  32. parent::addAttribute('CART_PROFIS');
  33. parent::addAttribute('CART_SERIE');
  34. parent::addAttribute('CART_ORGAO');
  35. parent::addAttribute('FILIACAO_PAI');
  36. parent::addAttribute('FILIACAO_MAE');
  37. parent::addAttribute('DATA_NASCIMENTO');
  38. parent::addAttribute('DATA_CADASTRO');
  39. parent::addAttribute('DATA_ALTERACAO');
  40. parent::addAttribute('DEPENDENTES');
  41. parent::addAttribute('COMPROVANTE_ENDERECO');
  42. parent::addAttribute('DATA_ENDERECO');
  43. parent::addAttribute('TIPO_CASA');
  44. parent::addAttribute('VALOR_ALUGUEL');
  45. parent::addAttribute('VALOR_DESPESAS');
  46. parent::addAttribute('ABERTURA_CADASTRO');
  47. parent::addAttribute('NATURALIDADE');
  48. parent::addAttribute('EMPREGO_ANTERIOR');
  49. parent::addAttribute('TEMPO_SERVICO');
  50. parent::addAttribute('EMPRESA_NOME');
  51. parent::addAttribute('EMPRESA_ID_CIDADE');
  52. parent::addAttribute('EMPRESA_FUNCAO');
  53. parent::addAttribute('EMPRESA_ADMISSAO');
  54. parent::addAttribute('EMPRESA_FONE');
  55. parent::addAttribute('RENDA_CLIENTE');
  56. parent::addAttribute('RENDA_CONJUGE');
  57. parent::addAttribute('LIMITE_CREDITO');
  58. parent::addAttribute('CONCEITO');
  59. parent::addAttribute('ESTADO_CIVIL');
  60. parent::addAttribute('SEXO');
  61. parent::addAttribute('SITUACAO');
  62. parent::addAttribute('CONJUGE_NOME');
  63. parent::addAttribute('CONJUGE_NASCIMENTO');
  64. parent::addAttribute('CONJUGE_TRABALHO');
  65. parent::addAttribute('CONJUGE_ADMISSAO');
  66. parent::addAttribute('CONJUGE_FONE');
  67. parent::addAttribute('ENTREGA_NOME');
  68. parent::addAttribute('ENTREGA_ENDERECO');
  69. parent::addAttribute('ENTREGA_BAIRRO');
  70. parent::addAttribute('ENTREGA_ID_CIDADE');
  71. parent::addAttribute('ENTREGA_FONE');
  72. parent::addAttribute('NOME_CONHECIDO1');
  73. parent::addAttribute('NOME_CONHECIDO2');
  74. parent::addAttribute('REF_BANCO1');
  75. parent::addAttribute('REF_BANCO2');
  76. parent::addAttribute('REF_BANCO3');
  77. parent::addAttribute('REF_BANCO1_CONTA');
  78. parent::addAttribute('REF_BANCO2_CONTA');
  79. parent::addAttribute('REF_BANCO3_CONTA');
  80. parent::addAttribute('REF_COM_NOME1');
  81. parent::addAttribute('REF_COM_NOME2');
  82. parent::addAttribute('REF_COM_NOME3');
  83. parent::addAttribute('REF_COM_FONE1');
  84. parent::addAttribute('REF_COM_FONE2');
  85. parent::addAttribute('REF_COM_FONE3');
  86. parent::addAttribute('REF_COM_VALOR1');
  87. parent::addAttribute('REF_COM_VALOR2');
  88. parent::addAttribute('REF_COM_VALOR3');
  89. parent::addAttribute('REF_COM_PONTUALIDADE1');
  90. parent::addAttribute('REF_COM_PONTUALIDADE2');
  91. parent::addAttribute('REF_COM_PONTUALIDADE3');
  92. parent::addAttribute('INDICADOR_1');
  93. parent::addAttribute('INDICADOR_2');
  94. parent::addAttribute('INDICADOR_3');
  95. parent::addAttribute('INDICADOR_4');
  96. parent::addAttribute('INDICADOR_5');
  97. parent::addAttribute('INDICADOR_6');
  98. parent::addAttribute('INDICADOR_7');
  99. parent::addAttribute('INDICADOR_8');
  100. parent::addAttribute('INDICADOR_9');
  101. parent::addAttribute('INDICADOR_10');
  102. parent::addAttribute('SPC_DATA_ENVIO');
  103. parent::addAttribute('SPC_VALOR_COMPRA');
  104. parent::addAttribute('SPC_DATA_BAIXA');
  105. parent::addAttribute('SERASA_DATA_ENVIO');
  106. parent::addAttribute('SERASA_VALOR_COMPRA');
  107. parent::addAttribute('SERASA_DATA_BAIXA');
  108. parent::addAttribute('OUTRA_DATA_ENVIO');
  109. parent::addAttribute('OUTRA_VALOR_COMPRA');
  110. parent::addAttribute('OUTRA_DATA_BAIXA');
  111. parent::addAttribute('OBSERVACOES');
  112. parent::addAttribute('TABELA_PRECO');
  113. parent::addAttribute('TIPO_PAGAMENTO');
  114. parent::addAttribute('FORMA_PAGAMENTO');
  115. parent::addAttribute('ALTERAR_PRECO');
  116. parent::addAttribute('ID_CLIENTE_COBRANCA');
  117. parent::addAttribute('IND_TIPO_PAGAMENTO');
  118. parent::addAttribute('RECEBE_COBRANCA');
  119. parent::addAttribute('COBRAR_TAXA_CARTORIO');
  120. parent::addAttribute('COBRAR_TAXA_BANCARIA');
  121. parent::addAttribute('ID_USUARIO');
  122. parent::addAttribute('DATA_HORA_ALT');
  123. parent::addAttribute('ID_VENDEDOR');
  124. parent::addAttribute('ID_TIPO_ATIVIDADE');
  125. parent::addAttribute('ID_PRACA');
  126. parent::addAttribute('ID_EMPRESA');
  127. parent::addAttribute('CONCORRENCIA');
  128. parent::addAttribute('EMAIL_NFE');
  129. parent::addAttribute('ID_FOTO');
  130. parent::addAttribute('UNIDADE_VENDA');
  131. parent::addAttribute('ID_EMPRESA_NF');
  132. parent::addAttribute('EMITE_NOTA');
  133. parent::addAttribute('CEP');
  134. parent::addAttribute('ID_TRANSPORTADOR');
  135. parent::addAttribute('SALDO_CREDITO');
  136. parent::addAttribute('CODIGO_CONVENIO');
  137. parent::addAttribute('ID_CAIXA');
  138. parent::addAttribute('HISTORICO_VENDAS');
  139. parent::addAttribute('HISTORICO_ITENS');
  140. parent::addAttribute('DESCONTO');
  141. parent::addAttribute('ID_BANCO');
  142. parent::addAttribute('EMAIL_BOLETO');
  143. parent::addAttribute('ID_REDE');
  144. parent::addAttribute('DIA_VENCTO');
  145. parent::addAttribute('DIA_VIRADA');
  146. parent::addAttribute('ID_FORMA');
  147. parent::addAttribute('MATRICULA');
  148. parent::addAttribute('AUTORIZADO1');
  149. parent::addAttribute('AUTORIZADO2');
  150. parent::addAttribute('AUTORIZADO3');
  151. parent::addAttribute('AUTORIZADO4');
  152. parent::addAttribute('AUTORIZADO5');
  153. parent::addAttribute('AUTORIZADO6');
  154. parent::addAttribute('TRANSMITIDO');
  155. parent::addAttribute('OBS_SPC1');
  156. parent::addAttribute('OBS_SPC2');
  157. parent::addAttribute('OBS_SPC3');
  158. parent::addAttribute('ROUPA_CALCA');
  159. parent::addAttribute('ROUPA_CAMISA');
  160. parent::addAttribute('ROUPA_SAPATO');
  161. parent::addAttribute('ROUPA_BLAZER');
  162. parent::addAttribute('DIRETORIO');
  163. parent::addAttribute('DESC_FINANCEIRO');
  164. parent::addAttribute('IND_TPAGTO');
  165. parent::addAttribute('DESPESAS_CLIENTE');
  166. parent::addAttribute('NOME_USER_LIBEROU');
  167. parent::addAttribute('ID_USER_LIBEROU');
  168. parent::addAttribute('MOTIVO_LIBERACAO');
  169. parent::addAttribute('LIBERA_CREDIARIO');
  170. parent::addAttribute('DATA_HORA_LIBERACAO');
  171. parent::addAttribute('QUAL_PRECO');
  172. parent::addAttribute('CARENCIA');
  173. parent::addAttribute('ID_FOTO_A1');
  174. parent::addAttribute('ID_FOTO_A2');
  175. parent::addAttribute('ID_FOTO_A3');
  176. parent::addAttribute('ID_FOTO_A4');
  177. parent::addAttribute('ID_FOTO_A5');
  178. parent::addAttribute('ID_FOTO_A6');
  179. parent::addAttribute('VALOR_AUTORIZADO1');
  180. parent::addAttribute('VALOR_AUTORIZADO2');
  181. parent::addAttribute('VALOR_AUTORIZADO3');
  182. parent::addAttribute('VALOR_AUTORIZADO4');
  183. parent::addAttribute('VALOR_AUTORIZADO5');
  184. parent::addAttribute('VALOR_AUTORIZADO6');
  185. parent::addAttribute('DI_AUTORIZADO1');
  186. parent::addAttribute('DI_AUTORIZADO2');
  187. parent::addAttribute('DI_AUTORIZADO3');
  188. parent::addAttribute('DI_AUTORIZADO4');
  189. parent::addAttribute('DI_AUTORIZADO5');
  190. parent::addAttribute('DI_AUTORIZADO6');
  191. parent::addAttribute('DF_AUTORIZADO1');
  192. parent::addAttribute('DF_AUTORIZADO2');
  193. parent::addAttribute('DF_AUTORIZADO3');
  194. parent::addAttribute('DF_AUTORIZADO4');
  195. parent::addAttribute('DF_AUTORIZADO5');
  196. parent::addAttribute('DF_AUTORIZADO6');
  197. parent::addAttribute('DOC_AUTORIZADO1');
  198. parent::addAttribute('DOC_AUTORIZADO2');
  199. parent::addAttribute('DOC_AUTORIZADO3');
  200. parent::addAttribute('DOC_AUTORIZADO4');
  201. parent::addAttribute('DOC_AUTORIZADO5');
  202. parent::addAttribute('DOC_AUTORIZADO6');
  203. parent::addAttribute('ENDERECO_TRABALHO');
  204. parent::addAttribute('CONTATO_FINANCEIRO');
  205. parent::addAttribute('FONE_FINANCEIRO');
  206. parent::addAttribute('RG_EXPEDICAO');
  207. parent::addAttribute('RG_ORGAO');
  208. parent::addAttribute('ESCOLARIDADE');
  209. parent::addAttribute('DESC_APOSENTADORIA');
  210. parent::addAttribute('DESC_PENSAO');
  211. parent::addAttribute('NRO_APOSENTADORIA');
  212. parent::addAttribute('NRO_PENSAO');
  213. parent::addAttribute('NIT');
  214. parent::addAttribute('ID_SITUACAO');
  215. parent::addAttribute('ID_CONJUGE');
  216. parent::addAttribute('ENDERECO_CORRESPONDENCIA');
  217. parent::addAttribute('EMPRESA_CNPJ');
  218. parent::addAttribute('EMPRESA_VINCULO');
  219. parent::addAttribute('EMPRESA_DEPARTAMENTO');
  220. parent::addAttribute('EMPRESA_TIPO_SALARIO');
  221. parent::addAttribute('EMPRESA_ORIGEM');
  222. parent::addAttribute('EMPRESA_OUTRAS_RENDAS');
  223. parent::addAttribute('CONJUGE_TELEFONE');
  224. parent::addAttribute('CONJUGE_TEMPO_TRABALHO');
  225. parent::addAttribute('CONJUGE_SALARIO');
  226. parent::addAttribute('CONJUGE_END_TRABALHO');
  227. parent::addAttribute('CONJUGE_CID_TRABALHO');
  228. parent::addAttribute('CONJUGE_CEP_TRABALHO');
  229. parent::addAttribute('CONJUGE_DEP_TRABALHO');
  230. parent::addAttribute('CONJUGE_DATA_ADM');
  231. parent::addAttribute('CONJUGE_RENDA');
  232. parent::addAttribute('CONJUGE_VINCULO');
  233. parent::addAttribute('CONJUGE_TIPO_EMPREGO');
  234. parent::addAttribute('CONJUGE_ORIGEM_RENDA');
  235. parent::addAttribute('CONJUGE_OUTRAS_RENDAS');
  236. parent::addAttribute('EMPRESA_CEP');
  237. parent::addAttribute('CONJUGE_CNPJ_TRABALHO');
  238. parent::addAttribute('CONJUGE_PROFISSAO');
  239. parent::addAttribute('LIMITE_DATA_HORA_ALT');
  240. parent::addAttribute('LIMITE_USUARIO_ALT');
  241. parent::addAttribute('UNIDADES');
  242. parent::addAttribute('CONJUGE_CPF');
  243. parent::addAttribute('CONJUGE_RG');
  244. parent::addAttribute('CASAMENTO_DATA');
  245. parent::addAttribute('CASAMENTO_TIPO');
  246. parent::addAttribute('FRETE_PAGAR');
  247. parent::addAttribute('ID_MEUS_PEDIDOS');
  248. parent::addAttribute('DATA_ALT_MEUS_PEDIDOS');
  249. parent::addAttribute('ERRO_MEUS_PEDIDOS');
  250. }
  251. }
  252. ClientList.class.php:
 
  1. <?php
  2. class Cliente extends TRecord
  3. {
  4. const TABLENAME = 'cliente';
  5. const PRIMARYKEY= 'id';
  6. const IDPOLICY = 'max'; // {max, serial}
  7. public function get_situacao_cli()
  8. {
  9. $nomes = array('A'=>'Ativo', 'B'=>'Bloqueado','I'=>'Inativo');
  10. return $nomes[$this->SITUACAO];
  11. }
  12. public function get_cidade()
  13. {
  14. if (empty($this->cidade))
  15. $this->cidade = new Cidade($this->ID_CIDADE);
  16. // returns the associated object
  17. return $this->cidade;
  18. }
  19. }
  20. ?>



 
  1. <?php
  2. /**
  3. * ClienteList Listing
  4. * @author <your name here>
  5. */
  6. class ClienteList extends TStandardList
  7. {
  8. protected $form; // registration form
  9. protected $datagrid; // listing
  10. protected $pageNavigation;
  11. protected $formgrid;
  12. protected $deleteButton;
  13. protected $transformCallback;
  14. /**
  15. * Page constructor
  16. */
  17. public function __construct()
  18. {
  19. parent::__construct();
  20. parent::setDatabase('conexao'); // defines the database
  21. parent::setActiveRecord('Cliente'); // defines the active record
  22. parent::setDefaultOrder('ID_CLIENTE', 'asc'); // defines the default order
  23. // parent::setCriteria($criteria) // define a standard filter
  24. parent::addFilterField('CODIGO', '=', 'CODIGO'); // filterField, operator, formField
  25. parent::addFilterField('RAZAO_SOCIAL', 'like', 'RAZAO_SOCIAL'); // filterField, operator, formField
  26. parent::addFilterField('CPF', 'like', 'CPF'); // filterField, operator, formField
  27. parent::addFilterField('CNPJ', 'like', 'CNPJ'); // filterField, operator, formField
  28. parent::addFilterField('ID_CIDADE', 'like', 'ID_CIDADE'); // filterField, operator, formField
  29. parent::addFilterField('FONE', 'like', 'FONE'); // filterField, operator, formField
  30. parent::addFilterField('SITUACAO', 'like', 'SITUACAO'); // filterField, operator, formField
  31. // creates the form
  32. $this->form = new TQuickForm('form_search_Cliente');
  33. $this->form->class = 'tform'; // change CSS class
  34. $this->form->style = 'display: table;width:100%'; // change style
  35. $this->form->setFormTitle('Cliente');
  36. // $cliente = new Cliente(1);
  37. //echo $cliente->cidade->nome;
  38. // create the form fields
  39. $CODIGO = new TEntry('CODIGO');
  40. $RAZAO_SOCIAL = new TEntry('RAZAO_SOCIAL');
  41. $CPF = new TEntry('CPF');
  42. $CNPJ = new TEntry('CNPJ');
  43. $ID_CIDADE = new TEntry('ID_CIDADE');
  44. $FONE = new TEntry('FONE');
  45. $SITUACAO = new TEntry('SITUACAO');
  46. // add the fields
  47. $this->form->addQuickField('Código:', $CODIGO, 70 );
  48. $this->form->addQuickField('Razão Social:', $RAZAO_SOCIAL, 400 );
  49. $this->form->addQuickField('CPF/CNPJ:', $CPF, 200 );
  50. $this->form->addQuickField('Situação:', $SITUACAO, 200 );
  51. // keep the form filled during navigation with session data
  52. $this->form->setData( TSession::getValue('Cliente_filter_data') );
  53. // add the search form actions
  54. $this->form->addQuickAction(_t('Find'), new TAction(array($this, 'onSearch')), 'fa:search');
  55. $this->form->addQuickAction(_t('New'), new TAction(array('ClienteForm', 'onEdit')), 'bs:plus-sign green');
  56. // creates a DataGrid
  57. $this->datagrid = new TDataGrid;
  58. $this->datagrid->style = 'width: 100%';
  59. $this->datagrid->setHeight(320);
  60. // $this->datagrid->datatable = 'true';
  61. // $this->datagrid->enablePopover('Popover', 'Hi <b> {name} </b>');
  62. // creates the datagrid columns
  63. $column_CODIGO = new TDataGridColumn('CODIGO', 'Código', 'center');
  64. $column_RAZAO_SOCIAL = new TDataGridColumn('RAZAO_SOCIAL', 'Razão Social', 'left');
  65. $column_CPF = new TDataGridColumn('CPF', 'CPF/CNPJ', 'center');
  66. $column_CNPJ = new TDataGridColumn('CNPJ', 'CNPJ', 'center');
  67. $column_ID_CIDADE = new TDataGridColumn('Cidade', 'Cidade', 'center');
  68. $column_FONE = new TDataGridColumn('FONE', 'Telefone', 'center');
  69. $column_SITUACAO = new TDataGridColumn('situacao_cli', 'Situação', 'center');
  70. // add the columns to the DataGrid
  71. $this->datagrid->addColumn($column_CODIGO);
  72. $this->datagrid->addColumn($column_RAZAO_SOCIAL);
  73. $this->datagrid->addColumn($column_CPF);
  74. //$this->datagrid->addColumn($column_CNPJ);
  75. $this->datagrid->addColumn($column_ID_CIDADE);
  76. $this->datagrid->addColumn($column_FONE);
  77. $this->datagrid->addColumn($column_SITUACAO);
  78. // creates the datagrid column actions
  79. $order_CODIGO = new TAction(array($this, 'onReload'));
  80. $order_CODIGO->setParameter('order', 'CODIGO');
  81. $column_CODIGO->setAction($order_CODIGO);
  82. $order_RAZAO_SOCIAL = new TAction(array($this, 'onReload'));
  83. $order_RAZAO_SOCIAL->setParameter('order', 'RAZAO_SOCIAL');
  84. $column_RAZAO_SOCIAL->setAction($order_RAZAO_SOCIAL);
  85. // create EDIT action
  86. $action_edit = new TDataGridAction(array('ClienteForm', 'onEdit'));
  87. $action_edit->setUseButton(TRUE);
  88. $action_edit->setButtonClass('btn btn-default');
  89. $action_edit->setLabel(_t('Edit'));
  90. $action_edit->setImage('fa:pencil-square-o blue fa-lg');
  91. $action_edit->setField('ID_CLIENTE');
  92. $this->datagrid->addAction($action_edit);
  93. // create DELETE action
  94. $action_del = new TDataGridAction(array($this, 'onDelete'));
  95. $action_del->setUseButton(TRUE);
  96. $action_del->setButtonClass('btn btn-default');
  97. $action_del->setLabel(_t('Delete'));
  98. $action_del->setImage('fa:trash-o red fa-lg');
  99. $action_del->setField('ID_CLIENTE');
  100. $this->datagrid->addAction($action_del);
  101. // create the datagrid model
  102. $this->datagrid->createModel();
  103. // create the page navigation
  104. $this->pageNavigation = new TPageNavigation;
  105. $this->pageNavigation->setAction(new TAction(array($this, 'onReload')));
  106. $this->pageNavigation->setWidth($this->datagrid->getWidth());
  107. // vertical box container
  108. $container = new TVBox;
  109. $container->style = 'width: 100%';
  110. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  111. $container->add($this->form);
  112. $container->add($this->datagrid);
  113. $container->add($this->pageNavigation);
  114. parent::add($container);
  115. }
  116. }
  117. </your>
NR

Por que há 2 models de Cliente?
LG

Cidade.class.php:
 
  1. <?php
  2. /**
  3. * Cidade Active Record
  4. * @author <your-name-here>
  5. */
  6. class Cidade extends TRecord
  7. {
  8. const TABLENAME = 'cidade';
  9. const PRIMARYKEY= 'ID_CIDADE';
  10. const IDPOLICY = 'serial'; // {max, serial}
  11. /**
  12. * Constructor method
  13. */
  14. public function __construct($id = NULL, $callObjectLoad = TRUE)
  15. {
  16. parent::__construct($id, $callObjectLoad);
  17. parent::addAttribute('DESCRICAO');
  18. parent::addAttribute('UF');
  19. parent::addAttribute('COD_IBGE');
  20. parent::addAttribute('CEP');
  21. parent::addAttribute('ID_USUARIO');
  22. parent::addAttribute('DATA_HORA_ALT');
  23. parent::addAttribute('CONCORRENCIA');
  24. parent::addAttribute('ID_PAIS');
  25. }
  26. }
  27. Clientes.class.php:
 
  1. <?php
  2. class Cliente extends TRecord
  3. {
  4. const TABLENAME = 'cliente';
  5. const PRIMARYKEY= 'id';
  6. const IDPOLICY = 'max'; // {max, serial}
  7. public function get_situacao_cli()
  8. {
  9. $nomes = array('A'=>'Ativo', 'B'=>'Bloqueado','I'=>'Inativo');
  10. return $nomes[$this->SITUACAO];
  11. }
  12. }
  13. ?>

 
  1. <?php
  2. /**
  3. * Cliente Active Record
  4. * @author <your-name-here>
  5. */
  6. class Cliente extends TRecord
  7. {
  8. const TABLENAME = 'cliente';
  9. const PRIMARYKEY= 'ID_CLIENTE';
  10. const IDPOLICY = 'serial'; // {max, serial}
  11. public function get_cidade()
  12. {
  13. if (empty($this->cidade))
  14. $this->cidade = new Cidade($this->ID_CIDADE);
  15. // returns the associated object
  16. return $this->cidade;
  17. }
  18. public function __construct($id = NULL, $callObjectLoad = TRUE)
  19. {
  20. parent::__construct($id, $callObjectLoad);
  21. parent::addAttribute('CODIGO');
  22. parent::addAttribute('RAZAO_SOCIAL');
  23. parent::addAttribute('NOME_FANTASIA');
  24. parent::addAttribute('ENDERECO');
  25. parent::addAttribute('NUMERO');
  26. parent::addAttribute('COMPLEMENTO');
  27. parent::addAttribute('BAIRRO');
  28. parent::addAttribute('ID_CIDADE');
  29. parent::addAttribute('FONE');
  30. parent::addAttribute('FAX');
  31. parent::addAttribute('CELULAR');
  32. parent::addAttribute('CONTATO');
  33. parent::addAttribute('CNPJ');
  34. parent::addAttribute('INSCRICAO');
  35. parent::addAttribute('EMAIL');
  36. parent::addAttribute('CPF');
  37. parent::addAttribute('IDENTIDADE');
  38. parent::addAttribute('TITULO_ELEITOR');
  39. parent::addAttribute('CART_PROFIS');
  40. parent::addAttribute('CART_SERIE');
  41. parent::addAttribute('CART_ORGAO');
  42. parent::addAttribute('FILIACAO_PAI');
  43. parent::addAttribute('FILIACAO_MAE');
  44. parent::addAttribute('DATA_NASCIMENTO');
  45. parent::addAttribute('DATA_CADASTRO');
  46. parent::addAttribute('DATA_ALTERACAO');
  47. parent::addAttribute('DEPENDENTES');
  48. parent::addAttribute('COMPROVANTE_ENDERECO');
  49. parent::addAttribute('DATA_ENDERECO');
  50. parent::addAttribute('TIPO_CASA');
  51. parent::addAttribute('VALOR_ALUGUEL');
  52. parent::addAttribute('VALOR_DESPESAS');
  53. parent::addAttribute('ABERTURA_CADASTRO');
  54. parent::addAttribute('NATURALIDADE');
  55. parent::addAttribute('EMPREGO_ANTERIOR');
  56. parent::addAttribute('TEMPO_SERVICO');
  57. parent::addAttribute('EMPRESA_NOME');
  58. parent::addAttribute('EMPRESA_ID_CIDADE');
  59. parent::addAttribute('EMPRESA_FUNCAO');
  60. parent::addAttribute('EMPRESA_ADMISSAO');
  61. parent::addAttribute('EMPRESA_FONE');
  62. parent::addAttribute('RENDA_CLIENTE');
  63. parent::addAttribute('RENDA_CONJUGE');
  64. parent::addAttribute('LIMITE_CREDITO');
  65. parent::addAttribute('CONCEITO');
  66. parent::addAttribute('ESTADO_CIVIL');
  67. parent::addAttribute('SEXO');
  68. parent::addAttribute('SITUACAO');
  69. parent::addAttribute('CONJUGE_NOME');
  70. parent::addAttribute('CONJUGE_NASCIMENTO');
  71. parent::addAttribute('CONJUGE_TRABALHO');
  72. parent::addAttribute('CONJUGE_ADMISSAO');
  73. parent::addAttribute('CONJUGE_FONE');
  74. parent::addAttribute('ENTREGA_NOME');
  75. parent::addAttribute('ENTREGA_ENDERECO');
  76. parent::addAttribute('ENTREGA_BAIRRO');
  77. parent::addAttribute('ENTREGA_ID_CIDADE');
  78. parent::addAttribute('ENTREGA_FONE');
  79. parent::addAttribute('NOME_CONHECIDO1');
  80. parent::addAttribute('NOME_CONHECIDO2');
  81. parent::addAttribute('REF_BANCO1');
  82. parent::addAttribute('REF_BANCO2');
  83. parent::addAttribute('REF_BANCO3');
  84. parent::addAttribute('REF_BANCO1_CONTA');
  85. parent::addAttribute('REF_BANCO2_CONTA');
  86. parent::addAttribute('REF_BANCO3_CONTA');
  87. parent::addAttribute('REF_COM_NOME1');
  88. parent::addAttribute('REF_COM_NOME2');
  89. parent::addAttribute('REF_COM_NOME3');
  90. parent::addAttribute('REF_COM_FONE1');
  91. parent::addAttribute('REF_COM_FONE2');
  92. parent::addAttribute('REF_COM_FONE3');
  93. parent::addAttribute('REF_COM_VALOR1');
  94. parent::addAttribute('REF_COM_VALOR2');
  95. parent::addAttribute('REF_COM_VALOR3');
  96. parent::addAttribute('REF_COM_PONTUALIDADE1');
  97. parent::addAttribute('REF_COM_PONTUALIDADE2');
  98. parent::addAttribute('REF_COM_PONTUALIDADE3');
  99. parent::addAttribute('INDICADOR_1');
  100. parent::addAttribute('INDICADOR_2');
  101. parent::addAttribute('INDICADOR_3');
  102. parent::addAttribute('INDICADOR_4');
  103. parent::addAttribute('INDICADOR_5');
  104. parent::addAttribute('INDICADOR_6');
  105. parent::addAttribute('INDICADOR_7');
  106. parent::addAttribute('INDICADOR_8');
  107. parent::addAttribute('INDICADOR_9');
  108. parent::addAttribute('INDICADOR_10');
  109. parent::addAttribute('SPC_DATA_ENVIO');
  110. parent::addAttribute('SPC_VALOR_COMPRA');
  111. parent::addAttribute('SPC_DATA_BAIXA');
  112. parent::addAttribute('SERASA_DATA_ENVIO');
  113. parent::addAttribute('SERASA_VALOR_COMPRA');
  114. parent::addAttribute('SERASA_DATA_BAIXA');
  115. parent::addAttribute('OUTRA_DATA_ENVIO');
  116. parent::addAttribute('OUTRA_VALOR_COMPRA');
  117. parent::addAttribute('OUTRA_DATA_BAIXA');
  118. parent::addAttribute('OBSERVACOES');
  119. parent::addAttribute('TABELA_PRECO');
  120. parent::addAttribute('TIPO_PAGAMENTO');
  121. parent::addAttribute('FORMA_PAGAMENTO');
  122. parent::addAttribute('ALTERAR_PRECO');
  123. parent::addAttribute('ID_CLIENTE_COBRANCA');
  124. parent::addAttribute('IND_TIPO_PAGAMENTO');
  125. parent::addAttribute('RECEBE_COBRANCA');
  126. parent::addAttribute('COBRAR_TAXA_CARTORIO');
  127. parent::addAttribute('COBRAR_TAXA_BANCARIA');
  128. parent::addAttribute('ID_USUARIO');
  129. parent::addAttribute('DATA_HORA_ALT');
  130. parent::addAttribute('ID_VENDEDOR');
  131. parent::addAttribute('ID_TIPO_ATIVIDADE');
  132. parent::addAttribute('ID_PRACA');
  133. parent::addAttribute('ID_EMPRESA');
  134. parent::addAttribute('CONCORRENCIA');
  135. parent::addAttribute('EMAIL_NFE');
  136. parent::addAttribute('ID_FOTO');
  137. parent::addAttribute('UNIDADE_VENDA');
  138. parent::addAttribute('ID_EMPRESA_NF');
  139. parent::addAttribute('EMITE_NOTA');
  140. parent::addAttribute('CEP');
  141. parent::addAttribute('ID_TRANSPORTADOR');
  142. parent::addAttribute('SALDO_CREDITO');
  143. parent::addAttribute('CODIGO_CONVENIO');
  144. parent::addAttribute('ID_CAIXA');
  145. parent::addAttribute('HISTORICO_VENDAS');
  146. parent::addAttribute('HISTORICO_ITENS');
  147. parent::addAttribute('DESCONTO');
  148. parent::addAttribute('ID_BANCO');
  149. parent::addAttribute('EMAIL_BOLETO');
  150. parent::addAttribute('ID_REDE');
  151. parent::addAttribute('DIA_VENCTO');
  152. parent::addAttribute('DIA_VIRADA');
  153. parent::addAttribute('ID_FORMA');
  154. parent::addAttribute('MATRICULA');
  155. parent::addAttribute('AUTORIZADO1');
  156. parent::addAttribute('AUTORIZADO2');
  157. parent::addAttribute('AUTORIZADO3');
  158. parent::addAttribute('AUTORIZADO4');
  159. parent::addAttribute('AUTORIZADO5');
  160. parent::addAttribute('AUTORIZADO6');
  161. parent::addAttribute('TRANSMITIDO');
  162. parent::addAttribute('OBS_SPC1');
  163. parent::addAttribute('OBS_SPC2');
  164. parent::addAttribute('OBS_SPC3');
  165. parent::addAttribute('ROUPA_CALCA');
  166. parent::addAttribute('ROUPA_CAMISA');
  167. parent::addAttribute('ROUPA_SAPATO');
  168. parent::addAttribute('ROUPA_BLAZER');
  169. parent::addAttribute('DIRETORIO');
  170. parent::addAttribute('DESC_FINANCEIRO');
  171. parent::addAttribute('IND_TPAGTO');
  172. parent::addAttribute('DESPESAS_CLIENTE');
  173. parent::addAttribute('NOME_USER_LIBEROU');
  174. parent::addAttribute('ID_USER_LIBEROU');
  175. parent::addAttribute('MOTIVO_LIBERACAO');
  176. parent::addAttribute('LIBERA_CREDIARIO');
  177. parent::addAttribute('DATA_HORA_LIBERACAO');
  178. parent::addAttribute('QUAL_PRECO');
  179. parent::addAttribute('CARENCIA');
  180. parent::addAttribute('ID_FOTO_A1');
  181. parent::addAttribute('ID_FOTO_A2');
  182. parent::addAttribute('ID_FOTO_A3');
  183. parent::addAttribute('ID_FOTO_A4');
  184. parent::addAttribute('ID_FOTO_A5');
  185. parent::addAttribute('ID_FOTO_A6');
  186. parent::addAttribute('VALOR_AUTORIZADO1');
  187. parent::addAttribute('VALOR_AUTORIZADO2');
  188. parent::addAttribute('VALOR_AUTORIZADO3');
  189. parent::addAttribute('VALOR_AUTORIZADO4');
  190. parent::addAttribute('VALOR_AUTORIZADO5');
  191. parent::addAttribute('VALOR_AUTORIZADO6');
  192. parent::addAttribute('DI_AUTORIZADO1');
  193. parent::addAttribute('DI_AUTORIZADO2');
  194. parent::addAttribute('DI_AUTORIZADO3');
  195. parent::addAttribute('DI_AUTORIZADO4');
  196. parent::addAttribute('DI_AUTORIZADO5');
  197. parent::addAttribute('DI_AUTORIZADO6');
  198. parent::addAttribute('DF_AUTORIZADO1');
  199. parent::addAttribute('DF_AUTORIZADO2');
  200. parent::addAttribute('DF_AUTORIZADO3');
  201. parent::addAttribute('DF_AUTORIZADO4');
  202. parent::addAttribute('DF_AUTORIZADO5');
  203. parent::addAttribute('DF_AUTORIZADO6');
  204. parent::addAttribute('DOC_AUTORIZADO1');
  205. parent::addAttribute('DOC_AUTORIZADO2');
  206. parent::addAttribute('DOC_AUTORIZADO3');
  207. parent::addAttribute('DOC_AUTORIZADO4');
  208. parent::addAttribute('DOC_AUTORIZADO5');
  209. parent::addAttribute('DOC_AUTORIZADO6');
  210. parent::addAttribute('ENDERECO_TRABALHO');
  211. parent::addAttribute('CONTATO_FINANCEIRO');
  212. parent::addAttribute('FONE_FINANCEIRO');
  213. parent::addAttribute('RG_EXPEDICAO');
  214. parent::addAttribute('RG_ORGAO');
  215. parent::addAttribute('ESCOLARIDADE');
  216. parent::addAttribute('DESC_APOSENTADORIA');
  217. parent::addAttribute('DESC_PENSAO');
  218. parent::addAttribute('NRO_APOSENTADORIA');
  219. parent::addAttribute('NRO_PENSAO');
  220. parent::addAttribute('NIT');
  221. parent::addAttribute('ID_SITUACAO');
  222. parent::addAttribute('ID_CONJUGE');
  223. parent::addAttribute('ENDERECO_CORRESPONDENCIA');
  224. parent::addAttribute('EMPRESA_CNPJ');
  225. parent::addAttribute('EMPRESA_VINCULO');
  226. parent::addAttribute('EMPRESA_DEPARTAMENTO');
  227. parent::addAttribute('EMPRESA_TIPO_SALARIO');
  228. parent::addAttribute('EMPRESA_ORIGEM');
  229. parent::addAttribute('EMPRESA_OUTRAS_RENDAS');
  230. parent::addAttribute('CONJUGE_TELEFONE');
  231. parent::addAttribute('CONJUGE_TEMPO_TRABALHO');
  232. parent::addAttribute('CONJUGE_SALARIO');
  233. parent::addAttribute('CONJUGE_END_TRABALHO');
  234. parent::addAttribute('CONJUGE_CID_TRABALHO');
  235. parent::addAttribute('CONJUGE_CEP_TRABALHO');
  236. parent::addAttribute('CONJUGE_DEP_TRABALHO');
  237. parent::addAttribute('CONJUGE_DATA_ADM');
  238. parent::addAttribute('CONJUGE_RENDA');
  239. parent::addAttribute('CONJUGE_VINCULO');
  240. parent::addAttribute('CONJUGE_TIPO_EMPREGO');
  241. parent::addAttribute('CONJUGE_ORIGEM_RENDA');
  242. parent::addAttribute('CONJUGE_OUTRAS_RENDAS');
  243. parent::addAttribute('EMPRESA_CEP');
  244. parent::addAttribute('CONJUGE_CNPJ_TRABALHO');
  245. parent::addAttribute('CONJUGE_PROFISSAO');
  246. parent::addAttribute('LIMITE_DATA_HORA_ALT');
  247. parent::addAttribute('LIMITE_USUARIO_ALT');
  248. parent::addAttribute('UNIDADES');
  249. parent::addAttribute('CONJUGE_CPF');
  250. parent::addAttribute('CONJUGE_RG');
  251. parent::addAttribute('CASAMENTO_DATA');
  252. parent::addAttribute('CASAMENTO_TIPO');
  253. parent::addAttribute('FRETE_PAGAR');
  254. parent::addAttribute('ID_MEUS_PEDIDOS');
  255. parent::addAttribute('DATA_ALT_MEUS_PEDIDOS');
  256. parent::addAttribute('ERRO_MEUS_PEDIDOS');
  257. }
  258. }
  259. ClientList.class.php:
 
  1. <?php
  2. class Cliente extends TRecord
  3. {
  4. const TABLENAME = 'cliente';
  5. const PRIMARYKEY= 'id';
  6. const IDPOLICY = 'max'; // {max, serial}
  7. public function get_situacao_cli()
  8. {
  9. $nomes = array('A'=>'Ativo', 'B'=>'Bloqueado','I'=>'Inativo');
  10. return $nomes[$this->SITUACAO];
  11. }
  12. }
  13. ?>



 
  1. <?php
  2. /**
  3. * ClienteList Listing
  4. * @author <your name here>
  5. */
  6. class ClienteList extends TStandardList
  7. {
  8. protected $form; // registration form
  9. protected $datagrid; // listing
  10. protected $pageNavigation;
  11. protected $formgrid;
  12. protected $deleteButton;
  13. protected $transformCallback;
  14. /**
  15. * Page constructor
  16. */
  17. public function __construct()
  18. {
  19. parent::__construct();
  20. parent::setDatabase('conexao'); // defines the database
  21. parent::setActiveRecord('Cliente'); // defines the active record
  22. parent::setDefaultOrder('ID_CLIENTE', 'asc'); // defines the default order
  23. // parent::setCriteria($criteria) // define a standard filter
  24. parent::addFilterField('CODIGO', '=', 'CODIGO'); // filterField, operator, formField
  25. parent::addFilterField('RAZAO_SOCIAL', 'like', 'RAZAO_SOCIAL'); // filterField, operator, formField
  26. parent::addFilterField('CPF', 'like', 'CPF'); // filterField, operator, formField
  27. parent::addFilterField('CNPJ', 'like', 'CNPJ'); // filterField, operator, formField
  28. parent::addFilterField('ID_CIDADE', 'like', 'ID_CIDADE'); // filterField, operator, formField
  29. parent::addFilterField('FONE', 'like', 'FONE'); // filterField, operator, formField
  30. parent::addFilterField('SITUACAO', 'like', 'SITUACAO'); // filterField, operator, formField
  31. // creates the form
  32. $this->form = new TQuickForm('form_search_Cliente');
  33. $this->form->class = 'tform'; // change CSS class
  34. $this->form->style = 'display: table;width:100%'; // change style
  35. $this->form->setFormTitle('Cliente');
  36. // $cliente = new Cliente(1);
  37. //echo $cliente->cidade->nome;
  38. // create the form fields
  39. $CODIGO = new TEntry('CODIGO');
  40. $RAZAO_SOCIAL = new TEntry('RAZAO_SOCIAL');
  41. $CPF = new TEntry('CPF');
  42. $CNPJ = new TEntry('CNPJ');
  43. $ID_CIDADE = new TEntry('ID_CIDADE');
  44. $FONE = new TEntry('FONE');
  45. $SITUACAO = new TEntry('SITUACAO');
  46. // add the fields
  47. $this->form->addQuickField('Código:', $CODIGO, 70 );
  48. $this->form->addQuickField('Razão Social:', $RAZAO_SOCIAL, 400 );
  49. $this->form->addQuickField('CPF/CNPJ:', $CPF, 200 );
  50. $this->form->addQuickField('Situação:', $SITUACAO, 200 );
  51. // keep the form filled during navigation with session data
  52. $this->form->setData( TSession::getValue('Cliente_filter_data') );
  53. // add the search form actions
  54. $this->form->addQuickAction(_t('Find'), new TAction(array($this, 'onSearch')), 'fa:search');
  55. $this->form->addQuickAction(_t('New'), new TAction(array('ClienteForm', 'onEdit')), 'bs:plus-sign green');
  56. // creates a DataGrid
  57. $this->datagrid = new TDataGrid;
  58. $this->datagrid->style = 'width: 100%';
  59. $this->datagrid->setHeight(320);
  60. // $this->datagrid->datatable = 'true';
  61. // $this->datagrid->enablePopover('Popover', 'Hi <b> {name} </b>');
  62. // creates the datagrid columns
  63. $column_CODIGO = new TDataGridColumn('CODIGO', 'Código', 'center');
  64. $column_RAZAO_SOCIAL = new TDataGridColumn('RAZAO_SOCIAL', 'Razão Social', 'left');
  65. $column_CPF = new TDataGridColumn('CPF', 'CPF/CNPJ', 'center');
  66. $column_CNPJ = new TDataGridColumn('CNPJ', 'CNPJ', 'center');
  67. $column_ID_CIDADE = new TDataGridColumn('Cidade', 'Cidade', 'center');
  68. $column_FONE = new TDataGridColumn('FONE', 'Telefone', 'center');
  69. $column_SITUACAO = new TDataGridColumn('situacao_cli', 'Situação', 'center');
  70. // add the columns to the DataGrid
  71. $this->datagrid->addColumn($column_CODIGO);
  72. $this->datagrid->addColumn($column_RAZAO_SOCIAL);
  73. $this->datagrid->addColumn($column_CPF);
  74. //$this->datagrid->addColumn($column_CNPJ);
  75. $this->datagrid->addColumn($column_ID_CIDADE);
  76. $this->datagrid->addColumn($column_FONE);
  77. $this->datagrid->addColumn($column_SITUACAO);
  78. // creates the datagrid column actions
  79. $order_CODIGO = new TAction(array($this, 'onReload'));
  80. $order_CODIGO->setParameter('order', 'CODIGO');
  81. $column_CODIGO->setAction($order_CODIGO);
  82. $order_RAZAO_SOCIAL = new TAction(array($this, 'onReload'));
  83. $order_RAZAO_SOCIAL->setParameter('order', 'RAZAO_SOCIAL');
  84. $column_RAZAO_SOCIAL->setAction($order_RAZAO_SOCIAL);
  85. // create EDIT action
  86. $action_edit = new TDataGridAction(array('ClienteForm', 'onEdit'));
  87. $action_edit->setUseButton(TRUE);
  88. $action_edit->setButtonClass('btn btn-default');
  89. $action_edit->setLabel(_t('Edit'));
  90. $action_edit->setImage('fa:pencil-square-o blue fa-lg');
  91. $action_edit->setField('ID_CLIENTE');
  92. $this->datagrid->addAction($action_edit);
  93. // create DELETE action
  94. $action_del = new TDataGridAction(array($this, 'onDelete'));
  95. $action_del->setUseButton(TRUE);
  96. $action_del->setButtonClass('btn btn-default');
  97. $action_del->setLabel(_t('Delete'));
  98. $action_del->setImage('fa:trash-o red fa-lg');
  99. $action_del->setField('ID_CLIENTE');
  100. $this->datagrid->addAction($action_del);
  101. // create the datagrid model
  102. $this->datagrid->createModel();
  103. // create the page navigation
  104. $this->pageNavigation = new TPageNavigation;
  105. $this->pageNavigation->setAction(new TAction(array($this, 'onReload')));
  106. $this->pageNavigation->setWidth($this->datagrid->getWidth());
  107. // vertical box container
  108. $container = new TVBox;
  109. $container->style = 'width: 100%';
  110. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  111. $container->add($this->form);
  112. $container->add($this->datagrid);
  113. $container->add($this->pageNavigation);
  114. parent::add($container);
  115. }
  116. }
  117. </your>
PD

Sugiro a leitura deste artigo:
www.adianti.com.br/forum/pt/view_876?pensando-em-objetos-nao-em-sql-

Aliás, leia todos artigos da primeira aba do fórum ;-)

Att,