Ir para conteúdo
  • Cadastre-se

dev botao

Venda de Item com valor 999999,99


Davi
  • Este tópico foi criado há 2284 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa tarde, fiz atualização dos fontes agora estou tendo problema de diferença de 1 centavo ate mesmo no ecfteste, para simular processo mais simples abri o cupom 

vendi um item com quantidade 1 e valor unitário 999999,99 o mesmo registra no ecf como 999999,98 por causa da função trunkfix em versões anteriores 

o mesmo não ocorria.

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
Link para o comentário
Compartilhar em outros sites

  • Fundadores

Qual é exatamente a mensagem de Erro ?

Qual é a a marca e modelo do ECF ?

Qual é o passo a passo para reproduzir o problema, no ECFTeste ?

Repare que o método TruncFix está coberta por nossas UnitTestes.... já rodou elas ?

image.png

procedure TruncFixTest.AsExpression;
begin
  CheckEquals( 156, TruncFix( 1.602 * 0.98 * 100) );
  CheckEquals( 64, TruncFix( 5 * 12.991) );
  CheckEquals( 49, TruncFix( 2.09 * 23.5) );
end;

procedure TruncFixTest.AsDouble;
var
  ADouble: Double;
begin
  ADouble := 1.602 * 0.98 * 100;
  CheckEquals( 156, TruncFix( ADouble ) );
  ADouble := 5 * 12.991;
  CheckEquals( 64, TruncFix( ADouble ) );
  ADouble := 2.09 * 23.5;
  CheckEquals( 49, TruncFix( ADouble ) );
end;

procedure TruncFixTest.AsExtended;
var
  AExtended: Extended;
begin
  AExtended := 1.602 * 0.98 * 100;
  CheckEquals( 156, TruncFix( AExtended ) );
  AExtended := 5 * 12.991;
  CheckEquals( 64, TruncFix( AExtended ) );
  AExtended := 2.09 * 23.5;
  CheckEquals( 49, TruncFix( AExtended ) );
end;

procedure TruncFixTest.AsCurrency;
var
  ACurr: Currency;
begin
  ACurr := 1.602 * 0.98 * 100;
  CheckEquals( 156, TruncFix( ACurr ) );
  ACurr := 5 * 12.991;
  CheckEquals( 64, TruncFix( ACurr ) );
  ACurr := 2.09 * 23.5;
  CheckEquals( 49, TruncFix( ACurr ) );
end;

procedure TruncFixTest.AsLargeExtended;
var
  AExtended: Extended;
begin
  AExtended := 116529560.3123 * 100;

  CheckEquals( 11652956031, TruncFix( AExtended ) );
end;     

 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

15 horas atrás, Daniel Simoes disse:

Qual é exatamente a mensagem de Erro ?

Qual é a a marca e modelo do ECF ?

Qual é o passo a passo para reproduzir o problema, no ECFTeste ?

Repare que o método TruncFix está coberta por nossas UnitTestes.... já rodou elas ?

Estou usando Uma Bematech MP-4200 FI II ESCECF  V2.0.02  e uma daruma FS700!

Passos para reproduzir no ECF Teste:

Ativar
- + - + - + - + - + - + - + - + - + - + - + -
AbreCupom
- + - + - + - + - + - + - + - + - + - + - + -
Vende Item: Cod:111222333 DescTESTE DE PRODUTO Aliq:NN Qtd:1 Preço:999999,99 Desc:0 Un:UN Tipo:% Desc:D
- + - + - + - + - + - + - + - + - + - + - + -
Subtotaliza Cupom: 0
- + - + - + - + - + - + - + - + - + - + - + -
Efetua Pagamento: 1 Valor: 999999,99 Obs:  Vinc: N
- + - + - + - + - + - + - + - + - + - + - + -
Fecha Cupom: 
Componentes ACBr
http://acbr.sourceforge.net
- + - + - + - + - + - + - + - + - + - + - + -
 

Qual é exatamente a mensagem de Erro ?

Não esta necessariamente  informando uma mensagem de erro pois quando vendo Preço:999999,99 no ecf vende como Preço:999999,98 perde 1 centavo,

porem se mandar pagar Preço:999999,99 pelo tef ele diz que esta limitado ao saldo em aberto então não consigo finalizar sem alterar o TEF1.TEF.TrocoMaximo para aceitar um valor!

Davi Souza
Analista/Desenvolvedor de Aplicação Desktop
Teste 48 9 9643-8854
Link para o comentário
Compartilhar em outros sites

  • Fundadores

Enviei uma possível correção para o SVN...

Citar

-- ACBrECFEscECF --
[-] Correção em  "TACBrECFEscECFComando.AddParamDouble", para evitar
    arredondamento indevidos em valores altos...

 

  • Curtir 1
  • Obrigado 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2284 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...