Ir para conteúdo
  • Cadastre-se

dev botao

CSOSN 900 com preenchimento das tags de diferimento


Ver Solução Respondido por Dércio Luis Zanatta,

Recommended Posts

  • Membros Pro
Postado

Bom dia... Estamos com uma situação aqui e não sei o que pode ser... Estamos fazendo NFe com CSOSN=900 e destacando as tags de Icms parcialmente diferido, porém não joga essas tags para o xml. As tags são: ICMS.vICMSOp,ICMS.pDif e ICMS.vICMSDif. Quem orientou a fazer dessa forma foi o contador do cliente.  Existe alguma regra no componente que gera essas tags somente para regime Geral ou para algum CST CSOSN específico ?

 

 

  • Moderadores
Postado

teriamos essa regra

                 csosn900:
                   begin //10h
                     if (NFe.Det[i].Imposto.ICMS.vBC > 0) or (NFe.Det[i].Imposto.ICMS.vICMS > 0) then
                     begin
                       Gerador.wCampo(tcStr, 'N13', 'modBC   ', 01, 01, 1, modBCToStr(NFe.Det[i].Imposto.ICMS.modBC), DSC_MODBC);
                       Gerador.wCampo(tcDe2, 'N15', 'vBC     ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBC, DSC_VBC);
                       Gerador.wCampo(FormatoValor4ou2, 'N14', 'pRedBC  ', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pRedBC, DSC_PREDBC);
                       Gerador.wCampo(FormatoValor4ou2, 'N16', 'pICMS   ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pICMS, DSC_PICMS);
                       Gerador.wCampo(tcDe2, 'N17', 'vICMS   ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vICMS, DSC_VICMS);
                     end;
                     if (NFe.Det[i].Imposto.ICMS.vBCST > 0) or (NFe.Det[i].Imposto.ICMS.vICMSST > 0) then
                     begin
                       Gerador.wCampo(tcStr, 'N18', 'modBCST ', 01, 01, 1, modBCSTToStr(NFe.Det[i].Imposto.ICMS.modBCST), DSC_MODBCST);
                       Gerador.wCampo(FormatoValor4ou2, 'N19', 'pMVAST  ', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pMVAST, DSC_PMVAST);
                       Gerador.wCampo(FormatoValor4ou2, 'N20', 'pRedBCST', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pRedBCST, DSC_PREDBCST);
                       Gerador.wCampo(tcDe2, 'N21', 'vBCST   ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBCST, DSC_VBCST);
                       Gerador.wCampo(FormatoValor4ou2, 'N22', 'pICMSST ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pICMSST, DSC_PICMSST);
                       Gerador.wCampo(tcDe2, 'N23', 'vICMSST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vICMSST, DSC_VICMSST);
                     end;
                     if (NFe.infNFe.Versao >= 4) then
                     begin
                       if (NFe.Det[i].Imposto.ICMS.vBCFCPST > 0) or (NFe.Det[i].Imposto.ICMS.pFCPST > 0) or (NFe.Det[i].Imposto.ICMS.vFCPST > 0) then
                       begin
                         Gerador.wCampo(tcDe2, 'N23a', 'vBCFCPST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBCFCPST, DSC_VBCFCPST);
                         Gerador.wCampo(FormatoValor4ou2, 'N23b', 'pFCPST', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pFCPST, DSC_PFCPST);
                         Gerador.wCampo(tcDe2, 'N23d', 'vFCPST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vFCPST, DSC_VFCPST);
                       end;
                     end;
                     if NFe.Det[i].Imposto.ICMS.pCredSN > 0 then
                     begin
                       Gerador.wCampo(FormatoValor4ou2, 'N29', 'pCredSN    ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pCredSN, DSC_PCREDSN);
                       Gerador.wCampo(tcDe2, 'N30', 'vCredICMSSN', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vCredICMSSN, DSC_VCREDICMSSN);
                     end;
                   end;

 

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Membros Pro
Postado
11 horas atrás, Juliomar Marchetti disse:

teriamos essa regra

                 csosn900:
                   begin //10h
                     if (NFe.Det[i].Imposto.ICMS.vBC > 0) or (NFe.Det[i].Imposto.ICMS.vICMS > 0) then
                     begin
                       Gerador.wCampo(tcStr, 'N13', 'modBC   ', 01, 01, 1, modBCToStr(NFe.Det[i].Imposto.ICMS.modBC), DSC_MODBC);
                       Gerador.wCampo(tcDe2, 'N15', 'vBC     ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBC, DSC_VBC);
                       Gerador.wCampo(FormatoValor4ou2, 'N14', 'pRedBC  ', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pRedBC, DSC_PREDBC);
                       Gerador.wCampo(FormatoValor4ou2, 'N16', 'pICMS   ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pICMS, DSC_PICMS);
                       Gerador.wCampo(tcDe2, 'N17', 'vICMS   ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vICMS, DSC_VICMS);
                     end;
                     if (NFe.Det[i].Imposto.ICMS.vBCST > 0) or (NFe.Det[i].Imposto.ICMS.vICMSST > 0) then
                     begin
                       Gerador.wCampo(tcStr, 'N18', 'modBCST ', 01, 01, 1, modBCSTToStr(NFe.Det[i].Imposto.ICMS.modBCST), DSC_MODBCST);
                       Gerador.wCampo(FormatoValor4ou2, 'N19', 'pMVAST  ', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pMVAST, DSC_PMVAST);
                       Gerador.wCampo(FormatoValor4ou2, 'N20', 'pRedBCST', 01, IfThen(FUsar_tcDe4,07,05), 0, NFe.Det[i].Imposto.ICMS.pRedBCST, DSC_PREDBCST);
                       Gerador.wCampo(tcDe2, 'N21', 'vBCST   ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBCST, DSC_VBCST);
                       Gerador.wCampo(FormatoValor4ou2, 'N22', 'pICMSST ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pICMSST, DSC_PICMSST);
                       Gerador.wCampo(tcDe2, 'N23', 'vICMSST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vICMSST, DSC_VICMSST);
                     end;
                     if (NFe.infNFe.Versao >= 4) then
                     begin
                       if (NFe.Det[i].Imposto.ICMS.vBCFCPST > 0) or (NFe.Det[i].Imposto.ICMS.pFCPST > 0) or (NFe.Det[i].Imposto.ICMS.vFCPST > 0) then
                       begin
                         Gerador.wCampo(tcDe2, 'N23a', 'vBCFCPST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vBCFCPST, DSC_VBCFCPST);
                         Gerador.wCampo(FormatoValor4ou2, 'N23b', 'pFCPST', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pFCPST, DSC_PFCPST);
                         Gerador.wCampo(tcDe2, 'N23d', 'vFCPST ', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vFCPST, DSC_VFCPST);
                       end;
                     end;
                     if NFe.Det[i].Imposto.ICMS.pCredSN > 0 then
                     begin
                       Gerador.wCampo(FormatoValor4ou2, 'N29', 'pCredSN    ', 01, IfThen(FUsar_tcDe4,07,05), 1, NFe.Det[i].Imposto.ICMS.pCredSN, DSC_PCREDSN);
                       Gerador.wCampo(tcDe2, 'N30', 'vCredICMSSN', 01, 15, 1, NFe.Det[i].Imposto.ICMS.vCredICMSSN, DSC_VCREDICMSSN);
                     end;
                   end;

 

Bom dia.

Pelo que posso ver, realmente o componente não gera as tags do icms diferido quando o CSOSN é igual a 900..  Teria a possibilidade de alterar isso para gerar ?

 

  • Moderadores
Postado

No caso o que tem acima é baseado nos manuais.

se ele puder indicar exatamente onde está isso? e trazer pranós

ou ainda tu pode mudar localmente para testar e assim tu vai ter certeza que não pode, pois pode gerar a rejeição seja no envio antes pelos schemas ou lá no sefaz mesmo depois de enviado o xml

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Consultores
Postado

Bom dia @Dércio Luis Zanatta,

Complementando o que o @Juliomar Marchetti, já lhe passou, eu sempre tomo como base os Schemas.

Abri o arquivo leiauteNFe_v4.00.xsd, procurei pela definição do elemento ICMSSN900, veja o que temos:

image.png

Como você pode ver na definição não consta as tags que você deseja gerar.

Mesmo que você forçar a geração dessas tags, o XML da nota nem sequer vai ser enviado, pois vai ocorrer erro de validação.

Caso você comente a linha que faz a validação no componente, com certeza a SEFAZ vai rejeitar o seu XML, pois ele não esta em conformidade com os schemas.

Eu acredito que o contador viajou na maionese. kkkk

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Membros Pro
  • Solution
Postado
2 minutos atrás, Italo Giurizzato Junior disse:

Bom dia @Dércio Luis Zanatta,

Complementando o que o @Juliomar Marchetti, já lhe passou, eu sempre tomo como base os Schemas.

Abri o arquivo leiauteNFe_v4.00.xsd, procurei pela definição do elemento ICMSSN900, veja o que temos:

image.png

Como você pode ver na definição não consta as tags que você deseja gerar.

Mesmo que você forçar a geração dessas tags, o XML da nota nem sequer vai ser enviado, pois vai ocorrer erro de validação.

Caso você comente a linha que faz a validação no componente, com certeza a SEFAZ vai rejeitar o seu XML, pois ele não esta em conformidade com os schemas.

Eu acredito que o contador viajou na maionese. kkkk

Bom dia...

Realente o cara viajou longe.. Tive que mostrar o manual da NFe e uma resposta do Fale conosco da SEFAZ-RS para ele aceitar que essas tags não podem ser geradas no CST900 , somente no 51.. 

Obrigado..

 

 

  • Confuso 1
  • Consultores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

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.