[firebase-br] Problema casas decimais

Marcos Weimer marcosweimer em gmail.com
Sex Jul 15 10:42:21 -03 2011


Existe uma normativa de arredondamento, inclusive usada pelas ECF (daruma eu
sei que usa)
é a NBR 5891

Consultem, la tem as regras para fazer o arredondamento dentro das normas e
evitar problemas com o fisco.



Em 15 de julho de 2011 09:49, Felipe Aron <felipearon em gmail.com> escreveu:

> Fazendo o cálculo dá: 428,625 - logo o erredondamento é para cima = 428,63.
>
> No Delphi evite usar variável Float. Existe o problema do ponto flutuante
> em
> cálculos. Use tipo Currency!
>
> Exemplo do erro usando float:
>
> var1 Real = 0.01;
> var2 Real = 0.01;
>
> var1 = var2 ? FALSE! --> Problema do ponto flutuante...
>
> Isso é um exemplo simples, mas envolvendo cálculos, principalmente divisão
> a
> coisa se torna pior. Eu mesmo já tive problemas de divisão. Hoje em dia uso
> apenas tipo Currency e não tenho mais problema.
>
>
> Em 15 de julho de 2011 08:47, Ademir - Branco Sistemas <
> ademir em brancosistemas.com.br> escreveu:
>
> > 2.857,50 * 0,15 = 428,625
> >
> > -----Mensagem Original----- From: Samuel M. Basso
> > Sent: Friday, July 15, 2011 8: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
> > ______________________________**________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> > Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >
> > ______________________________**________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> > Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >
>
>
>
> --
> Analista-Programador
> #FollowMe: @felipearon <http://twitter.com/felipearon> (
> http://felipearon.net)
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
-=Ma®©oS=-
Marcos R. Weimer
Puma GTE 1974 Tubarão



Mais detalhes sobre a lista de discussão lista