Ir para conteúdo
  • Cadastre-se

dev botao

528-Rejeição: Valor do ICMS difere do produto BC e Alíquota mesmo sendo simples nacional utilizando CSOSN 900


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

Recommended Posts

Olá....

Estou emitindo nota CRT = 1 - "crtSimplesNacional" com os dados do imposto ICMS:

-<ICMSSN900>

<orig>0</orig>

<CSOSN>900</CSOSN>

<modBC>3</modBC>

<vBC>490.00</vBC>

<pICMS>18.0000</pICMS>

<vICMS>48.90</vICMS>

sei q o calculo 490 * 18% não é 48,90.... porém o fornecedor pediu para fazer uma nota de remessa destacando o ICMS dessa forma e as redução etc no campo obs.

até aqui tudo certo, porém no arquivo ACBrNFeNotasFiscais.pas, lá na linha 986 tem 

        GravaLog('Validar: 528-'+IntToStr(I)+'-ICMS BC e Aliq');
        if (Imposto.ICMS.CST in [cst00,cst10,cst20,cst70]) and
           (NFe.Ide.finNFe = fnNormal) and
       (ComparaValor(Imposto.ICMS.vICMS, Imposto.ICMS.vBC * (Imposto.ICMS.pICMS/100), 0.01) <> 0) then
          AdicionaErro('528-Rejeição: Valor do ICMS difere do produto BC e Alíquota');

 

ele sempre entra nessa validação, independente se é Simples ou Regime normal.

 

para não entrar nessa validação quando sendo simples nacional, adicionei "and (NFe.Emit.CRT <> crtSimplesNacional)"

        if (Imposto.ICMS.CST in [cst00,cst10,cst20,cst70]) and
           (NFe.Ide.finNFe = fnNormal) and (NFe.Emit.CRT <> crtSimplesNacional) and
       (ComparaValor(Imposto.ICMS.vICMS, Imposto.ICMS.vBC * (Imposto.ICMS.pICMS/100), 0.01) <> 0) then
          AdicionaErro('528-Rejeição: Valor do ICMS difere do produto BC e Alíquota');

 

gostaria de saber se fiz certo ou deixei de preencher alguma coisa? 

Muito Obrigado

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores

 

4 minutos atrás, glacsius disse:

gostaria de saber se fiz certo ou deixei de preencher alguma coisa? 

Fez errado, veja a regra N17-20. De qualquer forma a função ValidarRegrasdeNegocios é interna do componente e a regra N17-20 tem implementação facultativa, ou seja, se vc consegue autorizar a nota com a alteração que vc sugeriu acima, basta não chamar a função.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.xpos.com.br
Link para o comentário
Compartilhar em outros sites

  • Moderadores
29 minutos atrás, glacsius disse:

ele sempre entra nessa validação, independente se é Simples ou Regime normal.

A validação verifica o CST que está caindo num desses casos, talvez a melhor forma seria você informar o CST como cstVazio sempre que o regime for Simples Nacional, ou cst90 que é o correlacionado ao CSOSN 900.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

A função ValidarRegrasdeNegocios eu faço questão de sempre chamar ehheheheh
Ela é importante e muito funcional! Pega muitas coisinhas antes de sair incomodando o governo :)

Essa regra é apenas para regime normal.... por isso pensei em fazer dessa forma, pois nem deveria entrar nessa validação.

Bem, forcei o ICMS.CST = cst90 em todos os produtos sempre que a empresa for do simples nacional, por garantia. Dai passou de boa.

Vou optar por essa sugestão para manter os fontes do ACBr sempre originais ao SVN.

Muito Obrigado André e BigWings e ótima semana

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2752 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...