Re: [firebase-br] Comparação entre campos numéricos. Resultado maluco...
Jean Vichinheski
jean em equipesul.com.br
Seg Jun 12 13:16:21 -03 2006
Tenta usar a versão firebird 1.5.3 que é a estavel tive o mesmo tipo de
problema com uma versão não estavel !!!
----- Original Message -----
From: "Pedro" <news.pj em gmail.com>
To: <lista em firebase.com.br>
Sent: Monday, June 12, 2006 1:00 PM
Subject: [firebase-br] Comparação entre campos numéricos. Resultado
maluco...
Pessoal, desta vez é o seguinte...
A tabela tem os seguintes campos :
codigo ( Inteiro) ,
qtd ( Inteiro),
vlrund Numeric(15,2),
Total Numeric(15,2).
Esta tabela é alimentada pela aplicação do cidadão lá. Fizemos o
seguinte teste via IBExpert:
Select codigo, qtd, vlrUnd, valor, Cast(qtd*vlrUnd as Numeric(15,2))
Calculado
from Tabela
where Cast(qtd*vlrUnd as Numeric(15,2))<>valor
Como resultado, tivemos algo assim :
codigo QTD VLRUND TOTAL CALCULADO
10534 54 270,24 14592,96 14592,96
10212 12 288,45 3461,40 3461,40
10312 12 288,45 3461,40 3461,40
11082 31 236,65 7336,15 7336,15
10260 60 270,24 16214,40 16214,40
E por aí vai...
No olho, onde está a diferença? Até levamos pro excel pra ver se tinha
a ver com aproximação decimal, tira-teima... Nada! Voltamos ao
IBExpert, e visualmente tudo OK. Então clicamos 2x sobre o campo
"Total", na primeira linha e lá apareceu : 14592,9599999999991. Visto
isso, clicamos também no campo "Calculado". E lá apareceu :
14592,960000000001. Ahááá !!!
Daí...
Alguém sabe explicar que loucura é essa? Como contornar essa
maluquice? Na aplicação os dados são passados para o insert já
arredondados para 2 casas decimais.Será o firebird, via Numeric,
fazendo doideira ou o IBExpert que tem bug? Firebird 1.5 RC2, IBExpert
2.5.0.22 Personal Edition. Alguém vá viu isso?
At,
Pedro.
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
--
Internal Virus Database is out-of-date.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.12.5/147 - Release Date: 24/10/2005
Mais detalhes sobre a lista de discussão lista