Página 1 de 1

Arredondamento

Enviado: 06 Set 2005 11:24
por cainelli
Caros Colegas,

Tenho um cliente, posto de gasolina, q adiquiriu recentemente um ECF Bematech MP-25, o qual não aceita comando para
arredondamento.
No meu programa, peço o código do produto e após o valor total do abastecimento, então faço o cálculo dividindo o
valor pelo preço p/ litro para achar a qtdd de litros do abastecimento.
Ao enviar ao ECF mando a Qtdd de litros calculada e o Preco p/ litro. Aí onde ocorrem diferenças de centavos.

Exemplo: Cod. 1 Alcool Preço p/ litro R$ 1,169
Abastecimento de R$ 1,00 daria 0,855 litros
0,855 * 1.169 da R$ 0,999495 q truncado fica R$ 0,99

O inverso, pedir o codigo e a qtdd e calcular o preco final truncando como a impressora eu já consegui, mas esta
situação (de postos de gasolina) não sei como resolver.

Peço aos colegas q passaram ou estão passando por este problema q me indiquem como sulucionaram.

Obrigado,

Marcello.

Enviado: 06 Set 2005 18:52
por Anderson J. Freitas
Já tentou assim @.... say transform(quantidade*valor,"@E 999,99")

Enviado: 06 Set 2005 18:58
por Anderson J. Freitas
Opa!
Informação errada, tem é uma ponto (.) entre os noves

Já tentou assim @.... say transform(quantidade*valor,"@E 999.99")

Enviado: 08 Set 2005 07:14
por Visitante
Vamos lá...

Você recebe o valor completinho?

Você sabe o número máximo de casas decimais que virá?

Já tentou o Set Decimals to número de decimais?

Tipo (5 dígitos decimais)

Set Decimals to 5
Set fixed on

Tente e retorne.

Enviado: 08 Set 2005 09:13
por Everton
Olá Marcelo.


Estou tendo o mesmo problema em meus cliente de postos, e já tentei de tudo e nada de dar certo, se vc tiver algo de novo me avise, pois antes com as impressoras MP 20 FI II, não acorria esse problema pelo motivo do truncamento, mas agora não existe mais o arredondamento.

Enviado: 08 Set 2005 10:36
por vagucs
Podem tentar truncar o valor assim

É uma gambiarra mas funciona.

Código: Selecionar todos

function trunca(valor)
return val(left(tansform(valor,"9999999999.999"),13))
Isto irá eliminar a terceira casa decimal sem alterar o valor, truncando assim ela e vc não terá os problemas de arredondamento.