WR
Exibir campo de relacionamento composição
Boa tarde pesso@ll
Iniciei um pequeno projeto para aprender a usar a ferramenta e estou tendo dificuldade em algo muito simples, que inclusive já havia passado por isso a uns 2 anos atrás.Como fiquei muito tempo sem usar a ferramenta e estou iniciando novamente em um projeto, estou levando um baile.
Quero exibir a descrição do campo de uma tabela e não o seu ID.
Fiz o relacionamento no model e quando tento referenciar no grid ao executar o programa simplesmente o campo vem em branco, como se não tivesse dado nenhum.
Eu refiz várias vezes e vi alguns exemplos e não consigo descobrir onde está o erro.
Detalhe: Dessa vez estou usando ambiente Windows para o desenvolvimento.
Desde já agradeço a ajuda ou orientações!!
/******
class Tipoequipamento extends TRecord
{
const TABLENAME = 'tipoequipamento';
const PRIMARYKEY= 'idTipoEquipamento';
const IDPOLICY = 'max'; // {max, serial}
public function __construct($id = NULL, $callObjectLoad = TRUE)
{
parent::__construct($id, $callObjectLoad);
parent::addAttribute('descTipoEquipamento');
}
}
/*****
class Marcamodelo extends TRecord
{
const TABLENAME = 'marcamodelo';
const PRIMARYKEY= 'idMarcaModelo';
const IDPOLICY = 'max'; // {max, serial}
private $tipoequipamento;
public function __construct($id = NULL, $callObjectLoad = TRUE)
{
parent::__construct($id, $callObjectLoad);
parent::addAttribute('idTipoEquipamento');
parent::addAttribute('descMarcaModelo');
}
public function set_tipoequipamento(Tipoequipamento $object)
{
$this->tipoequipamento = $object;
$this->tipoequipamento_id = $object->id;
}
public function get_tipoequipamento()
{
// loads the associated object
if (empty($this->tipoequipamento))
$this->tipoequipamento = new Tipoequipamento($this->tipoequipamento_id);
// returns the associated object
return $this->tipoequipamento;
}
}
/****
// creates the datagrid columns
$column_idMarcaModelo = new TDataGridColumn('idMarcaModelo', 'Id', 'left');
$column_idTipoEquipamento = new TDataGridColumn('tipoequipamento->descTipoEquipamento', 'Id Tipo Equipamento', 'left');
$column_descMarcaModelo = new TDataGridColumn('descMarcaModelo', 'Descrição', 'left');
Iniciei um pequeno projeto para aprender a usar a ferramenta e estou tendo dificuldade em algo muito simples, que inclusive já havia passado por isso a uns 2 anos atrás.Como fiquei muito tempo sem usar a ferramenta e estou iniciando novamente em um projeto, estou levando um baile.
Quero exibir a descrição do campo de uma tabela e não o seu ID.
Fiz o relacionamento no model e quando tento referenciar no grid ao executar o programa simplesmente o campo vem em branco, como se não tivesse dado nenhum.
Eu refiz várias vezes e vi alguns exemplos e não consigo descobrir onde está o erro.
Detalhe: Dessa vez estou usando ambiente Windows para o desenvolvimento.
Desde já agradeço a ajuda ou orientações!!
/******
class Tipoequipamento extends TRecord
{
const TABLENAME = 'tipoequipamento';
const PRIMARYKEY= 'idTipoEquipamento';
const IDPOLICY = 'max'; // {max, serial}
public function __construct($id = NULL, $callObjectLoad = TRUE)
{
parent::__construct($id, $callObjectLoad);
parent::addAttribute('descTipoEquipamento');
}
}
/*****
class Marcamodelo extends TRecord
{
const TABLENAME = 'marcamodelo';
const PRIMARYKEY= 'idMarcaModelo';
const IDPOLICY = 'max'; // {max, serial}
private $tipoequipamento;
public function __construct($id = NULL, $callObjectLoad = TRUE)
{
parent::__construct($id, $callObjectLoad);
parent::addAttribute('idTipoEquipamento');
parent::addAttribute('descMarcaModelo');
}
public function set_tipoequipamento(Tipoequipamento $object)
{
$this->tipoequipamento = $object;
$this->tipoequipamento_id = $object->id;
}
public function get_tipoequipamento()
{
// loads the associated object
if (empty($this->tipoequipamento))
$this->tipoequipamento = new Tipoequipamento($this->tipoequipamento_id);
// returns the associated object
return $this->tipoequipamento;
}
}
/****
// creates the datagrid columns
$column_idMarcaModelo = new TDataGridColumn('idMarcaModelo', 'Id', 'left');
$column_idTipoEquipamento = new TDataGridColumn('tipoequipamento->descTipoEquipamento', 'Id Tipo Equipamento', 'left');
$column_descMarcaModelo = new TDataGridColumn('descMarcaModelo', 'Descrição', 'left');
Olá Wilson, tenta assim:
Bom dia Ivan Fernandes!!
Muitíssimo obrigado Amigo, deu certinho.
Lição aprendida !!!
Grande abraço!
Bom dia Wilson! Show de bola. Abraço