Coluna datagrid com link Amigos, Alguém sabe informar como tornar uma coluna do datagrid em um link?...
ST
Coluna datagrid com link  
Amigos,
Alguém sabe informar como tornar uma coluna do datagrid em um link?

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


MG

Acho que poder usar "$column->setTransformer()"
Na versão 4 tem um novo componente, nunca fiz mas acredito que possa usar.

adianti.com.br/framework_files/tutor/index.php?class=TextLinkView
ST

Boa tarde Marcelo,
Preciso de um link no datagrid.
O exemplo mostra como fazer um link no formulário.
ST

Marcelo,
Preciso de um exemplo que mostre no datagrid.
MG

Use o set transformer na coluna e adicione o link, por exemplo:

Tenta assim na coluna que deseja criar o link

 
  1. <?php
  2. $column->setTransformer(function($value, $object, $row){
  3. $link = new THyperLink('Hyper Link (url)', 'http://www.google.com', 'orange', 12, 'biu');
  4. return $link;
  5. ));
  6. ?>
ST

Marcelo bom dia,

Após inserção do código o formulário está ficando em branco.
Veja o código:

Modelo:

 
  1. <?php
  2. /**
  3. * Perdcomp Active Record
  4. * @author <your-name-here>
  5. */
  6. class Perdcomp extends TRecord
  7. {
  8. const TABLENAME = 'perdcomp';
  9. const PRIMARYKEY= 'perdcomp_id';
  10. const IDPOLICY = 'max'; // {max, serial}
  11. private $origem_documento;
  12. private $tipo_credito;
  13. private $tipo_documento;
  14. private $tipo_imposto;
  15. private $system_user;
  16. /**
  17. * Constructor method
  18. */
  19. public function __construct($id = NULL, $callObjectLoad = TRUE)
  20. {
  21. parent::__construct($id, $callObjectLoad);
  22. parent::addAttribute('DataCriacao');
  23. parent::addAttribute('DataTransmissao');
  24. parent::addAttribute('Sequencial');
  25. parent::addAttribute('Nr_PERDCOMP');
  26. parent::addAttribute('TipoDocumento_id');
  27. parent::addAttribute('OrigemDocumento_id');
  28. parent::addAttribute('TipoCredito_id');
  29. parent::addAttribute('SaldoDeclarado');
  30. parent::addAttribute('Exercicio');
  31. parent::addAttribute('TipoImposto_ID');
  32. parent::addAttribute('ValorCompensado');
  33. parent::addAttribute('Competencia');
  34. parent::addAttribute('PERDCOMP_Original');
  35. parent::addAttribute('Situacao');
  36. parent::addAttribute('Cancelamento');
  37. parent::addAttribute('CreditoOriginalInicial');
  38. parent::addAttribute('CreditoOriginalUtilizadoCompensacoes');
  39. parent::addAttribute('CreditoOriginalDisponivel');
  40. parent::addAttribute('CreditoOriginalTransmissao');
  41. parent::addAttribute('SelicAcumulada');
  42. parent::addAttribute('CreditoAtualizado');
  43. parent::addAttribute('DebitosDocumento');
  44. parent::addAttribute('CreditoOriginalUtilizadoDocumento');
  45. parent::addAttribute('SaldoCreditoOriginal');
  46. parent::addAttribute('system_unit_id');
  47. parent::addAttribute('GED');
  48. parent::addAttribute('system_user_id');
  49. }
  50. /**
  51. * Method set_origem_documento
  52. * Sample of usage: $perdcomp->origem_documento = $object;
  53. * @param $object Instance of OrigemDocumento
  54. */
  55. public function set_origem_documento(OrigemDocumento $object)
  56. {
  57. $this->origem_documento = $object;
  58. $this->origem_documento_id = $object->OrigemDocumento_id;
  59. }
  60. /**
  61. * Method get_origem_documento
  62. * Sample of usage: $perdcomp->origem_documento->attribute;
  63. * @returns OrigemDocumento instance
  64. */
  65. public function get_origem_documento()
  66. {
  67. // loads the associated object
  68. if (empty($this->origem_documento))
  69. $this->origem_documento = new OrigemDocumento($this->OrigemDocumento_id);
  70. // returns the associated object
  71. return $this->origem_documento->OrigemDocumentoDescricao;
  72. }
  73. /**
  74. * Method set_tipo_credito
  75. * Sample of usage: $perdcomp->tipo_credito = $object;
  76. * @param $object Instance of TipoCredito
  77. */
  78. public function set_tipo_credito(TipoCredito $object)
  79. {
  80. $this->tipo_credito = $object;
  81. $this->tipo_credito_id = $object->TipoCredito_id;
  82. }
  83. /**
  84. * Method get_tipo_credito
  85. * Sample of usage: $perdcomp->tipo_credito->attribute;
  86. * @returns TipoCredito instance
  87. */
  88. public function get_tipo_credito()
  89. {
  90. // loads the associated object
  91. if (empty($this->tipo_credito))
  92. $this->tipo_credito = new TipoCredito($this->TipoCredito_id);
  93. // returns the associated object
  94. return $this->tipo_credito->TipoCreditoDescricao;
  95. }
  96. /**
  97. * Method set_tipo_documento
  98. * Sample of usage: $perdcomp->tipo_documento = $object;
  99. * @param $object Instance of TipoDocumento
  100. */
  101. public function set_tipo_documento(TipoDocumento $object)
  102. {
  103. $this->tipo_documento = $object;
  104. $this->tipo_documento_id = $object->TipoDocumento_id;
  105. }
  106. /**
  107. * Method get_tipo_documento
  108. * Sample of usage: $perdcomp->tipo_documento->attribute;
  109. * @returns TipoDocumento instance
  110. */
  111. public function get_tipo_documento()
  112. {
  113. // loads the associated object
  114. if (empty($this->tipo_documento))
  115. $this->tipo_documento = new TipoDocumento($this->TipoDocumento_id);
  116. // returns the associated object
  117. return $this->tipo_documento->TipoDocumentoDescricao;
  118. }
  119. /**
  120. * Method set_tipo_imposto
  121. * Sample of usage: $perdcomp->tipo_imposto = $object;
  122. * @param $object Instance of TipoImposto
  123. */
  124. public function set_tipo_imposto(TipoImposto $object)
  125. {
  126. $this->tipo_imposto = $object;
  127. $this->tipo_imposto_id = $object->TipoImposto_ID;
  128. }
  129. /**
  130. * Method get_tipo_imposto
  131. * Sample of usage: $perdcomp->tipo_imposto->attribute;
  132. * @returns TipoImposto instance
  133. */
  134. public function get_tipo_imposto()
  135. {
  136. // loads the associated object
  137. if (empty($this->tipo_imposto))
  138. $this->tipo_imposto = new TipoImposto($this->TipoImposto_ID);
  139. // returns the associated object
  140. return $this->tipo_imposto->TipoImposto_Descricao;
  141. }
  142. public function set_system_user(SystemUser $object)
  143. {
  144. $this->system_user = $object;
  145. $this->system_user_id = $object->id;
  146. }
  147. /**
  148. * Method get_system_user
  149. * Sample of usage: $perdcomp->system_user->attribute;
  150. * @returns SystemUser instance
  151. */
  152. public function get_system_user()
  153. {
  154. // loads the associated object
  155. if (empty($this->system_user))
  156. $this->system_user = new SystemUser($this->system_user_id);
  157. // returns the associated object
  158. return $this->system_user;
  159. }
  160. }
  161. Formulário:
 
  1. <?php
  2. /**
  3. * PerdcompForm Registration
  4. * @author <your name here>
  5. */
  6. class PerdcompForm extends TPage
  7. {
  8. protected $form; // form
  9. use Adianti\Base\AdiantiStandardFormTrait; // Standard form methods
  10. /**
  11. * Class constructor
  12. * Creates the page and the registration form
  13. */
  14. function __construct()
  15. {
  16. parent::__construct();
  17. $this->setDatabase('perdcomp'); // defines the database
  18. $this->setActiveRecord('Perdcomp'); // defines the active record
  19. // creates the form
  20. $this->form = new TQuickForm('form_Perdcomp');
  21. $this->form->class = 'tform'; // change CSS class
  22. $this->form->style = 'display: table;width:100%'; // change style
  23. // define the form title
  24. $this->form->setFormTitle('Perdcomp');
  25. // create the form fields
  26. $perdcomp_id = new TEntry('perdcomp_id');
  27. $DataCriacao = new TDate('DataCriacao');
  28. //$DataCriacao = new TTextDisplay(TDate::convertToMask('DataCriacao', 'yyyy-mm-dd', 'dd/mm/yyyy'));
  29. $DataTransmissao = new TDate('DataTransmissao');
  30. $Sequencial = new TEntry('Sequencial');
  31. $Nr_PERDCOMP = new TEntry('Nr_PERDCOMP');
  32. $TipoDocumento_id = new ">TDBSeekButton('TipoDocumento_id', 'perdcomp', $this->form->getName(), 'TipoDocumento', 'TipoDocumentoDescricao', 'TipoDocumento_id', 'tipo_documento');
  33. $TipoDocumentoDescricao = new TEntry('tipo_documento');
  34. $OrigemDocumento_id = new ">TDBSeekButton('OrigemDocumento_id', 'perdcomp', $this->form->getName(), 'OrigemDocumento', 'OrigemDocumentoDescricao', 'OrigemDocumento_id', 'origem_documento');
  35. $OrigemDocumentoDescricao = new TEntry('origem_documento');
  36. $TipoCredito_id = new ">TDBSeekButton('TipoCredito_id', 'perdcomp', $this->form->getName(), 'TipoCredito', 'TipoCreditoDescricao', 'TipoCredito_id', 'tipo_credito');
  37. $TipoCreditoDescricao = new TEntry('tipo_credito');
  38. $SaldoDeclarado = new TEntry('SaldoDeclarado');
  39. $Exercicio = new TEntry('Exercicio');
  40. $TipoImposto_ID = new ">TDBSeekButton('TipoImposto_ID', 'perdcomp', $this->form->getName(), 'TipoImposto', 'TipoImposto_Descricao', 'TipoImposto_ID', 'tipo_imposto');
  41. $TipoImposto_Descricao = new TEntry('tipo_imposto');
  42. $ValorCompensado = new TEntry('ValorCompensado');
  43. $Competencia = new TDate('Competencia');
  44. $PERDCOMP_Original = new TEntry('PERDCOMP_Original');
  45. $Situacao = new TEntry('Situacao');
  46. $Cancelamento = new TEntry('Cancelamento');
  47. $CreditoOriginalInicial = new TEntry('CreditoOriginalInicial');
  48. $CreditoOriginalUtilizadoCompensacoes = new TEntry('CreditoOriginalUtilizadoCompensacoes');
  49. $CreditoOriginalDisponivel = new TEntry('CreditoOriginalDisponivel');
  50. $CreditoOriginalTransmissao = new TEntry('CreditoOriginalTransmissao');
  51. $SelicAcumulada = new TEntry('SelicAcumulada');
  52. $CreditoAtualizado = new TEntry('CreditoAtualizado');
  53. $DebitosDocumento = new TEntry('DebitosDocumento');
  54. $CreditoOriginalUtilizadoDocumento = new TEntry('CreditoOriginalUtilizadoDocumento');
  55. $SaldoCreditoOriginal = new TEntry('SaldoCreditoOriginal');
  56. $GED = new TFile('GED');
  57. // $Empresa_id = new TDBSeekButton('Empresa_id', 'perdcomp', $this->form->getName(), 'Empresa', 'EmpresaNome', 'Empresa_id', 'empresa');
  58. //$EmpresaNome = new TEntry('empresa');
  59. $TipoDocumentoDescricao->setEditable(FALSE);
  60. $TipoDocumento_id->setSize('40');
  61. $TipoDocumentoDescricao->setSize('500');
  62. $OrigemDocumentoDescricao->setEditable(FALSE);
  63. $OrigemDocumento_id->setSize('40');
  64. $OrigemDocumentoDescricao->setSize('500');
  65. $TipoCreditoDescricao->setEditable(FALSE);
  66. $TipoCredito_id->setSize('40');
  67. $TipoCreditoDescricao->setSize('500');
  68. $TipoImposto_Descricao->setEditable(FALSE);
  69. $TipoImposto_ID->setSize('40');
  70. $TipoImposto_Descricao->setSize('500');
  71. // $EmpresaNome->setEditable(FALSE);
  72. // $Empresa_id->setSize('40');
  73. //$EmpresaNome->setSize('500');
  74. $SaldoDeclarado->setNumericMask(2, ',', '.', TRUE);
  75. $ValorCompensado->setNumericMask(2, ',', '.', TRUE);
  76. $CreditoOriginalInicial->setNumericMask(2, ',', '.', TRUE);
  77. $CreditoOriginalUtilizadoCompensacoes->setNumericMask(2, ',', '.', TRUE);
  78. $CreditoOriginalDisponivel->setNumericMask(2, ',', '.', TRUE);
  79. $CreditoOriginalTransmissao->setNumericMask(2, ',', '.', TRUE);
  80. $SelicAcumulada->setNumericMask(2, ',', '.', TRUE);
  81. $CreditoAtualizado->setNumericMask(2, ',', '.', TRUE);
  82. $DebitosDocumento->setNumericMask(2, ',', '.', TRUE);
  83. $CreditoOriginalUtilizadoDocumento->setNumericMask(2, ',', '.', TRUE);
  84. $SaldoCreditoOriginal->setNumericMask(2, ',', '.', TRUE);
  85. $Nr_PERDCOMP->setMask('99999.99999.999999.9.9.99-9999');
  86. $PERDCOMP_Original->setMask('99999.99999.999999.9.9.99-9999');
  87. // add the fields
  88. $this->form->addQuickField('Código:', $perdcomp_id, 100 );
  89. $this->form->addQuickField('Data Criação:', $DataCriacao, 100 );
  90. $this->form->addQuickField('Data Transmissão:', $DataTransmissao, 100 );
  91. $this->form->addQuickField('Sequencial:', $Sequencial, 200 );
  92. $this->form->addQuickField('Nº Perdcomp:', $Nr_PERDCOMP, 200 );
  93. $this->form->addQuickField('GED:', $GED, 500 );
  94. $this->form->addQuickFields('Tipo Documento:', [ $TipoDocumento_id, $TipoDocumentoDescricao ] );
  95. $this->form->addQuickFields('Origem Documento:', [ $OrigemDocumento_id, $OrigemDocumentoDescricao ] );
  96. $this->form->addQuickFields('Tipo Crédito:', [ $TipoCredito_id, $TipoCreditoDescricao] );
  97. $this->form->addQuickField('Saldo Declarado:', $SaldoDeclarado, 100 );
  98. $this->form->addQuickField('Exercicio:', $Exercicio, 100 );
  99. $this->form->addQuickFields('Tipo Imposto:', [ $TipoImposto_ID, $TipoImposto_Descricao] );
  100. $this->form->addQuickField('Valor Compensado:', $ValorCompensado, 100 );
  101. $this->form->addQuickField('Competência:', $Competencia, 100 );
  102. $this->form->addQuickField('Perdcomp Original:', $PERDCOMP_Original, 200 );
  103. $this->form->addQuickField('Situação:', $Situacao, 200 );
  104. $this->form->addQuickField('Cancelamento:', $Cancelamento, 200 );
  105. $this->form->addQuickField('Crédito Original Inicial:', $CreditoOriginalInicial, 100 );
  106. $this->form->addQuickField('Crédito Original Utilizado Compensações:', $CreditoOriginalUtilizadoCompensacoes, 100 );
  107. $this->form->addQuickField('Crédito Original Disponível:', $CreditoOriginalDisponivel, 100 );
  108. $this->form->addQuickField('Crédito Original Transmissão:', $CreditoOriginalTransmissao, 100 );
  109. $this->form->addQuickField('Selic Acumulada:', $SelicAcumulada, 100 );
  110. $this->form->addQuickField('Crédito Atualizado:', $CreditoAtualizado, 100 );
  111. $this->form->addQuickField('Débitos Documento:', $DebitosDocumento, 100 );
  112. $this->form->addQuickField('Crédito Original Utilizado Documento:', $CreditoOriginalUtilizadoDocumento, 100 );
  113. $this->form->addQuickField('Saldo Crédito Original:', $SaldoCreditoOriginal, 100);
  114. // $this->form->addQuickFields('Unidade:', [ $Empresa_id, $EmpresaNome ], new TRequiredValidator );
  115. if (!empty($perdcomp_id))
  116. {
  117. $perdcomp_id->setEditable(FALSE);
  118. }
  119. /** samples
  120. $this->form->addQuickFields('Date', array($date1, new TLabel('to'), $date2)); // side by side fields
  121. $fieldX->addValidation( 'Field X', new TRequiredValidator ); // add validation
  122. $fieldX->setSize( 100, 40 ); // set size
  123. **/
  124. // create the form actions
  125. $this->form->addQuickAction(_t('Save'), new TAction(array($this, 'onSave')), 'fa:floppy-o');
  126. $this->form->addQuickAction(_t('New'), new TAction(array($this, 'onEdit')), 'bs:plus-sign green');
  127. $this->form->addQuickAction(_t('Back to the listing'), new TAction(array('PerdcompList', 'onReload')), 'fa:table blue');
  128. // vertical box container
  129. $container = new TVBox;
  130. $container->style = 'width: 90%';
  131. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  132. $container->add($this->form);
  133. parent::add($container);
  134. }
  135. }
  136. datagrid:
 
  1. <?php
  2. /**
  3. * PerdcompList Listing
  4. * @author <your name here>
  5. */
  6. class PerdcompList 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('perdcomp'); // defines the database
  21. parent::setActiveRecord('Perdcomp'); // defines the active record
  22. parent::setDefaultOrder('perdcomp_id', 'asc'); // defines the default order
  23. // parent::setCriteria($criteria) // define a standard filter
  24. parent::addFilterField('perdcomp_id', 'like', 'perdcomp_id'); // filterField, operator, formField
  25. parent::addFilterField('DataCriacao', 'like', 'DataCriacao'); // filterField, operator, formField
  26. parent::addFilterField('DataTransmissao', 'like', 'DataTransmissao'); // filterField, operator, formField
  27. parent::addFilterField('Sequencial', 'like', 'Sequencial'); // filterField, operator, formField
  28. parent::addFilterField('Nr_PERDCOMP', 'like', 'Nr_PERDCOMP'); // filterField, operator, formField
  29. parent::addFilterField('TipoDocumento_id', 'like', 'TipoDocumento_id'); // filterField, operator, formField
  30. parent::addFilterField('OrigemDocumento_id', 'like', 'OrigemDocumento_id'); // filterField, operator, formField
  31. parent::addFilterField('TipoCredito_id', 'like', 'TipoCredito_id'); // filterField, operator, formField
  32. parent::addFilterField('SaldoDeclarado', 'like', 'SaldoDeclarado'); // filterField, operator, formField
  33. parent::addFilterField('Exercicio', 'like', 'Exercicio'); // filterField, operator, formField
  34. parent::addFilterField('TipoImposto_ID', 'like', 'TipoImposto_ID'); // filterField, operator, formField
  35. // creates the form
  36. $this->form = new TQuickForm('form_search_Perdcomp');
  37. $this->form->class = 'tform'; // change CSS class
  38. $this->form->style = 'display: table;width:100%'; // change style
  39. $this->form->setFormTitle('Filtro Perdcomp');
  40. // create the form fields
  41. $perdcomp_id = new TEntry('perdcomp_id');
  42. $DataCriacao = new TDate('DataCriacao');
  43. $DataTransmissao = new TDate('DataTransmissao');
  44. $Nr_PERDCOMP = new TEntry('Nr_PERDCOMP');
  45. $TipoDocumento_id = new ">TDBSeekButton('TipoDocumento_id', 'perdcomp', $this->form->getName(), 'TipoDocumento', 'TipoDocumentoDescricao', 'TipoDocumento_id', 'tipo_documento');
  46. $TipoDocumentoDescricao = new TEntry('tipo_documento');
  47. $TipoCredito_id = new ">TDBSeekButton('TipoCredito_id', 'perdcomp', $this->form->getName(), 'TipoCredito', 'TipoCreditoDescricao', 'TipoCredito_id', 'tipo_credito');
  48. $TipoCreditoDescricao = new TEntry('tipo_credito');
  49. $OrigemDocumento_id = new ">TDBSeekButton('OrigemDocumento_id', 'perdcomp', $this->form->getName(), 'OrigemDocumento', 'OrigemDocumentoDescricao', 'OrigemDocumento_id', 'origem_documento');
  50. $OrigemDocumentoDescricao = new TEntry('origem_documento');
  51. $TipoImposto_ID = new ">TDBSeekButton('TipoImposto_ID', 'perdcomp', $this->form->getName(), 'TipoImposto', 'TipoImposto_Descricao', 'TipoImposto_ID', 'tipo_imposto');
  52. $TipoImposto_Descricao = new TEntry('tipo_imposto');
  53. $Exercicio = new TEntry('Exercicio');
  54. $TipoDocumentoDescricao->setEditable(FALSE);
  55. $TipoDocumento_id->setSize('40');
  56. $TipoDocumentoDescricao->setSize('500');
  57. $TipoCreditoDescricao->setEditable(FALSE);
  58. $TipoCredito_id->setSize('40');
  59. $TipoCreditoDescricao->setSize('500');
  60. $OrigemDocumentoDescricao->setEditable(FALSE);
  61. $OrigemDocumento_id->setSize('40');
  62. $OrigemDocumentoDescricao->setSize('500');
  63. $TipoImposto_Descricao->setEditable(FALSE);
  64. $TipoImposto_ID->setSize('40');
  65. $TipoImposto_Descricao->setSize('500');
  66. // add the fields
  67. $this->form->addQuickField('Código:', $perdcomp_id, 80 );
  68. $this->form->addQuickField('Data Criação', $DataCriacao, 80 );
  69. $this->form->addQuickField('Data Transmissão:', $DataTransmissao, 80 );
  70. $this->form->addQuickField('Nº Perdcomp:', $Nr_PERDCOMP, 500 );
  71. $this->form->addQuickFields('Tipo Documento:', [ $TipoDocumento_id, $TipoDocumentoDescricao ] );
  72. $this->form->addQuickFields('Tipo Crédito:', [ $TipoCredito_id, $TipoCreditoDescricao] );
  73. $this->form->addQuickFields('Origem Documento:', [ $OrigemDocumento_id, $OrigemDocumentoDescricao ] );
  74. $this->form->addQuickFields('Tipo Imposto:', [ $TipoImposto_ID, $TipoImposto_Descricao] );
  75. $this->form->addQuickField('Exercício', $Exercicio, 100 );
  76. // keep the form filled during navigation with session data
  77. $this->form->setData( TSession::getValue('Perdcomp_filter_data') );
  78. // add the search form actions
  79. $this->form->addQuickAction(_t('Find'), new TAction(array($this, 'onSearch')), 'fa:search');
  80. $this->form->addQuickAction(_t('New'), new TAction(array('PerdcompForm', 'onEdit')), 'bs:plus-sign green');
  81. // creates a DataGrid
  82. $this->datagrid = new TDataGrid;
  83. // $this->datagrid->enablePopover('Image', "<img src='{photo_path}'>");
  84. $this->datagrid->style = 'width: 100%';
  85. $this->datagrid->datatable = 'true';
  86. // $this->datagrid->enablePopover('Popover', 'Hi <b> {name} </b>');
  87. // creates the datagrid columns
  88. $column_perdcomp_id = new TDataGridColumn('perdcomp_id', 'Código', 'right');
  89. $column_DataCriacao = new TDataGridColumn('DataCriacao', 'Data Criação', 'left');
  90. $column_DataTransmissao = new TDataGridColumn('DataTransmissao', 'Data Transmissão', 'left');
  91. $column_Nr_PERDCOMP = new TDataGridColumn('Nr_PERDCOMP', 'Nº Perdcomp', 'left');
  92. $column_TipoDocumento_id = new TDataGridColumn('tipo_documento', 'Tipo Documento', 'left');
  93. $column_GED = new TDataGridColumn('GED', 'GED', 'left');
  94. $column_TipoCredito_id = new TDataGridColumn('tipo_credito', 'Tipo Crédito', 'left');
  95. $column_TipoImposto_ID = new TDataGridColumn('tipo_imposto', 'Tipo Imposto', 'left');
  96. $column_OrigemDocumento_id = new TDataGridColumn('origem_documento', 'Origem Documento', 'left');
  97. $column_SaldoDeclarado = new TDataGridColumn('SaldoDeclarado', 'Saldo Declarado', 'right');
  98. $column_Exercicio = new TDataGridColumn('Exercicio', 'Exercício', 'right');
  99. $column_ValorCompensado = new TDataGridColumn('ValorCompensado', 'Valor Compensado', 'right');
  100. $column_Sequencial = new TDataGridColumn('Sequencial', 'Sequencial', 'left');
  101. $column_Competencia = new TDataGridColumn('Competencia', 'Competência', 'left');
  102. $column_PERDCOMP_Original = new TDataGridColumn('PERDCOMP_Original', 'Perdcomp Original', 'left');
  103. $column_Situacao = new TDataGridColumn('Situacao', 'Situação', 'left');
  104. $column_Cancelamento = new TDataGridColumn('Cancelamento', 'Cancelamento', 'left');
  105. $column_CreditoOriginalInicial = new TDataGridColumn('CreditoOriginalInicial', 'Crédito Original Inicial', 'right');
  106. $column_CreditoOriginalUtilizadoCompensacoes = new TDataGridColumn('Credito Original Utilizado Compensações', 'Creditooriginalutilizadocompensacoes', 'right');
  107. $column_CreditoOriginalDisponivel = new TDataGridColumn('Crédito Original Disponível', 'Crédito Original Disponível', 'right');
  108. $column_CreditoOriginalTransmissao = new TDataGridColumn('Credito Original Transmissão', 'Crédito Original Transmissão', 'right');
  109. $column_SelicAcumulada = new TDataGridColumn('Selic Acumulada', 'Selic Acumulada', 'right');
  110. $column_CreditoAtualizado = new TDataGridColumn('CreditoAtualizado', 'Crédito Atualizado', 'right');
  111. $column_DebitosDocumento = new TDataGridColumn('DebitosDocumento', 'Débitos Documento', 'right');
  112. $column_CreditoOriginalUtilizadoDocumento = new TDataGridColumn('CreditoOriginalUtilizadoDocumento', 'Crédito Original Utilizado Documento', 'right');
  113. $column_SaldoCreditoOriginal = new TDataGridColumn('SaldoCreditoOriginal', 'Saldo Crédito Original', 'right');
  114. $column_system_unit_id = new TDataGridColumn('system_unit_id', 'Empresa', 'right');
  115. $column_system_user_id = new TDataGridColumn('system_user_id', 'Usuario', 'right');
  116. // add the columns to the DataGrid
  117. $this->datagrid->addColumn($column_perdcomp_id);
  118. $this->datagrid->addColumn($column_DataCriacao);
  119. $this->datagrid->addColumn($column_DataTransmissao);
  120. $this->datagrid->addColumn($column_Sequencial);
  121. $this->datagrid->addColumn($column_Nr_PERDCOMP);
  122. $this->datagrid->addColumn($column_GED);
  123. $this->datagrid->addColumn($column_TipoDocumento_id);
  124. $this->datagrid->addColumn($column_OrigemDocumento_id);
  125. $this->datagrid->addColumn($column_TipoCredito_id);
  126. $this->datagrid->addColumn($column_TipoImposto_ID);
  127. $this->datagrid->addColumn($column_SaldoDeclarado);
  128. $this->datagrid->addColumn($column_ValorCompensado);
  129. $this->datagrid->addColumn($column_Exercicio);
  130. $this->datagrid->addColumn($column_Competencia);
  131. $this->datagrid->addColumn($column_PERDCOMP_Original);
  132. $this->datagrid->addColumn($column_Situacao);
  133. $this->datagrid->addColumn($column_Cancelamento);
  134. $this->datagrid->addColumn($column_CreditoOriginalInicial);
  135. $this->datagrid->addColumn($column_CreditoOriginalUtilizadoCompensacoes);
  136. $this->datagrid->addColumn($column_CreditoOriginalDisponivel);
  137. $this->datagrid->addColumn($column_CreditoOriginalTransmissao);
  138. $this->datagrid->addColumn($column_SelicAcumulada);
  139. $this->datagrid->addColumn($column_CreditoAtualizado);
  140. $this->datagrid->addColumn($column_DebitosDocumento);
  141. $this->datagrid->addColumn($column_CreditoOriginalUtilizadoDocumento);
  142. $this->datagrid->addColumn($column_SaldoCreditoOriginal);
  143. $this->datagrid->addColumn($column_system_unit_id);
  144. $this->datagrid->addColumn($column_system_user_id);
  145. $order_perdcomp_id = new TAction(array($this, 'onReload'));
  146. $order_perdcomp_id->setParameter('order', 'perdcomp_id');
  147. $column_perdcomp_id->setAction($order_perdcomp_id);
  148. $order_DataCriacao = new TAction(array($this, 'onReload'));
  149. $order_DataCriacao->setParameter('order', 'DataCriacao');
  150. $column_DataCriacao->setAction($order_DataCriacao);
  151. $order_DataTransmissao = new TAction(array($this, 'onReload'));
  152. $order_DataTransmissao->setParameter('order', 'DataTransmissao');
  153. $column_DataTransmissao->setAction($order_DataTransmissao);
  154. $column_Nr_PERDCOMP->setTransformer(function($value, $object, $row){
  155. $link = new THyperLink('Hyper Link (url)', 'Nr_PERDCOMP', 'orange', 12, 'biu');
  156. return $link;
  157. ))
  158. // define the transformer method over image
  159. $column_Competencia->setTransformer( function($value, $object, $row) {
  160. $date = new DateTime($value);
  161. return $date->format('d/m/Y');
  162. });
  163. // define the transformer method over image
  164. $column_DataCriacao->setTransformer( function($value, $object, $row) {
  165. $date = new DateTime($value);
  166. return $date->format('d/m/Y');
  167. });
  168. // define the transformer method over image
  169. $column_DataTransmissao->setTransformer( function($value, $object, $row) {
  170. $date = new DateTime($value);
  171. return $date->format('d/m/Y');
  172. });
  173. // define the transformer method over image
  174. $column_SaldoDeclarado->setTransformer( function($value, $object, $row) {
  175. return 'R$ ' . number_format($value, 2, ',', '.');
  176. });
  177. // define the transformer method over image
  178. $column_ValorCompensado->setTransformer( function($value, $object, $row) {
  179. return 'R$ ' . number_format($value, 2, ',', '.');
  180. });
  181. // define the transformer method over image
  182. $column_CreditoOriginalInicial->setTransformer( function($value, $object, $row) {
  183. return 'R$ ' . number_format($value, 2, ',', '.');
  184. });
  185. // define the transformer method over image
  186. $column_CreditoOriginalUtilizadoCompensacoes->setTransformer( function($value, $object, $row) {
  187. return 'R$ ' . number_format($value, 2, ',', '.');
  188. });
  189. // define the transformer method over image
  190. $column_CreditoOriginalDisponivel->setTransformer( function($value, $object, $row) {
  191. return 'R$ ' . number_format($value, 2, ',', '.');
  192. });
  193. // define the transformer method over image
  194. $column_CreditoOriginalTransmissao->setTransformer( function($value, $object, $row) {
  195. return 'R$ ' . number_format($value, 2, ',', '.');
  196. });
  197. // define the transformer method over image
  198. $column_CreditoAtualizado->setTransformer( function($value, $object, $row) {
  199. return 'R$ ' . number_format($value, 2, ',', '.');
  200. });
  201. // define the transformer method over image
  202. $column_DebitosDocumento->setTransformer( function($value, $object, $row) {
  203. return 'R$ ' . number_format($value, 2, ',', '.');
  204. });
  205. // define the transformer method over image
  206. $column_CreditoOriginalUtilizadoDocumento->setTransformer( function($value, $object, $row) {
  207. return 'R$ ' . number_format($value, 2, ',', '.');
  208. });
  209. // define the transformer method over image
  210. $column_SaldoCreditoOriginal->setTransformer( function($value, $object, $row) {
  211. return 'R$ ' . number_format($value, 2, ',', '.');
  212. });
  213. // create EDIT action
  214. $action_edit = new TDataGridAction(array('PerdcompForm', 'onEdit'));
  215. $action_edit->setButtonClass('btn btn-default');
  216. $action_edit->setLabel(_t('Edit'));
  217. $action_edit->setImage('fa:pencil-square-o blue fa-lg');
  218. $action_edit->setField('perdcomp_id');
  219. $this->datagrid->addAction($action_edit);
  220. // create DELETE action
  221. $action_del = new TDataGridAction(array($this, 'onDelete'));
  222. $action_del->setButtonClass('btn btn-default');
  223. $action_del->setLabel(_t('Delete'));
  224. $action_del->setImage('fa:trash-o red fa-lg');
  225. $action_del->setField('perdcomp_id');
  226. $this->datagrid->addAction($action_del);
  227. // create the datagrid model
  228. $this->datagrid->createModel();
  229. // create the page navigation
  230. $this->pageNavigation = new TPageNavigation;
  231. $this->pageNavigation->setAction(new TAction(array($this, 'onReload')));
  232. $this->pageNavigation->setWidth($this->datagrid->getWidth());
  233. // vertical box container
  234. $container = new TVBox;
  235. $container->style = 'width: 90%';
  236. // $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
  237. $container->add($this->form);
  238. $container->add($this->datagrid);
  239. $container->add($this->pageNavigation);
  240. parent::add($container);
  241. }
  242. }
  243. </your></your>
MG

Faltou o ponto e vírgula no final do método.

 
  1. <?php
  2. $column_Nr_PERDCOMP->setTransformer(function($value, $object, $row){
  3. $link = new THyperLink('Hyper Link (url)', 'Nr_PERDCOMP', 'orange', 12, 'biu');
  4. return $link;
  5. )) ; // <=============
  6. ?>
ST

Marcelo,
Obrigado, problema resolvido.
MG

Excelente!
Sucesso