Ir para conteúdo
  • Cadastre-se

dev botao

Correção na função de ValidarRegrasdeNegocios.


Ver Solução Respondido por BigWings,
  • Este tópico foi criado há 348 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Na Revision 30911, foi alterado o conteudo da função "ValidarRegrasdeNegocios" conforme a imagem:

image.thumb.png.3c9753d7c093b86abb8d06f443c27ba2.png

 

Isso está ocasionado erro ao emitir NFe com o ICMSDesonerado destacado.
Segundo as regras de validação da NFe deste LINK quando houver ICMS desonerado destacado, mesmo que o valor deste não tenha sido subtraido do valor da total da Nota, existe uma exceção:

"Exceção 3 (NT 2013/005 v 1.22): Esta regra de validação não deverá causar rejeição caso não tenha sido subtraído o valor do ICMS Desonerado (vICMSDeson) do valor total da NF-e. ) (NT 2016.002)"
image.thumb.png.42c41d1a68d2bd89a3954479fd709b7f.png

Portanto na alteração feita e disponibilizada ficou incorreta a regra de validação para a rejeição:
"610-Rejeição: Total da NF difere do somatório dos Valores compõe o valor Total da NF."

Se for útil, segue a unit corrigida:

ACBrNFeNotasFiscais.pas


Agradeço desde já a atenção que será empenhada nesta solicitação.
 

  • Obrigado 1
Postado (editado)

Boa noite! Após atualização do ACBr estou enfrentando o mesmo problema. Algum retorno se vai ser alterado algo na unit ou devemos ajustar o fonte? Pergunto para saber se após uma futura "correção" eu talvez não tenha que ajustar meu fonte novamente.

Obrigado desde já.

Editado por Paulo Xavier
erro de português.
Postado

Bom dia Italo, tudo joia?

Acredito que no post da solicitação citada, foi implementado para que o valor da nota deduza o valor do IcmsDesonerado.
No entanto conforme as regras de validação do portal da Sefaz, esta prática é opcional, sendo assim, pode ou não ser descontado do valor total da nota.

A variavel fsvnf é iniciada assim:

    if FaturamentoDireto then
      fsvNF := (fsvProd+fsvFrete+fsvSeg+fsvOutro+fsvII+fsvIPI+fsvServ+fsvPISST+fsvCOFINSST)-(fsvDesc+fsvICMSDeson)
    else
      fsvNF := (fsvProd+fsvST+fsvFrete+fsvSeg+fsvOutro+fsvII+fsvIPI+fsvServ+fsvFCPST+fsvIPIDevol+fsvPISST+fsvCOFINSST)-(fsvDesc+fsvICMSDeson);
 

Portanto já é descontado dela o valor do desonerado. Por isso que no comparativo em {vnf = (fsvnf + fsvICMSDeson)} é necessário somar o fsvICMSDeson, quando não é descontado o valor do desonerado do valor total da nota.
Com a alteração feita na Revision 30911, se torna obrigatório descontar o valor do IcmsDesonerado do valor total da nota.

Acredito então, que seria necessário uma opção para decidir se quer ou não que o IcmsDesonerado seja contabilizado no valor total da nota.
Assim atenderia as duas situações, já que a própria Sefaz permite trabalhar das duas formas.

  • Moderadores
  • Solution
Postado

Subi uma correção para esse caso, rev. 31539, sem necessidade de alteração nas propriedades do componente.

A versão atual vai considerar como válidos tanto o valor total da nota abatendo ou não o ICMS desonerado.

Um adendo, a NT 2023.004 que foi publicada hoje, incluiu uma tag no XML da nota pra indicar se o ICMS desonerado está sendo abatido no total da nota:

image.png

Assim que ela estiver em vigor o método vai precisar ser ajustado.

  • Curtir 1
Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado (editado)

Boa tarde.

Os testes foram realizados para ambas situações apontadas, e tudo funcionou conforme o esperado.
A regra de validação está funcionando corretamente.

Muito obrigado @BigWings e à todos os demais envolvidos.
 

Editado por Halisson Kosvoski
  • Curtir 1
  • Este tópico foi criado há 348 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.