Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Serializacao: Fixando 2 casas decimais para vNF e vProd #354

Conversation

Brunorio
Copy link
Contributor

Este pull request visa fixar com duas casas decimais os valores vNF e vProd na serialização do XML. Em alguns casos ao somar valores com duas casas decimais o python acaba gerando imprecisão de ponto flutuante. Ex: 2.56 + 3.58 = 6.140000256. Segue um exemplo do XML gerado com a imprecisão.

<total>
      <ICMSTot>
        ...
        <vProd>2323.960000000000036379788071</vProd>
        <vNF>2323.960000000000036379788071</vNF>
        ...
      </ICMSTot>
</total>

Ao enviar o XML com essa imprecisão para a Sefaz a mesma retorna o erro de: Falha no Schema XML da NFe

Copy link
Collaborator

@felps-dev felps-dev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Muito bom!
Pode adicionar um teste unitário validando isso por favor?
Acho que só de mudar os valores que verificamos depois contra um XML gerado já é o suficiente.

@Brunorio Brunorio force-pushed the serializacao-fixando-duas-casas-decimais-vnf-e-vprod branch from ce36a1c to 2e721d0 Compare September 2, 2024 20:00
self.assertEqual(vProd, valorEsperado)
self.assertEqual(vNF, valorEsperado)

def test_notafiscal_produto_com_vnf_e_vprod_com_duas_casas_decimais(self):
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@felps-dev este teste está de acordo com o padrão do projeto?

@juniortada juniortada merged commit 7a239bc into TadaSoftware:main Sep 17, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants