Mensagem: quot;Invalid Floating Point operation´ -

09/04/2003

0

Tenho a seguinte situação:
Banco de dados: Paradox 7
Delphi 5

Rotina de atualização de lançamento em movimento de caixa:


procedure AtualizaCx;
var
bmk : TbookMark;
vsal: Double;
begin
with DmDados.TbCaixa do
begin
bmk:=GetBookMark;
DisableControls;
Try
vsal := 0.0;
Prior;
if not bof then
begin
vsal:=DmDados.TbCaixaSal.Value;
next;
end;
while not eof do
begin
vsal:=vsal+(DmDados.TbCaixaCre.Value - DmDados.TbCaixaDeb.Value);
DmDados.BancoDados.StartTransaction;
DmDados.TbCaixa.Edit;
DmDados.TbCaixaSal.Value:=vsal;
DmDados.TbCaixa.Post;
DmDados.BancoDados.Commit;
DmDados.TbCaixa.Next;
end;
finally
enableControls;
if bmk<>nil then
begin
GotoBookMark(bmk);
FreeBookMark(Bmk);
end;
end;
end;
end;

Os campos Cre, Deb e Sal do banco de dados Caixa são definidos como Currency. E estão formatados no componente Table na propriedade DisplayFormat #,0.00

Esta rotina é chamada no momento de alteração, inclusão e exclusão de registro.

Acontece que em registros variados, quando estou depurando aparece a mensagem acima. Exemplo: estou atualizando 10 registros, ele atualiza o primeiro e dá a mensagem no segundo, ou atualiza os oito primeiros e dá mensagem em seguida. O que eu não consigo entender é que a mensagem aparece em registros variados e ele consegue atualizar alguns ou então nenhum.

Agradeço qualquer ajuda...

Obrigada,

Selma


Selma Kineipp

Selma Kineipp

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar