Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Descrição ao invés do código no TDatagrid (entre 3 tabelas) Tenho 3 tabelas (parcela, Contratotaxa, taxa) na tabela parcela tenho o CODPARCELA e CODCONTRATOTAXA na tabela Contratotaxa tenho CODCONTRATOTAXA e CODTAXA No datagrid preciso listar a descrição da taxa que está na tabela taxa. Na classe TRecord do parcela fiz um get para a contrato taxa agora preciso ir na tabela taxa para pegar a descrição como faço isso? class Parcela exte...
MG
Descrição ao invés do código no TDatagrid (entre 3 tabelas)  
Fechado
Tenho 3 tabelas (parcela, Contratotaxa, taxa)

na tabela parcela tenho o CODPARCELA e CODCONTRATOTAXA
na tabela Contratotaxa tenho CODCONTRATOTAXA e CODTAXA


No datagrid preciso listar a descrição da taxa que está na tabela taxa.


Na classe TRecord do parcela fiz um get para a contrato taxa agora preciso ir na tabela taxa para pegar a descrição
como faço isso?
class Parcela extends TRecord
{
const TABLENAME = 'parcela';
const PRIMARYKEY= 'CODPARCELA';
const IDPOLICY = 'serial'; // {max, serial}


/**
* Constructor method
*/
public function __construct(1320 = NULL, $callObjectLoad = TRUE)
{
parent::__construct(1320, $callObjectLoad);
parent::addAttribute('CODCLIENTE');
parent::addAttribute('CODPARCELA');
parent::addAttribute('CODCONTRATO');
parent::addAttribute('CODPARCELARES');
parent::addAttribute('CODCONTRATOTAXA');
parent::addAttribute('NUPARCELA');
parent::addAttribute('NURECIBO');
parent::addAttribute('TIPOPARCELA');
parent::addAttribute('DTVENCIMENTO');
parent::addAttribute('DTPAGAMENTO');
parent::addAttribute('VLPARCELA');
parent::addAttribute('VLMORA');
parent::addAttribute('VLMULTA');
parent::addAttribute('VLDESCONTO');
parent::addAttribute('VLACRESCIMO');
parent::addAttribute('VLCORRECAO');
parent::addAttribute('VLRESIDUO');
parent::addAttribute('VLSDOPARCELA');
parent::addAttribute('VLPAGO');
parent::addAttribute('NOSSONUMERO');
parent::addAttribute('SALDODEVEDOR');
parent::addAttribute('AMORTIZACAO');
parent::addAttribute('JUROS');
}
public function get_contratotaxa()
{
return new Contratotaxa( $this->CODCONTRATOTAXA ); // supondo que esta é a chave estrangeira para cliente
}


class Contratotaxa extends TRecord
{
const TABLENAME = 'contratotaxa';
const PRIMARYKEY= 'CODCONTRATOTAXA';
const IDPOLICY = 'serial'; // {max, serial}


/**
* Constructor method
*/
public function __construct(1320 = NULL, $callObjectLoad = TRUE)
{
parent::__construct(1320, $callObjectLoad);
parent::addAttribute('CODTAXA');
parent::addAttribute('CODCONTRATO');
parent::addAttribute('VALORPARCELA');
parent::addAttribute('PRAZO');
parent::addAttribute('DATA');
parent::addAttribute('DTPRESTACAOINICIAL');
parent::addAttribute('CODPARCELA');
parent::addAttribute('ATIVO');
parent::addAttribute('RESIDUO_IMPORT');
parent::addAttribute('CODPARCELAREF');
}
public function get_taxa()
{
return new Taxa( $this->CODTAXA() ); // supondo que esta é a chave estrangeira para cliente
}


}
class Taxa extends TRecord
{
const TABLENAME = 'taxa';
const PRIMARYKEY= 'CODTAXA';
const IDPOLICY = 'serial'; // {max, serial}


/**
* Constructor method
*/
public function __construct(1320 = NULL, $callObjectLoad = TRUE)
{
parent::__construct(1320, $callObjectLoad);
parent::addAttribute('DESTAXA');
parent::addAttribute('ATIVO');
}


}

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


CP

Maria, na criação da sua datagrid, no campo da taxa, mude de codtaxa para taxa->destaxa.

acredito que somente isso já resolva este problema.
MG

Obrigado Cristiano!

Resolvi desta maneira

public function get_contratotaxa()
{
return new Contratotaxa( $this->CODCONTRATOTAXA );
}
public function get_taxa()
{
return new Taxa( $this->get_contratotaxa()->CODTAXA);
}