campo virtual dbgrid
boa tarde, estou precisando criar um campo virtual no dbgrid, o mesmo precisa ter o seguinte comportamento
digito o valor e pego o mesmo pra realizar um outro cálculo, tentei criar pela opção new field botão direito no objeto query, mas não funciona como data, calculado etc, como fazer isso?
Desde já agradeço!
digito o valor e pego o mesmo pra realizar um outro cálculo, tentei criar pela opção new field botão direito no objeto query, mas não funciona como data, calculado etc, como fazer isso?
Desde já agradeço!
Rodrigo Pereira
Curtidas 0
Respostas
Dms Logistica
27/06/2013
Boa tarde Rodrigo..
Como você verificou, realmente não da para tentar manipular um campo calculado direto na query que esta ligada a uma BASE.
Uma solução, não sei se seria viável para você, seria usar um clientDataset (CDS) como tabela de memoria.
Você cria os campos no field editor do CDS, abre ele com um createdataset, da os appends nele com os registros da tabela principal, ai com ele (cds) ligado em uma grid você conseguiria digitar o valor, e logo em seguida fazer o calculo necessário.
Mas note que fazendo isso você somente teria tudo enquanto estivesse na tela, assim que o CDS fosse desligado tudo se perderia.
Caso você precise guardar os valores, eu sugeriria percorrer todos os registros do CDS e dar um update na tabela
principal pelo id que une as duas tabelas.
Eu espero ter dado alguma luz a ti.. :)
Qualquer duvida ou esclarecimento é só perguntar.
Como você verificou, realmente não da para tentar manipular um campo calculado direto na query que esta ligada a uma BASE.
Uma solução, não sei se seria viável para você, seria usar um clientDataset (CDS) como tabela de memoria.
Você cria os campos no field editor do CDS, abre ele com um createdataset, da os appends nele com os registros da tabela principal, ai com ele (cds) ligado em uma grid você conseguiria digitar o valor, e logo em seguida fazer o calculo necessário.
Mas note que fazendo isso você somente teria tudo enquanto estivesse na tela, assim que o CDS fosse desligado tudo se perderia.
Caso você precise guardar os valores, eu sugeriria percorrer todos os registros do CDS e dar um update na tabela
principal pelo id que une as duas tabelas.
Eu espero ter dado alguma luz a ti.. :)
Qualquer duvida ou esclarecimento é só perguntar.
GOSTEI 0
Rodrigo Pereira
27/06/2013
boa noite, fiz a parada usando o evendo ongettext e onsettext, de qualquer forma obrigado pela atenção!!!!
GOSTEI 0
José
27/06/2013
Tendo entendido que a duvida foi solucionada. Estou marcando este tópico como concluído.
Fique a vontade para abrir novos.
Fique a vontade para abrir novos.
GOSTEI 0