Ir para conteúdo
  • Cadastre-se

Recommended Posts

Postado

Bom dia.

Estou utilizando uma única instância da ACBrLib NFSe em um serviço de sincronização que consulta documentos de múltiplas empresas em sequência. Antes de cada consulta, atualizo toda a configuração do componente, incluindo certificado, senha e demais parâmetros da empresa. Ao verificar através do método ObterCertificados, o certificado configurado está correto e corresponde à empresa atual. Entretanto, ao executar ConsultarDFe, a consulta parece ser realizada utilizando o certificado da empresa processada anteriormente. Como consequência, recebo documentos/NSUs da empresa anterior, mesmo após a reconfiguração completa da biblioteca. Já tentei utilizar ConfigGravar, LimparLista e recarregar as configurações antes da consulta. O único cenário em que funciona corretamente é destruindo e recriando a instância da biblioteca (Finalizar + Inicializar ou nova instância do componente) a cada troca de empresa. Existe algum método específico para forçar o recarregamento do certificado digital após alterar a configuração em tempo de execução? Ou a ACBrLib mantém o certificado carregado em memória durante toda a vida da instância? Gostaria de alguma alternativa que não recriasse a lib inteira novamente por conta do custo de processamento.

Agradeço qualquer orientação.

Postado (editado)
40 minutos atrás, Daniel Simoes disse:

Você está usando as configurações em Memória ?

 

acredito que sim
meu log: TLibNFSeConfig.AplicarConfiguracoes: [Memory]

exemplo de uso das configurações:
 DfeLib.Config.CodigoMunicipio = _config!.Cidade!.CodigoIbgeCidade;

Editado por beatriz-n
Postado

vale ressaltar que quando eu utilizo o metodo obtercertificado() ele retorna corretamente o certificado atual que eu configurei mas ao fazer alguns testes com o consultardfe(1) por exemplo, ele me mostra os mesmos xmls do primeiro certificado configurado

Postado

fazendo debugs no meu sistema percebi que quando eu espero perto de uns 2 minutos parada no debug antes de entrar no metodo de consultardfe e depois avanço no debug para a execução desse metodo ele funciona com o certificado atual que não estava entrando, o mais estranho é que eu estou na mesma thread e no mesmo handle

26/06/26 09:54:04:918 - ThreadID = 9C9C , Handle = 1C350BFB160 - Destravar
26/06/26 09:56:31:844 - ThreadID = 9C9C , Handle = 1C350BFB160 - NFSE_ConsultarDFe(160 )
26/06/26 09:56:31:845 - ThreadID = 9C9C , Handle = 1C350BFB160 - Travar
26/06/26 09:56:32:061 - ThreadID = 9C9C , Handle = 1C350BFB160 -    MoverStringParaPChar. StrLen:55992, BufLen:1024
26/06/26 09:56:32:061 - ThreadID = 9C9C , Handle = 1C350BFB160 -    SetRetorno(0, [ConsultarDFe]
ChaveNFSe=
NSU=160
XmlEnvio=/DFe/160
XmlRetorno={"StatusProcessamento":"DOCUMENTOS_LOCALIZADOS","LoteDFe":[{"NSU":161....

deixei colorido a diferença de tempo

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.

The popup will be closed in 10 segundos...