definindo as propriedades formViewFieldNames e tableViewFieldNames
Introdução
As propriedades formViewFieldNames e tableViewFieldNames das grades da classe Pedidos ou Provisões são controladas através do objeto DefinicaoDosCamposDoPedido. O objeto implementa o método defineCamposVisiveisDaGrade( grade, script, ehGradeDetalhe ).
Os parâmetros do método são descritos conforme segue:
grade Grade que terá as propriedades 'formViewFieldNames' e 'tableViewFieldNames' alteradas;
script Script que executará chamada deste método;
ehGradeDetalhe Informa se o parâmetro grade é uma grade detalhe.
Utilização
A utilização do objeto DefinicaoDosCamposDoPedido facilita a manutenção dos processos que utilizam grades da classe Pedidos ou Provisões porque concentra em um único script as atribuições feitas às propriedades formViewFieldNames e tableViewFieldNames do produto.
Customizações
As customizações devem ser realizadas diretamente na grade onde se deseja determinar os valores para as propriedades 'formViewFieldNames' e 'tableViewFieldNames'.
Exemplo para adicionar o campo "ZCAMPOCUSTOM" ao tableViewFieldNames da grade “itempedidoouprovisao”:
O trecho a seguir vai funcionar
this.defineGrid("itempedidoouprovisao", function(){
inherited(this);
this.onDefineFields.set(function(grid){
inherited(grid);
// tableViewFieldNames da grade itempedidoouprovisao referenciado diretamente da própria grade
grid.tableViewFieldNames += "ZCAMPOCUSTOM";
})
})
O trecho a seguir não vai funcionar
this.defineGrid("pedidoOuProvisao", function(){ inherited(this); this.onDefineFields.set(function(grid){ inherited(grid);
// tableViewFieldNames da grade itempedidoouprovisao referenciado indiretamente
grid.itempedidoouprovisao.grid.tableViewFieldNames += "ZCAMPOCUSTOM"; }) })