Ir para conteúdo
  • Cadastre-se

dev botao

EACBrDFeException "Unknown" ao emitir NFCe


Ver Solução Respondido por Victor H. Gonzales - Panda,
  • Este tópico foi criado há 163 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado (editado)

Boa tarde.

Estou enfrentando um problema estranho num cliente, estou completamente no escuro.

Ao emitir uma NFC-e o componente AcbrNfe levanta uma exceção sem mensagem. Fiz um rastreio usando o MadExcept mas não me ajudou muito.

O mais bizarro é que no meu computador, em desenvolvimento, funciona perfeitamente.

Verificando os logs que o componente gera, os XMLs estão OK, assinados, o retorno veio OK da Sefaz informando a autorização. O problema parece na interpretação do retorno dentro do componente.

Parece que algo mudou nas units da NFe entre os dias 13/05 (dia da minha última atualização do SVN) e 12/06, pois ao usar um exec anterior a 12/06 funciona perfeitamente.

Minha config de assinatura é :

          acbrNFCE.Configuracoes.Geral.SSLCryptLib   := ACBrDFeSSL.cryWinCrypt;
          acbrNFCE.Configuracoes.Geral.SSLHttpLib    := ACBrDFeSSL.httpWinHttp;
          acbrNFCE.Configuracoes.Geral.SSLLib        := ACBrDFeSSL.libWinCrypt;
          acbrNFCE.Configuracoes.Geral.SSLXmlSignLib := ACBrDFeSSL.xsMsXml;
          acbrNFCE.SSL.SSLType := blcksock.LT_TLSv1_2;

Log:

callstack crc      : $594e6622, $fdd1279b, $fdd1279b
exception number   : 1
exception class    : EACBrDFeException
exception message  : Unknown.

main thread ($19b0):
016ce523 +08b prERP2.exe   ACBrDFe             636 +10 TACBrDFe.GerarException
016d7397 +01b prERP2.exe   ACBrDFeWebService   540  +1 TDFeWebService.GerarException
0179887d +08d prERP2.exe   ACBrNFeWebServices 4029  +9 TWebServices.Envia
017a04e6 +0fa prERP2.exe   ACBrNFe             731 +14 TACBrNFe.Enviar
017a03ba +042 prERP2.exe   ACBrNFe             710  +1 TACBrNFe.Enviar
01bf9b5a +202 prERP2.exe   ADMNfe             8418 +49 TDMNfe.EnviaNFCeLocal
02aea5f3 +5a7 prERP2.exe   NfeMonitor         2365 +86 TFNfeMonitor.ProcessaAutoriza
02ae0137 +02b prERP2.exe   NfeMonitor          578  +5 TFNfeMonitor.btGerarEnviarClick
005d1213 +06f prERP2.exe   Vcl.Controls                TControl.Click
005f49b6 +01e prERP2.exe   Vcl.StdCtrls                TCustomButton.Click
005f54bc +010 prERP2.exe   Vcl.StdCtrls                TCustomButton.CNCommand

 

Editado por TiagoTecchio
typo
  • TiagoTecchio changed the title to EACBrDFeException "Unknown" ao emitir NFCe
  • Consultores
Postado

Coloca um breakpoint no envia e vai no F7 até subir a exceção veja se consegue saber onde é.

referente a ocorrer somente no seu cliente, sugiro rodar então em Debug remoto usando PAServer.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Membros Pro
Postado

Victor,

Como mencionei, no meu PC funciona OK, já debuguei até as entranhas do ACBr sem sucesso.

Mas consegui achar o problema: DLLs.

Adicionei os arquivos libexslt.dll, libiconv.dll, libxml2.dll, libxslt.dll e msvcr120.dll junto ao exec no servidor do cliente e magicamente funcionou.

Só não entendi o motivo: estas DLLs são obrigatórias a partir de agora? Porque não eram até dias atrás.

  • Consultores
  • Solution
Postado

LibXML2 ela é obrigatória se você usa ela para assinatura parametrizada com ela

a LibXML2 tem as dependências

libexslt.dll
libiconv.dll
libxslt.dll
somente essas DLL e isso não mudou, como também não são novas.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Consultores
Postado

não, está certo usar a LIBXML2 para assinar documentos

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Membros Pro
Postado (editado)

Victor,

vou tratar como resolvida esta questão mas não entendi a sua colocação.

Obrigado pela ajuda.

Editado por TiagoTecchio
  • Consultores
Postado
7 minutos atrás, TiagoTecchio disse:

Victor,

vou tratar como resolvida esta questão mas não entendi a sua colocação.

Obrigado pela ajuda.

Está correto hoje em dia usar a Libxml2, antigamente você devia usar outro tipo de assinatura, por isso não tinha essas DLL na sua aplicação.

a LibXML2 acho que foi introduzida no componente em 2017, quando foi depreciado a Capcom / Msxml pela Microsoft

  • Curtir 1
Consultor SAC ACBr

Victor H Gonzales - Pandaaa
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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

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