Ir para conteúdo
  • Cadastre-se

dev botao

xml de nfe versao 3.10 com grupo de repasse de Substituicao tributaria


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

Recommended Posts

Tentativa de transmitir um xml 3.10 com repasse de ST retida anteriormente, dentro do grupo:

Linha 1534, da unit pcnNFeW.pas, se eu comento as linhas do valor de vBCSTDest  e vICMSSTDest a nota transmite. Ai fiquei na duvida se isso era para ser apenas da versão 3.10 

     // ICMSST - Repasse
                     Gerador.wCampo(tcDe2, 'N26', 'vBCSTRet   ', 01, 15, 1, nfe.Det.Imposto.ICMS.vBCSTRet, DSC_VBCICMSST );
                     Gerador.wCampo(tcDe2, 'N27', 'vICMSSTRet ', 01, 15, 1, nfe.Det.Imposto.ICMS.vICMSSTRet, DSC_VICMSSTRET);
                     Gerador.wCampo(tcDe2, 'N31', 'vBCSTDest  ', 01, 15, 1, nfe.Det.Imposto.ICMS.vBCSTDest, DSC_VBCICMSSTDEST);
                     Gerador.wCampo(tcDe2, 'N32', 'vICMSSTDest', 01, 15, 1, nfe.Det.Imposto.ICMS.vICMSSTDest, DSC_VBCICMSSTDEST);

ENVIAR_EXEMPLO.xml

 

Erro que ocorre:

 

Element '{http://www.portalfiscal.inf.br/nfe}vBCSTDest' is unexpected according to content model of parent element '{http://www.portalfiscal.inf.br/nfe}ICMS60'.
 

Mesmo a nf sendo interestadual ocorre o erro.

image.thumb.png.653582052e8a60d9d910c1e20ba02d6e.png

Link para o comentário
Compartilhar em outros sites

  • Moderadores
5 horas atrás, acgubamg disse:

Tentativa de transmitir um xml 3.10 com repasse de ST retida anteriormente, dentro do grupo:

Linha 1534, da unit pcnNFeW.pas, se eu comento as linhas do valor de vBCSTDest  e vICMSSTDest a nota transmite. Ai fiquei na duvida se isso era para ser apenas da versão 3.10 

Estão sendo geradas as tags de repasse dentro do grupo ICMS60, o que não é valido de acordo com o layout.

Informe o tipo específico do CST para repasse para que seja gerado no grupo correto.

with NotaF.Det.Add do
  Imposto.ICMS.CST := cstRep60;

 

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

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

Prezados, estou tentando ler um XML de fornecedor e está ocorrendo o mesmo erro, tanto no meu programa como no DemoACBr.

Como resolvemos isto, pois, o arquivo está autorizado normalmente.

 

Erro Completo: 
Exception: Falha na validação dos dados da nota: 84758

Erro: Falha na validação dos dados da nota: 84758

Erro Completo: Falha na validação dos dados da nota: 84758

Element '{http://www.portalfiscal.inf.br/nfe}vBCSTDest' is unexpected according to content model of parent element '{http://www.portalfiscal.inf.br/nfe}ICMS60'.

 

Obrigado.
 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
7 minutos atrás, Geraldo Rodrigues disse:

Prezados, estou tentando ler um XML de fornecedor e está ocorrendo o mesmo erro, tanto no meu programa como no DemoACBr.

Como resolvemos isto, pois, o arquivo está autorizado normalmente.

Tentou o que respondi acima?

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

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
7 minutos atrás, Geraldo Rodrigues disse:

Ao carregar o XML para o componente há um parâmetro que indica se o arquivo deve ser gerado novamente:

     ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName, True);

Caso esteja dessa forma o ACBr tentará gerar o XML de acordo com os dados carregados antes da validação, o ideal é setar esse parâmetro como False:

     ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName, False);

Assim não deve ter problemas.

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

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

2 horas atrás, Geraldo Rodrigues disse:

Olá Ricardo, estou validando tudo, pois, não sei como fazer somente a validação da assinatura. Pode descrever por favor?

Obrigado.

Abraço.

 

Isso eh uma pendencia q tenho q fazer no meu sistema... :-)

Sei q da pra fazer mas ainda não peguei pra fazer...

Se não  me engano depois de fazer o loadfromfile vc chama o metodo validarassinatura VerificarAssinatura ...

Att

Ricardo

Link para o comentário
Compartilhar em outros sites

2 horas atrás, Geraldo Rodrigues disse:

Olá Ricardo, estou validando tudo, pois, não sei como fazer somente a validação da assinatura. Pode descrever por favor?

Obrigado.

Abraço.

 

Boa tarde,

só por curiosidade... fiz um pequeno "bacalhau" pra testar o método VerificarAssinatura do componente ACBrNFe, e fui testar justamente  com uma NFe que recebi por e-mail do site americanas.com.br (B2W...) e olha só o que retornou:

Falha na validação da assinatura da nota: 99999
DigestValue não confere. Conteúdo de "infNFe" foi alterado

Consultando a chave de acesso no portal a nota está correta, autorizada e tal...

mas o XML que recebi por e-mail, ao colar no validador da SEFAZ RS também retorna "Assinatura inválida".. :shock:

Já com outros arquivos XML válidos o método VerificarAssinatura validou corretamente.

OBS: defini a propriedade SSLXmlSignLib com xsLibXml2.

Att

Ricardo

Link para o comentário
Compartilhar em outros sites

  • Moderadores
1 hora atrás, RicardoVoigt disse:

só por curiosidade... fiz um pequeno "bacalhau" pra testar o método VerificarAssinatura do componente ACBrNFe, e fui testar justamente  com uma NFe que recebi por e-mail do site americanas.com.br (B2W...) e olha só o que retornou:

Falha na validação da assinatura da nota: 99999
DigestValue não confere. Conteúdo de "infNFe" foi alterado

Consultando a chave de acesso no portal a nota está correta, autorizada e tal...

mas o XML que recebi por e-mail, ao colar no validador da SEFAZ RS também retorna "Assinatura inválida".. :shock:

Peguei uma nota dessa loja que tinha aqui também e tive o mesmo erro.

Mas consegui validar alterando o XML e removendo as quebras de linha e indentações do arquivo.

Parece que, para "facilitar" a leitura eles indentam o arquivo após autorizado e acabam enviando um XML inválido para os consumidores.

 

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

Projeto ACBr

 

 

Link para o comentário
Compartilhar em outros sites

Em 01/03/2018 at 10:41, Geraldo Rodrigues disse:

Prezados, estou tentando ler um XML de fornecedor e está ocorrendo o mesmo erro, tanto no meu programa como no DemoACBr.

Como resolvemos isto, pois, o arquivo está autorizado normalmente.

 

Erro Completo: 
Exception: Falha na validação dos dados da nota: 84758

Erro: Falha na validação dos dados da nota: 84758

Erro Completo: Falha na validação dos dados da nota: 84758

Element '{http://www.portalfiscal.inf.br/nfe}vBCSTDest' is unexpected according to content model of parent element '{http://www.portalfiscal.inf.br/nfe}ICMS60'.

 

Obrigado.
 

Boa tarde

Estou tendo o mesmo problema apresentado acima.
 

Estou pegando o XML recebido do fornecedor e importando-o para validação:
ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName, True);

Ao validar ocorre o problema.

Pela análise nos fontes verifiquei que o fonte "pncNFeR" altera o CST para cstRep60 caso haja vBCSTRet, vICMSSTRet, vBCSTDest ou vICMSSTDest maior que zero. Com isso o "pncNFeW" gera as tags vBCSTDest ou vICMSSTDest para o CST60.
Ocorre que na versão 3.1 não há repasse no caso do CST60.
Acredito que na condição do fonte "pncNFeR" deva haver uma verificação com relação a versão, sendo aplicado apenas caso seja versão 4.0

* Quem sabe já esteja resolvido, mas não estou conseguindo atualizar/consultar atualizações no SVN no momento.

Atenciosamente
Giovane

Editado por Giovane Preis
Link para o comentário
Compartilhar em outros sites

2 horas atrás, Giovane Preis disse:

Boa tarde

Estou tendo o mesmo problema apresentado acima.
 

Estou pegando o XML recebido do fornecedor e importando-o para validação:
ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName, True);

Ao validar ocorre o problema.

Pela análise nos fontes verifiquei que o fonte "pncNFeR" altera o CST para cstRep60 caso haja vBCSTRet, vICMSSTRet, vBCSTDest ou vICMSSTDest maior que zero. Com isso o "pncNFeW" gera as tags vBCSTDest ou vICMSSTDest para o CST60.
Ocorre que na versão 3.1 não há repasse no caso do CST60.
Acredito que na condição do fonte "pncNFeR" deva haver uma verificação com relação a versão, sendo aplicado apenas caso seja versão 4.0

* Quem sabe já esteja resolvido, mas não estou conseguindo atualizar/consultar atualizações no SVN no momento.

Atenciosamente
Giovane

Boa noite

Pelo q testei nos ultimos dias, isso ja esta correto, eu acho, definindo cstRep60 gera o grupo ICMSST, mesmo com todos os campos citados igual a zero. Isso na versao 4.

Att

Ricardo

Link para o comentário
Compartilhar em outros sites

Em 01/03/2018 at 11:45, RicardoVoigt disse:

Bom dia,

fiquei curioso, vc lê o XML do fornecedor para dar entrada no estoque, algo assim?

Você está validando os dados da nota? Não seria necessário validar apenas a assinatura do XML?

Att

Ricardo

 Isso eu penso ser um problema do componente, ao dar um loadfromfile no xml do nfe, o sistema pensa que está correto mudar o grupo icmsst para o CST=60 ou CSTRep60 na verdade não é correto, penso eu assim.

Quando eu gero o arquivo, eu informo CST=60, nisso o componente muda para CSTRep60 dependendo dos valores que são colocados. 

Depois o componente tenta fazer o inverso, é ai que está o problema.

O simples teste em uma variável está sendo feita para que ele volte a ser CST=60. Em pcnNFeR.pas quando é feito essa funcao: VerificaParSt

Já no pcnNFeW.pas, é quando é feito isso BuscaTag

Na nota 4.0, as vezes funciona direito, eu para ficar livre disso, parei de gerar o grupo de icms st anterior... 

 

Por hora, meu parametro na função:     FAcbrNFe.NotasFiscais.LoadFromStream(ST); já é false, pois o default é false.

 

Editado por Antonio Gomes
faltou coisa para informar
Link para o comentário
Compartilhar em outros sites

Bom dia

Item 1 - O problema em questão
Como já citado anteriormente as tags vBCSTDest e vICMSSTDest estão sendo geradas para NF-e 3.1 quando realizo o Load de um XML em que possui vBCSTRet ou vICMSSTRet maior que zero.
Estas tags não devem ser geradas na 3.1 sendo que foram incluídas para o ICMSST (CST 60 com ST) apenas na 4.0.
No fonte pncNFeW já temos uma condição onde aplica o cstRep60 apenas para versão maior ou igual a 4.0, mas no fonte pncNFeR essa condição não é aplicada.
Em anexo segue fonte com alteração sugerida.

Item 2 - Porque LoadFromString(XML, True)?
Sempre usamos True porque recebemos XML de outros sistemas em que o XML não é gerado pelo componente ACBr podendo estar em uma outra estrutura (válida de acordo com a Sefaz) que não é lida corretamente pelo método ACBrNFe.NotasFiscais.Validar() quando passado como False no LoadFromString.

Sigo a disposição caso necessário.

Atenciosamente
Giovane

pcnNFeR.pas

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...

Bom dia,

Eu continuo tendo problemas com essa rotina, visto que as alterações feitas não suprem minha necessidade quando na leitura de notas de combustível,  eu fiz a alteração que ao meu ver resolve todos os problemas referente a leitura da tag ICMST, isso no dia 07/02 e ainda esta parada. 

Se o @BigWings ou  @RicardoVoigt puder dar uma olhadinha eu agradeceria.

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Roberto,

Foi aplicada uma alteração referente a leitura do XML no que diz respeito ao ICMS60.

Você esta com os seus fontes atualizados?

Faça uma cópia da sua alteração, apague a unit, e baixe novamente, reinstale os componentes e faça um novo teste.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
Em 23/03/2018 at 16:07, Italo Jurisato Junior disse:

Boa tarde Roberto,

Foi aplicada uma alteração referente a leitura do XML no que diz respeito ao ICMS60.

Você esta com os seus fontes atualizados?

Faça uma cópia da sua alteração, apague a unit, e baixe novamente, reinstale os componentes e faça um novo teste.

@Italo Jurisato Junior

Aproveitando o assunto, hoje, em testes, foi preciso modificar a pcnNFeR, para que não mude o CST60 para ICMSST, por não ter repasse.

A solução está na linha 680, foi adicionado o teste:       if (Leitor.rExtrai(4, 'ICMSST') <> '') or (Leitor.rExtrai(4, 'ICMSPart') <> '') then

Na tentativa de não mudar para uma partilha que não existe. Nem repasse de ICMS.

Os campos que são testados de valores, estão agora nos 2 grupos, então, acho que testar pelo valor, está meio confuso.

 

segue anexo o arquivo alterado, com preenchimento das tags de retenção de ST e FCP de ST.

Dados do agrupamento:

    <CRT>3</CRT>

    <indIEDest>9</indIEDest>

    <prod>
                    <cProd>29259</cProd>
                    <cEAN>SEM GTIN</cEAN>
                    <xProd>ST DE SIMPLES NACIONAL</xProd>
                    <NCM>95069900</NCM>
                    <CEST>0100300</CEST>
                    <indEscala>S</indEscala>
                    <CFOP>6108</CFOP>
                    <uCom>UN</uCom>
                    <qCom>6.0000</qCom>
                    <vUnCom>6.0000000000</vUnCom>
                    <vProd>36.00</vProd>
                    <cEANTrib>SEM GTIN</cEANTrib>
                    <uTrib>UN</uTrib>
                    <qTrib>6.0000</qTrib>
                    <vUnTrib>6.0000000000</vUnTrib>
                    <indTot>1</indTot>
                    <nItemPed>0</nItemPed>
                </prod>

 

<ICMS>
                        <ICMS60>
                            <orig>0</orig>
                            <CST>60</CST>
                            <vBCSTRet>9.36</vBCSTRet>
                            <pST>18.0000</pST>
                            <vICMSSTRet>5.40</vICMSSTRet>
                            <vBCFCPSTRet>9.36</vBCFCPSTRet>
                            <pFCPSTRet>2.0000</pFCPSTRet>
                            <vFCPSTRet>1.87</vFCPSTRet>
                        </ICMS60>
                    </ICMS>

Faturamento no CFOP=6108

UF=PB

 

pcnNFeR.pas

Link para o comentário
Compartilhar em outros sites

Em 23/03/2018 at 16:07, Italo Jurisato Junior disse:

Boa tarde Roberto,

Foi aplicada uma alteração referente a leitura do XML no que diz respeito ao ICMS60.

Você esta com os seus fontes atualizados?

Faça uma cópia da sua alteração, apague a unit, e baixe novamente, reinstale os componentes e faça um novo teste.

Bom dia, Meus componentes estão sempre atualizados e não os uso instalados. 

Eu vi a sua implementação @Italo Jurisato Junior, mas como expliquei no outro post não resolve o meu problema e do @acgubamg, já tanto a minha alteração ou a do acgu resolvem os problemas de vez.

Se puder dar uma olhada no outro post eu explanei e anexei exemplos detalhados do pro que a ultima alteração não serviu.

Link para o comentário
Compartilhar em outros sites

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