Ñão quer somar com oncalcfields

Delphi

18/03/2003

Crei 2 campos calculados, Tcheque na tblCheques, e não esta funcionando, o que está errado.

procedure TFrmCheques.TblChequeCalcFields(DataSet: TDataSet);
begin
TblChequeTCheque.AsFloat:=0;
TblCheque.First;
while not TblCheque.Eof do begin
TblChequeTCheque.AsFloat:=TblChequeTCheque.AsFloat+TblChequeValorche.Value;
TblCheque.Next;
end;
Edit1.Text:=FloatToStr(TblChequeTCheque.AsFloat);
end;


Consorte

Consorte

Curtidas 0

Respostas

Anonymous

Anonymous

18/03/2003

Você tem que fazer o campo cauculado receber o resultado de sua expressão.


GOSTEI 0
Consorte

Consorte

18/03/2003

Tcheque é o campo calculado, onde tem que receber a soma dos cheques.
ValorChe é o campo do valor de cada cheque e TblCheques é minha tabela.

Não quer funcionar no OncalcFields

procedure TFrmCheques.TblChequeCalcFields(DataSet: TDataSet);
begin
TblChequeTCheque.Value:=0;
while not TblCheque.Eof do
begin
TblChequeTCheque.Value:=TblChequeTCheque.Value+TblChequeValorChe.Value;
TblCheque.Next;
end;
Label2.Caption:=FloatToStr(TblChequeTcheque.Value);
end;


GOSTEI 0
Consorte

Consorte

18/03/2003

Não sei o que está acontecendo, com variavies e button, funcionou beleza, mas no oncalcfields com campo calculado não, alias, pode usar variavel dentro do ancalcfields?


GOSTEI 0
Anonymous

Anonymous

18/03/2003

provavelmente não funcione porque para montagem do campo calculado esta sendo utilizado os outros registros da tabela criando-se uma referência circular (por exemplo para montar o valor do registro ´a´ o sistema precisa pegar o ´b´ e o ´c´, porém o ´b´ e o ´c´ também precisam do valor do ´a´ que não tem seu valor calculado)

sugiro você totalizar com uma query utilizando o group by e depois criar um campo lookup


GOSTEI 0
POSTAR