Jump to content

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

Recommended Posts

Posted (edited)

Pessoal, tenho no banco de dados MySQL campos double com 4 casas decimais.

eles são armazenados assim:

99.8085
0.1904
0.0011
Mas, de forma aleatória, ao gerar o XML, ficam assim:
<pGLP>99.8086</pGLP>
<pGNn>0.1905</pGNn>
<pGNi>0.0012</pGNi>
 
Seria o delphi ou o a ACBr quem modifica esses valores? Sendo que eu só passo pro ACBR dessa forma:
 Prod.comb.pGLP := MyQrItensNFepGLP_anp.AsCurrency;            
 Prod.comb.pGNn := MyQrItensNFepGNn_anp.AsCurrency;
 Prod.comb.pGNi := MyQrItensNFepGNi_anp.AsCurrency; 
 
Obs.: Tentei AsFloat sem sucesso. Duas ou tres notas ficam certas e outra gera com problema e o sefaz devolve.
De que forma devo usar o RoundABNT para que o valor 99.8084 fique sendo sempre 99.8084? ele está no banco de dados dessa forma.
Edited by Ademir P. Voigt
Posted
14 horas atrás, Ademir P. Voigt disse:
Obs.: Tentei AsFloat sem sucesso. Duas ou tres notas ficam certas e outra gera com problema e o sefaz devolve.
De que forma devo usar o RoundABNT para que o valor 99.8084 fique sendo sempre 99.8084? ele está no banco de dados dessa forma.

Provavelmente sua consulta está retornando os valores incorretos, ACBr e o Delphi, mantêm o valor informado.

image.png.dd7f0553795f614ff3a68aab55e33292.png

_____________

Prates, Agnaldo

Posted

Bom dia!

Obrigado pelo retorno Agnaldo!

A Consulta traz sempre certo. Debuguei e Coloquei um showmessage na tela e nunca retornou a consulta com alterações, isso só é visto no XML.

Vc poderia, por gentileza, me ceder esse projeto de calculos?

Posted
46 minutos atrás, Agnaldo Prates disse:

Provavelmente sua consulta está retornando os valores incorretos, ACBr e o Delphi, mantêm o valor informado.

image.png.dd7f0553795f614ff3a68aab55e33292.png

Realmente é a consulta

image.png.595fbd13b4857ee7b11306283cd85d03.png

Alguma ideia de como resolver?

Posted
14 minutos atrás, Ademir P. Voigt disse:

Agora a consulta traz sempre correto, mas depois da passagem do pro ACBR o campo do ACBr adicinar um valor na 4ª casa decimal

image.png.0710409c86716269c3bbf5b58bd5f1a3.png

Tente desta forma:

 Prod.comb.pGLP := RoundABNT(MyQrItensNFepGLP_anp.AsCurrency,4);
 Prod.comb.pGNn := RoundABNT(MyQrItensNFepGNn_anp.AsCurrency,4);
 Prod.comb.pGNi := RoundABNT(MyQrItensNFepGNi_anp.AsCurrency,4);

_____________

Prates, Agnaldo

  • Solution
Posted
4 horas atrás, Agnaldo Prates disse:

Tente desta forma:

 Prod.comb.pGLP := RoundABNT(MyQrItensNFepGLP_anp.AsCurrency,4);
 Prod.comb.pGNn := RoundABNT(MyQrItensNFepGNn_anp.AsCurrency,4);
 Prod.comb.pGNi := RoundABNT(MyQrItensNFepGNi_anp.AsCurrency,4);

Gato pela ajuda. Na verdade com alguns ajustes inetrnos no fonte conseguimos contornar. Mas não estou arredondando, devia ser coisa do delphi.

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...