Trabalhando com informações da tabela principal em manutenções

Os campos da tabela principal de cada formulário de manutenção, tem uma forma facilitada de definir e buscar valores e propriedades. É possível chamar as funções abaixo para essas situações;

  • ValorNaTela(cNomeCol: String) : Variant;
    Retorna o valor do componente da coluna “cNomeCol” em tela para ser atribuído em uma variável ou até apresentado em tela.

  • ValorParaTela(cNomeCol: String; Valor: Variant);
    Define para o componente da coluna “cNomeCol” o valor informado em “Valor”.

  • EditorDaColuna(cPrefixo: string; cNomeColuna: string): TComponent;
    Retorna o componente editor da coluna. Devido uma convenção interna o “cPrefixo” por padrão tem o valor “EB_” sendo necessário informar “cNomeColuna” para saber qual componente retornar.
    Para ter acesso as propriedades específicas do componente se faz necessário adicionar em “uses” das “units” que tem a declaração das propriedades. Abaixo nos exemplos isso será apresentado.

Alguns Exemplos de uso:

Em um evento “Ao incluir”, definir um valor de uma coluna:

//definindo para o campo AGENCIA o valor 10. FRhPreserv.ValorParaTela('AGENCIA', 10);

 

Em um evento “Ao incluir”, definir um valor a um determinado componente e definir o componente com “enabled” false.

uses Controls; //como vamos usar a propriedade enabled e essa é declarada nessa //unit precisa ser informada para utilização var ct : TWinControl; //variável declarada para conseguir receber o editor da coluna begin //definindo o valor do componente para tela FRhPreserv.ValorParaTela('AGENCIA', 10); //associando a variável 'ct' o editor da coluna no formulário ct := FRhPreserv.EditorDaColuna('EB_','AGENCIA'); //definindo o componente com 'enabled' igual a 'false' ct.Enabled := false; end;

Antes de salvar, avaliando determinado valor e conforme o valor atribuir um erro a tela não permitindo salvar.

//verificando o valor na tela do componente if (FRhPreserv.ValorNaTela('CONTABANCO') = '') then //adicionando um erro ao componente de erros da tela relacionando o editor do componente. FRhPreserv.AddErro(FRhPreserv.EditorDaColuna('EB_', 'CONTABANCO'), 'Conta do banco deve ser informada.');

 

Para facilitar ainda mais o entendimento, foi produzido um vídeo sobre este conteúdo. Para acessá-lo, utilize o link abaixo:

Treinamento VsScripter - 7 - Tabelas em Modo de Manutenção