Ir para conteúdo
  • Cadastre-se

dev botao

Acces Violation NFS-e LoadFromXML na função xmlParseDoc


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

Recommended Posts

 Boa Tarde

Estou utilizando no componente do ACBrNFSeX a função LoadFromFile
 

ACBrNFSeX.NotasFiscais.LoadFromFile('NFSe_****.xml');


Porém a a variável loadedDoc ao ser preenchida pela função  xmlParseDoc  da ACBrLibXml2 retorna como nil, gerando na sequencia um Acces Violation na aplicação.

image.png.3e8493d5eaf4702850abeb08e435f37a.png

image.png.f54dd7575c720d7c9cfe659d127b3c67.png
 

Município e Provedor estão sendo preenchidos no componente, tentei criação em tempo de execução ou arrastando para o form e o comportamento é sempre o mesmo.
Honestamente perdi algumas horas tentando encontrar uma solução mas não obtive sucesso, o XML é validado normalmente fora do sistema mas quando carregado pelo componente em questão esbarro nesse problema.
Encontrei um problema na mesma função no fórum mas não foi a solução para o meu caso.

Alguém consegue por favor me dar uma luz do que pode causar o problema ?

Obrigado

ARES_NFSE_D9F02A2F0ED142CEB54382255C6FB15B.xml

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde,

Usando o programa exemplo, carreguei o seu XML através do botão "Imprimir DANFSe".

Carregou e exibiu a impressão sem erros.

No codigo para carregar o XML verifique os parametros da função:

image.png

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

 

 

Link para o comentário
Compartilhar em outros sites

Bom Dia

Já havia utilizado o programa de testes e o erro pra mim é o mesmo. No componente antigo (ACBRNFSe) pra mim funciona mas quando utilizo o ACBRNFSeX é que o problema ocorre, removi o componente e instalei novamente e sem sucesso.

Vou tentar outras alternativas e quando descobrir o motivo do problema posto aqui a solução.

Obrigado mesmo assim.

image.thumb.png.8aefc1824c08e6c644d8e9ed6a4b216a.png

Editado por Denis Zago
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Denis,

Esse XML foi baixado do Portal da Prefeitura ou foi retornado pelo WebService?

Por padrão todos os XML de NFS-e segundo o layout da ABRASF devem começar pela tag CompNfse e esse XML esta começando pela tag Nfse.

Veja:

image.png

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

Olá Ítalo, Boa Tarde

Foi um XML retornado pelo WebService, mas mesmo um outro XML que testei contendo  a tag CompNfse me gera o mesmo erro.
No fim acredito que seja algo relacionado a versão do Delphi  11.2 que por algum motivo não entende a condição   if InitLibXml2Interface and Assigned(_xmlParseDoc) then  da funcion xmlParseDoc e gera essa exceção
,o mesmo projeto agora foi testado em outra maquina com a mesma versão 11.2, o erro não aconteceu mas a função é congelada e trava o sistema, ou seja, um problema diferente mas que ainda impede que eu prossiga. Quando fui para uma versão Delphi  11.3 tanto o XML do exemplo quanto qualquer outro passou sem qualquer problema pela validação e a impressão ocorreu normalmente.

Vai ser bem difícil encontrar o motivo do erro, num primeiro momento como preciso resolver rápido vou compilar o projeto em Lazarus e caso consiga uma solução volto para postar a mesma.

Obrigado pela atenção.

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

  • Consultores

Boa tarde Denis,

Você poderia anexar esse outro XML que contem a tag CompNfse para que eu possa analisar o problema?

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

  • Consultores

Denis,

Os XMLs retornados estão sendo salvos em disco ou no banco de dados?

Todos os fontes estão atualizados?

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

Bom Dia Italo.

Sim, os fontes estão atualizados, inclusive os removi e instalei novamente. No caso do XML, eu salvo ele no banco de dados mas também em disco de forma temporária, em ambas as formas  o problema acontece.
Vou pegar hoje a tarde e reinstalar o Delphi e ver se tenho algum comportamento diferente

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

  • Consultores

Bom dia Denis,

O componente esta configurado para salvar em disco, ou você pega o XML que esta sendo salvo no banco de dados e salva em disco?

De qual propriedade você pega o XML?

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

Para gravar no banco pegamos o XML do componente seguindo o exemplo abaixo

ACBrNFSeX.NotasFiscais.Items[0].XmlNfse


No caso do arquivo salvamos em uma pasta temporária pelo próprio componente que esta configurado como no exemplo abaixo

ACBrNFSeX.Configuracoes.Arquivos.Salvar    := True;
ACBrNFSeX.Configuracoes.Arquivos.PathSalvar := ExtractFilePath(ParamStr(0))+'XML_TEMP\NFSe\';

  
 

Editado por Denis Zago
Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Denis,

Você poderia anexar o XML da nota que é salvo em disco?

Quero fazer um 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

  • Consultores

Boa tarde Denis,

Com esse XML consegui através do programa exemplo carregar o XML e visualizar o DANFSE, sem nenhum problema.

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

Olá Italo, Boa Tarde

Pois é rapaz, dificilmente vou descobrir o que causa esse problema no meu compilador, a única divergência que tenho aqui das maquinas que conseguem visualizar a DANFSE com as que não é a versão do DELPHI, reinstalei componentes , IDE e nada de funcionar, deve ser alguma força do além me impedindo srsrs.

Agradeço imensamente todo esforço e tempo disposto para tentar ajudar, se em algum momento eu conseguir desvendar esse mistério voltarei aqui para compartilhar a solução.


Muito Obrigado!!







 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Denis,

Com qual versão do Delphi ocorre o problema e qual a versão que não ocorre?

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

  • Consultores

Boa tarde Denis,

Eu só tenho a versão 11.3.

Antes eu tinha a 11.1 e funcionava sem nenhum problema.

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

Boa Tarde Ítalo.

Definitivamente algum B.O. com a versão 11.2( ou muito azar da minha parte ), formatei a maquina e reinstalei tudo o problema persistiu.
Como é um projeto "isolado" e bem pequeno para o gerenciamento de XMLs eu consegui utilizar o Lazarus fazendo as devidas mudanças e funcionou pra mim.

Mais uma vez agradeço todo esforço em tentar ajudar, se em algum momento a solução surgir com certeza volto para postar a solução.

Obrigado!

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

  • Consultores

Obrigado por reportar.

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

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

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