Fórum TAggregateField.Value #295867
16/09/2005
0
Olá pessoal! Não estou conseguindo encontrar o erro:
Tenho um TAggregateField somando o total de todas as notas
no meu ClientDataSet. Tenho um DBEdit apontando para esse
campo que me retorna o valor correto. No mesmo form existe
um edit onde o usuário pode digitar um valor para desconto.
Adicionei um manipulador para o evento OnExit do Edit.
O código é o seguinte:
Ps.: ValorDesconto (Currency) mantém o valor do desconto digitado pelo usuário.
Adicionei também um manipulador para o OnKeyPress. Se o usuário pressionar ENTER ele executa o mesmo código acima.
O problema é que quando eu rodo o programa o label está recebendo a string ´nulo´, ou melhor, é como se ele não estivesse lendo o valor do campo. E o estranho é que aquele primeiro DBEdit que aponta para esse campo, continua mostrando o valor certo, mas dentro dos manipuladores de evento não consigo recuperar o valor do campo.
Tentei executar esse código também no AfterScroll do CDS e no OnExit (DBGrid), mas continua sem funcionar.
Também tentei trocar o código para CurrToStr(cdsNotasTOTALNOTAS.Value) ao invés de CurrToStr(cdsNotasTOTALNOTAS.Value-ValorDesconto), mas o resultado é o mesmo.
Alguém teria alguma luz :idea: :?:
Até!
Tenho um TAggregateField somando o total de todas as notas
no meu ClientDataSet. Tenho um DBEdit apontando para esse
campo que me retorna o valor correto. No mesmo form existe
um edit onde o usuário pode digitar um valor para desconto.
Adicionei um manipulador para o evento OnExit do Edit.
O código é o seguinte:
if not cdsNotasTOTALNOTAS.IsNull then lbTotal.Caption := CurrToStr(cdsNotasTOTALNOTAS.Value-ValorDesconto) else lbTotal.Caption := ´nulo´; //coloquei essa linha pra me ajudar a identificar o problema.
Ps.: ValorDesconto (Currency) mantém o valor do desconto digitado pelo usuário.
Adicionei também um manipulador para o OnKeyPress. Se o usuário pressionar ENTER ele executa o mesmo código acima.
O problema é que quando eu rodo o programa o label está recebendo a string ´nulo´, ou melhor, é como se ele não estivesse lendo o valor do campo. E o estranho é que aquele primeiro DBEdit que aponta para esse campo, continua mostrando o valor certo, mas dentro dos manipuladores de evento não consigo recuperar o valor do campo.
Tentei executar esse código também no AfterScroll do CDS e no OnExit (DBGrid), mas continua sem funcionar.
Também tentei trocar o código para CurrToStr(cdsNotasTOTALNOTAS.Value) ao invés de CurrToStr(cdsNotasTOTALNOTAS.Value-ValorDesconto), mas o resultado é o mesmo.
Alguém teria alguma luz :idea: :?:
Até!
Delphi32
Curtir tópico
+ 0
Responder
Posts
17/09/2005
Foxcyber
Tente ao invés d usar o cds use o edit pois se o valor nao está gravado ainda ele nao vai conseguir ler.
Responder
Gostei + 0
30/09/2005
Delphi32
Tente ao invés d usar o cds use o edit pois se o valor nao está gravado ainda ele nao vai conseguir ler.
não entendi...
esse edit que tem o valor do desconto é um edit comum. O valor do
desconto não é gravado em lugar algum...
Até!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)