Ir para conteúdo
  • Cadastre-se

dev botao

Problemas com o ACBRXMLDocument no NFe e CTe


Recommended Posts

Bom dia. Tudo bem ??
Estava fazendo testes sobre o CTe Simplificado e estava perdendo a Tag <toma> após fazer a Assinatura com certificado, pelo Load do arquivo XML para o componente, pesquisando no fórun achei a mesma dúvida de outros usuários e indicativas de correção, que seria reinstalar o ACBR com o XMLDocument marcado. Fiz esse processo e deu certo a emissão do CTe Simplificado.

Porém seguindo o uso padrão do sistema.. percebi que estava com problemas na Assinatura de NF-e onde também passo o Arquivo XML pelo Load ao componente. Com isso ele está perdendo as tags de ICMS00,ICMS60... 
Para testar, reinstalei o ACBR com XMLDocument desmarcado e regerei o XML da Nfe, e com isso também deu certo.

Então.. 
XMLDocument marcado funcionou para emissão dos CTes. Mas deu problema com as tags de ICMS para NFe

Aguardo retorno. Obrigada!

image.png image.png.58f3300f70cde2f91366eb9ac818abb7.png

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

  • Moderadores

Hum pode ser sim

tu conseguiu no caso do xmldocument debugar a NFe pois estamos em fase de mudança  iremos remover o PCN

se sim chegou a identificar o que está ocorrendo e uma possível solução

  • Curtir 2
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
 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde @Éva Cleidiane Coutinho,

Nos ajudaria se você pudesse disponibilizar o XML da NF-e que ao tentar ler com a nova unit não fez a leitura correta.

Você poderia nos enviar o XML?

  • Curtir 2
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

Link para o comentário
Compartilhar em outros sites

27 minutos atrás, Juliomar Marchetti disse:

Hum pode ser sim

tu conseguiu no caso do xmldocument debugar a NFe pois estamos em fase de mudança  iremos remover o PCN

se sim chegou a identificar o que está ocorrendo e uma possível solução

Não cheguei a debugar internamente nas funções, só percebi o retorno com as tags defasadas
ACBrNFe1.NotasFiscais.Clear;
ACBrNFe1.NotasFiscais.LoadFromFile(sArquivoXML, false);
ACBrNFe1.NotasFiscais.Assinar;

 

Enviamos o XML por esse métodos e o retorno vem correto e assinado quando o XMLDocument não está instalado.
O Erro que apresenta creio ser de Schemas, segue imagem do Erro também, junto com os XMLs. Geramos o XML manualmente, não usamos o componente para a geração, somente para autenticação.
image.png.07cc06c8b1653df8fad92b31de906946.png

43241003157446000112550010000002011875099819_AntesAssinar.xml 43241003157446000112550010000002011875099819_DepoisAssinar.xml

Editado por Éva Cleidiane Coutinho
ajuste texto
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Moderadores
3 minutos atrás, Éva Cleidiane Coutinho disse:

Enviamos o XML por esse métodos e o retorno vem correto e assinado quando o XMLDocument não está instalado.
O Erro que apresenta creio ser de Schemas, segue imagem do Erro também, junto com os XMLs. Geramos o XML manualmente, não usamos o componente para a geração, somente para autenticação.

esse é um sofrimento que não precisariam estar passando pois o componente foi feito exatamente para que possa alimentar os objetos e ter o xml gerado.

além de todo momento que sai alguma mudança ter que modificar. tu se preocupa além da regra de negocio toda a parte fiscal em que o componente já lhe dá essa puta mão na roda

  • Curtir 1
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
 

 

Link para o comentário
Compartilhar em outros sites

Certo... mas creio que isso não venha ao caso agora @Juliomar Marchetti. Imagino que os ajustes feitos para utilizar o XMLDocument tenha afetado a função do LoadFromFile. Consegue colocar na lista de afazeres/ajustes futuros? Já que para utilizar o CTe Simplificado precisa estar instalado o XMLDocument.

Editado por Éva Cleidiane Coutinho
  • Curtir 1
  • Confuso 1
Link para o comentário
Compartilhar em outros sites

  • Moderadores
50 minutos atrás, Éva Cleidiane Coutinho disse:

Certo... mas creio que isso não venha ao caso agora @Juliomar Marchetti. Imagino que os ajustes feitos para utilizar o XMLDocument tenha afetado a função do LoadFromFile. Consegue colocar na lista de afazeres/ajustes futuros? Já que para utilizar o CTe Simplificado precisa estar instalado o XMLDocument.

Tu é do PRO?

se sim lembre-se de usar o usuário PRO e postar no canal de PRO

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
 

 

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
3 minutos atrás, Juliomar Marchetti disse:

Tu é do PRO?

se sim lembre-se de usar o usuário PRO e postar no canal de PRO

Boa tarde, sim somos usuário PRO.
Apenas a minha colega postou neste fórum o ocorrido.
Acha que ainda é necessário ser postado lá no canal do Discord?
Se sim, no canal pro-nfe ou pro-cte?

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

  • Moderadores
21 minutos atrás, sandroreck disse:

Boa tarde, sim somos usuário PRO.
Apenas a minha colega postou neste fórum o ocorrido.
Acha que ainda é necessário ser postado lá no canal do Discord?
Se sim, no canal pro-nfe ou pro-cte?

sempre que postar usar o usuário PRO para atender o SLA

obrigado

no caso vou mover ele . pois a questão é da NFe e NFCe . como dito está sendo feito a mudança para o xmldocument

e novamente sempre que postar para que o SLA seja válido usar o usuário PRO e nos canais PRO.

movendo

  • Obrigado 1
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
 

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Se não me engano, no método "Load" tem um parâmetro Boleano, que é para saber se o ACBr deve "regerar" o XML... Deixa ele False

@Italo Giurizzato Junior, acho que precisamos comparar o resultado final dos "Writers" da PCN x XMLDocument...

  • Obrigado 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia @Éva Cleidiane Coutinho.

Por favor, o arquivo intitulado _AntesdeAssinar que foi disponibilizado, é o conteúdo que foi carregado no componente pelo LoadFromFile?

 Eu fiz alguns testes em meu ambiente com os arquivos que disponibilizou.

Para tal, eu fiz o download do arquivo chamado _AntesdeAssinar, abri o mesmo com o notepad++, alterei o CNPJ do emitente para o do certificado digital que estou utilizando e usei um plugin para "lineariazar" o arquivo, ou seja, ao invés de manter ele indentado, deixar todo o conteúdo em uma única linha.

Depois disso, adicionei um botão com seguinte código no programa exemplo:

OpenDialog1.Title := 'Escolha o arquivo XML';
OpenDialog1.Filter := 'Arquivos XML (*.XML)|*.XML|Arquivos xml (*.xml)|*.xml';
if OpenDialog1.Execute then
begin
  ACBrNFe1.NotasFiscais.Clear;
  ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName);
  ACBrNFe1.NotasFiscais.Assinar;
  memoLog.Text := ACBrNFe1.NotasFiscais[0].XMLAssinado;
end;

Nestes testes, eu não tive problemas, usando tanto pcn quanto ACBrXmlDocument.

Em ambos os casos, o arquivo foi gerado com o grupo da assinatura e com as informações do ICMS.

Utilizei então novamente um plugin do notepad++ para identar o arquivo XML.

Fazendo um novo teste, agora com este arquivo indentado, obtive o mesmo resultado que você.

  • Obrigado 1
Consultor SAC ACBr

Diego Folieni
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

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


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
32 minutos atrás, Diego Foliene disse:

Bom dia @Éva Cleidiane Coutinho.

Por favor, o arquivo intitulado _AntesdeAssinar que foi disponibilizado, é o conteúdo que foi carregado no componente pelo LoadFromFile?

 Eu fiz alguns testes em meu ambiente com os arquivos que disponibilizou.

Para tal, eu fiz o download do arquivo chamado _AntesdeAssinar, abri o mesmo com o notepad++, alterei o CNPJ do emitente para o do certificado digital que estou utilizando e usei um plugin para "lineariazar" o arquivo, ou seja, ao invés de manter ele indentado, deixar todo o conteúdo em uma única linha.

Depois disso, adicionei um botão com seguinte código no programa exemplo:

OpenDialog1.Title := 'Escolha o arquivo XML';
OpenDialog1.Filter := 'Arquivos XML (*.XML)|*.XML|Arquivos xml (*.xml)|*.xml';
if OpenDialog1.Execute then
begin
  ACBrNFe1.NotasFiscais.Clear;
  ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName);
  ACBrNFe1.NotasFiscais.Assinar;
  memoLog.Text := ACBrNFe1.NotasFiscais[0].XMLAssinado;
end;

Nestes testes, eu não tive problemas, usando tanto pcn quanto ACBrXmlDocument.

Em ambos os casos, o arquivo foi gerado com o grupo da assinatura e com as informações do ICMS.

Utilizei então novamente um plugin do notepad++ para identar o arquivo XML.

Fazendo um novo teste, agora com este arquivo indentado, obtive o mesmo resultado que você.

Bom dia.
Obrigado pelos retornos.

Já usamos o parâmetro False no Loadfromfile para não regerar xml.

Usamos a classe TXMLdocument do Delphi para criar o xml e salvamos em disco antes assinar.
Percebemos que ao instalar os componentes ACBR com a opção 'ACBrXmlDocument' ele salva todo 'formatado' conforme comentou.
Já reinstalando os componentes ACBR, sem marcar a opção 'ACBrXmlDocument', volta ao normal, salvando de forma 'não formatado'...
Parece que sobrescreve a classe do Delphi.

 

 

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

  • Consultores

Bom dia @sandroreck,

Fiz algumas alterações na unit nova que usa o ACBrXmlDocument responsável pela leitura do XML da NF-e/NFC-e.

Por favor atualize todos os fontes de todas as pastas, reinstale o ACBr com a opção de usar o ACBrXmlDocument marcada, recompile a aplicação e faça novos testes.

Fiz alterações na leitura do ICMS, PIS e COFINS.

Caso detecte outras tags que não estão sendo lidas corretamente, por favor nos comunique.

  • Curtir 3
  • Obrigado 1
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

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
22 horas atrás, Italo Giurizzato Junior disse:

Bom dia @sandroreck,

Fiz algumas alterações na unit nova que usa o ACBrXmlDocument responsável pela leitura do XML da NF-e/NFC-e.

Por favor atualize todos os fontes de todas as pastas, reinstale o ACBr com a opção de usar o ACBrXmlDocument marcada, recompile a aplicação e faça novos testes.

Fiz alterações na leitura do ICMS, PIS e COFINS.

Caso detecte outras tags que não estão sendo lidas corretamente, por favor nos comunique.

Bom dia Italo.

Conseguimos gravar e assinar o xml da NF-e.
Porém ao tentar fazer o processo no lote, ocorreu um erro parecido usando o LoadFromFile do componente: "Premature end of data in tag enviNFe line 1".
O mesmo erro ocorreu ao testar um CT-e.

Seguem xml's gerados com e sem a 'ACBrXmlDocument'.000000000100748-env-lot_SemXMLDOCUMENT.xml000000000100748-env-lot_ComXMLDOCUMENT.xml

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

  • Consultores

Bom dia @sandroreck,

Achei estranho a presença da declaração de encoding no meio do XML.

image.png

Essa linha não era para constar.

Acabei de fazer um teste usando o ACBrXmlDocument e o XML ficou da forma correta.

image.png

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

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
Em 18/10/2024 at 11:08, Italo Giurizzato Junior disse:

Bom dia @sandroreck,

Achei estranho a presença da declaração de encoding no meio do XML.

image.png

Essa linha não era para constar.

Acabei de fazer um teste usando o ACBrXmlDocument e o XML ficou da forma correta.

image.png

Bom dia.

Retornando, reinstalamos todos componentes, inclusive removendo todas pastas e baixando novamente do svn.
Cuidamos para não ter a segunda linha com <xml version...> mas prossegue o mesmo erro no LoadFromFile do componente: "Premature end of data in tag enviNFe line 1"...
Mesma coisa para Cte.

 

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

  • Consultores

@sandroreck,

O problema é que esses XMLs não são os XMLs da notas e sim de envio das notas.

Para você poder carregar o XML através do LoadFromFile ou LoadFromString ou LoadFromStream a primeira tag tem que ser nfeProc ou procNFe ou NFe, caso contrario vai ocorrer erros.

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

Link para o comentário
Compartilhar em outros sites

×
×
  • 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...