Um grande problema que encontro no arredondamento é o seguinte: - Vamos dizer que tenho duas tabelas; uma guarda informações de
CABECALHO ; outra guarda ITENS.
Tabela CABECALHO contém um campo "valor_total", no qual, calcula os totais dos ITENS, no caso, "valor_unitario" * "quantidade" de todos os ITENS.
Aí é que vem o problema. Em um relatório caso seja mostrado o total do CABECALHO e os ITENS descriminados, se o usuário calcular item por item e comparar com o CABECALHO notará a diferença, porque o relatório mostrará nos ITENS, por exemplo 20,55 (valor_unitario) enquanto no banco de dados o valor REAL do "valor_unitario" é 20,5598777.
Portanto:
CABECALHO campo VALOR_TOTAL = 41,1197554
ITENS "VLR_UNITARIO" = 20,5598777 ; "QUANTIDADE" = 2 TOTAL = 41,1197554
Visualização do usuário (Relatório)
CABECALHO campo VALOR_TOTAL = 41,20
ITENS "VLR_UNITARIO" = 20,56 ; "QUANTIDADE" = 2 = TOTAL = 41,12 (nesse caso o valor pode fechar, mas em um montante dar diferença)