[firebase-br] Problema casas decimais
Tecnobyte Informática
temp2 em tecnobyte.com.br
Sex Jul 15 12:09:00 -03 2011
Olá Samuel
Já palestrei sobre este assunto e o material da palestra está disponível
através do link abaixo:
http://www.tecnobyte.com.br/palestras/numeros.zip
O arredondamento do Delphi é diferente do arredondamento das calculadoras
financeiras. Na unit dpgMath.pas existem funções que fazem arredondamento e
truncamento da mesma forma que as calculadoras financeiras.
Talvez possa te ajudar a resolver o problema.
Atenciosamente.
Daniel P. Guimarães
Tecnobyte Informática
www.tecnobyte.com.br
-----Mensagem Original-----
From: Samuel M. Basso
Sent: Friday, July 15, 2011 7:18 AM
To: FireBase
Subject: [firebase-br] Problema casas decimais
Bom dia.
Estou tendo problemas com casas decimais, diferença de centavos, utilizo
Delphi 7 e Firebird.
Os campos:
ALQ_IPI NUMERIC(5,3)
VLR_B_CAL_IPI NUMERIC(11,2)
VLR_IPI NUMERIC(11,2)
O calculo no delphi:
ItensVLR_IPI.Value := ItensVLR_B_CAL_IPI.Value * (ItensALQ_IPI.Value / 100);
ItensVLR_IPI.Value := 2.857,50 * 0,15
ItensVLR_IPI.Value = 428,62
Agora se eu fizer na calculadora:
2.857,50 * 0,15 = 428,63
Diferença de 1(UM) centavo.
Alguém tem idéia do motivo do delphi dar essa diferença? Como os campos no
banco de dados estão com 2 casas decimais o delphi não deveria arredondar?
--
Atenciosamente,
*Samuel M. Basso*
Fone: (54) 3462-5522
Cel: (54) 8135-3723
Skype: samuelbasso
Twitter: @samuelbasso
E-mail/MSN: samuelbasso em gmail.com
Web site: www.otimizy.com.br
Mais detalhes sobre a lista de discussão lista