[firebase-br] Problemas com calculos
Eduardo Jedliczka (TeamFB)
jedyfb em gmail.com
Seg Mar 20 17:28:17 -03 2006
que tal resolver com "alguns" casts... (mas preste atenção na precisão do
número...)
Select (Cast (140 * 1.03 /0.5017) as numeric(14,5)) * Cast (1.035 *2
*0.50) as numeric(14,5)) * Cast(0.93 *0.97) as numeric(14,5))) as VALOR From
RDB$DATABASE
======================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - PR
======================
----- Original Message -----
From: "Carlos H. Cantu (TeamFB)" <listas em warmboot.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, March 20, 2006 5:19 PM
Subject: Re: [firebase-br] Problemas com calculos
Tirando o .00, o FB trata 140 como inteiro.
O resultado de "inteiro" * 1.03 é alguma coisa com 2 casas decimais.
O resultado de 140.00 * 1.03 é alguma coisa com 4 casas decimais, que
multiplicado pelos outros fatores, faz com que o Firebird pense que
não vai caber em nenhum tipo de dado existente.
Ex:
1 * 1.00 = 1.00
1.00 * 1.00 = 1.0000
1.00 * 1.00 * 1.00 = 1.000000
No exemplo original, devia estar dando um resultado com 17 casas
decimais!
[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br
J> Apenas retirando o ".00" do 140.00 não apresentou o erro...
J> Select (((140 * 1.03) /0.5017) *1.035 *2 *0.50 *0.93 *0.97) as VALOR
>>From RDB$DATABASE
J> []'s
J> Alirio Botelho Junior
J> --------------------------------------------------
J> Fiorilli S/C Ltda Software
J> (17) 3264-9000
J> email: junior em fiorilli.com.br
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.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
Mais detalhes sobre a lista de discussão lista