Ir para conteúdo
  • Cadastre-se

dev botao

Falha ao localizar nó Raiz


@Mauricio
Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 2066 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Olá pessoal, estou tento dificuldades para gerar NFSe, a parte de NFe e NFCe já trabalho a algum tempo e sei bem como funciona, agora a NFSe não estou conseguindo gerar esta retornando esse erro:

image.png.eed477010e1c184442e51954872a20e6.png

Tanto na minha aplicação quanto no proprio exemplo em Delphi acontece o mesmo erro, alguem pode me ajudar?

Link para o comentário
Compartilhar em outros sites

19 minutos atrás, @Mauricio disse:

Olá pessoal, estou tento dificuldades para gerar NFSe, a parte de NFe e NFCe já trabalho a algum tempo e sei bem como funciona, agora a NFSe não estou conseguindo gerar esta retornando esse erro:

Tanto na minha aplicação quanto no proprio exemplo em Delphi acontece o mesmo erro, alguem pode me ajudar?

Mauricio, está mensagem é na validação  ?

Em uma busca rápida no fonte, esta mensagem está relacionada às DLLs LibXml2 e XmlSec.

Verifique schemas, certificado e versões das DLLs.

 

Link para o comentário
Compartilhar em outros sites

@mbbortolini o erro acontece na unit ACBrDFeXsLibXML2, nessa linha:

    { Não achei o InfElement em nenhum nó : ( }
    if (infNode = nil) then
      raise EACBrDFeException.Create(cErrFindRootNode); << Nessa linha 542

o estranho é que tenho na mesma aplicação a emissão de NFe e NFCe e rodam perfeitamente, agora que comecei a implementar a NFSe utilizo a mesma configuração da parte das NFe/NFCe

 

o Schemas eu utilizei desse diretorio  ..\ACBr\Exemplos\ACBrDFe\ACBrNFSe\Schemas\Equiplano, esta correto somente 14 arquivos schemas?

Link para o comentário
Compartilhar em outros sites

4 horas atrás, @Mauricio disse:

@mbbortolini o erro acontece na unit ACBrDFeXsLibXML2, nessa linha:

    { Não achei o InfElement em nenhum nó : ( }
    if (infNode = nil) then
      raise EACBrDFeException.Create(cErrFindRootNode); << Nessa linha 542

o estranho é que tenho na mesma aplicação a emissão de NFe e NFCe e rodam perfeitamente, agora que comecei a implementar a NFSe utilizo a mesma configuração da parte das NFe/NFCe

 

o Schemas eu utilizei desse diretorio  ..\ACBr\Exemplos\ACBrDFe\ACBrNFSe\Schemas\Equiplano, esta correto somente 14 arquivos schemas?

Maurício, quais os passo que você está utilizando para a emissão da NFse ? Antes de chamar a prodecure ENVIAR do Acbr.

 

Link para o comentário
Compartilhar em outros sites

Estou utilizando o proprio Demo do Delphi, pois estava recebendo esse erro quando desenvolvi minha função, ai como achei que poderia ser erro meu estou utilizando o Demo do Acbr, e coloquei como OpenSSLa parte do certificado, no caso se a NFe esta funcionando não seria a mesma configuração de criptografia que a NFSe usa? se tratando da mesma aplicação?

Link para o comentário
Compartilhar em outros sites

21 minutos atrás, @Mauricio disse:

Estou utilizando o proprio Demo do Delphi, pois estava recebendo esse erro quando desenvolvi minha função, ai como achei que poderia ser erro meu estou utilizando o Demo do Acbr, e coloquei como OpenSSLa parte do certificado, no caso se a NFe esta funcionando não seria a mesma configuração de criptografia que a NFSe usa? se tratando da mesma aplicação?

Maurício, qual a cidade que você está implementando ?

Link para o comentário
Compartilhar em outros sites

Fernandes Pinheiro - PR - Provedor Equiplano, a cidade não estava na lista, ai adicionei ela manualmente no arquivo INI, teria que fazer algo a mais? pois a cidade é atendida pela Equiplano, só não estava na listagem

Mais ja tentei com outras cidades que já estavam no arquivo INI, o o erro é o mesmo.

Editado por @Mauricio
Link para o comentário
Compartilhar em outros sites

5 minutos atrás, @Mauricio disse:

Fernandes Pinheiro - PR - Provedor Equiplano, a cidade não estava na lista, ai adicionei ela manualmente no arquivo INI, teria que fazer algo a mais? pois a cidade é atendida pela Equiplano, só não estava na listagem

Tente alterar no INI da equiplano a sessão [Assinar] de assim :

Citar

[Assinar]
RPS=0
Lote=1
URI=1

para assim :

Citar

[Assinar]
RPS=1  <<< aqui
Lote=1
URI=1

 

Link para o comentário
Compartilhar em outros sites

20 minutos atrás, @Mauricio disse:

image.png.c280d7ee65739b8d3ac816eaa871289d.png

Mudou o erro, é como se não estivesse preenchendo o XML corretamente, vou anexar o xml para ficar melhor de voce me ajudar. Como falei estou gerando pelo Demo, as informações são somente para testes.

 

-rps.xml

Maurício, o arquivo XML está com a estrutura completa, todas as tags com seus fechamentos.

Mas, como foi alterado o parâmetro para assinar, este não possui assinatura.

O certificado é A1 ou A3 ? Ou ainda, a missão é sem certificados ?

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Mauricio,

Para o provedor Equiplano devemos assinar somente o Lote, logo a alteração que foi feita no arquivo INI esta errada.

A mensagem de erro "Falha ao Localizar o nó raiz é normal aparecer quando usamos o SSLLib = libWinCrypt.

Se você esta usando o Delphi 7 compila a aplicação e o execute fora do Delphi.

Agora se esta usando uma versão mais nova do Delphi 7 ao aparecer a mensagem de erro, clique no botão continuar.

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

Estou utilizando certificado A1, meu Delphi é XE5, quando tento enviar com:

SSL=OpenSSL e qualquer SSLType:

image.png.6c3d00f54fbd4f9c27034efd2bfc378c.png

Agora com

SSL=WinCrypt

SSLType=TLSv1_2 ele me retorna o seguinte problema:
image.png.4dcddf13698db8f81b4770a36552fcdd.png

Se altero para SSL=WinCrypt  eSSLType=all

image.png.e2f9f323d06fd3741566c353c6fbacc4.png

o estranho como mencionei acima é que na mesma aplicação utilizo NFe/NFCe e esta funcionando perfeitamente

Link para o comentário
Compartilhar em outros sites

  • Consultores

Mauricio,

Fiz um teste, e para mim esta retornando um erro que pelo que entendi o webservice não esta recebendo o XML de entrada (input).

Favor entrar em contato com o provedor e solicitar um exemplo de XML completo com as tags de envelope para sabermos como devemos montar.

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
  • Solution

Boa tarde Everson,

Clique no botão Continuar.

Essa mensagem aparece porque você esta executando a aplicação através do Delphi.

  • 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

Algumas considerações.

Consegui emitir NFS-e com SSLLib: libCapicom, libWinCrypt

Quando tento utilizar a SSLLib configurada como libOpenSSL recebo a exception "Erro: Falha ao localizar o nó Raiz". Essa exceção ocorre duas vezes no processo de envio, a primeira é controlada, aparece quando executa pelo delphi mas não para o processo, já a segunda interrompe tudo. Depurando percebi que a XmlSec na verdade invoca os métodos da LibXml2, então configurei da seguinte forma:

  SSLLib := libCustom;
  SSLCryptLib := cryOpenSSL;
  SSLHttpLib := httpOpenSSL;
  SSLXmlSignLib := xsLibXml2;

Dessa forma emitiu a nota, mas se SSLXmlSignLib = xsXmlSec não foi nem com reza braba.

Outro porém é que isso só é valido para NFS-e (estou testando com Equiplano), testei emissão de NFC-e com SSLXmlSignLib = xsXmlSec  e emitiu normalmente.

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde Everson,

Tentou configurar somente a propriedade SSLLib com o valor libWinCrypt e deixar as demais com os seus valores padrões?

Ou seja, não configurar elas.

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

Consegui achar o problema, com a ajuda do @everson.turossi percebi que meu xml estava sem a tag idEntidade, verifiquei melhor e tinha esquecido de alterar o arquivo pnfsNFSeG.pas na função GetIdEntidadeEquiplano, ai adicionei a cidade nova e ajustei o Cidades.ini.... depois disso começou a funcionar, só estou recebendo o erro abaixo mais acho que é pelo fato de não estar liberado a homologação para o CNPJ.
image.png.74b5496fa0a4bf9ea5e0a38e89a87722.png

Vou anexar os 2 arquivos que alterei, caso seja possivel subir as alterações que fiz par a cidade nova ('Fernandes Pinheiro/PR').

Cidades.ini

pnfsNFSeG.pas

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Mauricio,

Muito obrigado pela colaboração, ainda hoje estarei enviando para o repositório.

Uma observação, os seus fontes estão desatualizados.

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á 2066 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.