TimeB256
Membros Pro-
Total de ítens
40 -
Registro em
-
Última visita
Sobre TimeB256
Últimos Visitantes
O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.
TimeB256's Achievements
-
Bom dia a todos! Então, estou fazendo a captura de Ctes para uma determinada empresa, e apenas nela ocorre o erro abaixo: Estou passando como param para o DistribuicaoDFe os seguintes dados: codigonfe = 31 cnpjempresa = 34048121000125 ultimonse = 000000000000000 ArquivoOuXml= "" public string DistribuicaoDFe(int acUFAutor, string eCnpjcpf, string eultNsu, string ArquivoOuXml) System.ApplicationException: 'WebService Distribuição de DFe: - Inativo ou Inoperante tente novamente. Erro Interno: 0 Erro HTTP: 403 URL: https://www1.cte.fazenda.gov.br/CTeDistribuicaoDFe/CTeDistribuicaoDFe.asmx <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> <title>403 - Forbidden: Access is denied.</title> <style type="text/css"> <!-- body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;} fieldset{padding:0 15px 10px 15px;} h1{font-size:2.4em;margin:0;color:#FFF;} h2{font-size:1.7em;margin:0;color:#CC0000;} h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;} #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF; background-color:#555555;} #content{margin:0 0 0 2%;position:relative;} .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;} --> </style> </head> <body> <div id="header"><h1>Server Error</h1></div> <div id="content"> <div class="content-container"><fieldset> <h2>403 - Forbidden: Access is denied.</h2> <h3>You do not have permission to view this directory or page using the credentials that you supplied.</h3> </fieldset></div> </div> </body> </html> Trechos do código: public DistribuicaoDFeResposta<TipoCTe> DistribuicaoDFe() => TratarDfeResposta(acbrcte.DistribuicaoDFe(empresacte.codigonfe.ToInt(), empresacte.cnpj, empresacte.ultimonsu ?? ("0").PadLeft(15, '0'), "")); public string DistribuicaoDFe(int acUFAutor, string eCnpjcpf, string eultNsu, string ArquivoOuXml) { int bufferLen = 256; StringBuilder buffer = new StringBuilder(bufferLen); CTE_DistribuicaoDFe method = GetMethod<CTE_DistribuicaoDFe>(); int ret = ExecuteMethod(() => method(libHandle, acUFAutor, ACBrLibHandle.ToUTF8(eCnpjcpf), ACBrLibHandle.ToUTF8(eultNsu), ACBrLibHandle.ToUTF8(ArquivoOuXml), buffer, ref bufferLen)); CheckResult(ret); return ProcessResult(buffer, bufferLen); } Desde já agradeço !
-
Bom dia a todos; Gostaria de saber onde consigo baixar o ACBrNFCom? E se já esta adaptado para utilizarmos no VB6?
-
Consegui capturar o mesmo erro, mas ele agora deu uma mensagem que não havia percebido: Notem o último erro. AcbrCTeServico - antes de instanciar acbrcte (dotnet:28): GLib-GObject-WARNING **: 16:38:30.221: cannot register existing type 'GdkDisplayManager' (dotnet:28): GLib-CRITICAL **: 16:38:30.221: g_once_init_leave: assertion 'result != 0' failed (dotnet:28): GLib-GObject-CRITICAL **: 16:38:30.221: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed (dotnet:28): GLib-GObject-WARNING **: 16:38:30.221: invalid (NULL) pointer instance (dotnet:28): GLib-GObject-CRITICAL **: 16:38:30.221: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed (dotnet:28): GLib-GObject-WARNING **: 16:38:30.221: invalid (NULL) pointer instance (dotnet:28): GLib-GObject-CRITICAL **: 16:38:30.222: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed (dotnet:28): GLib-GObject-WARNING **: 16:38:30.222: cannot register existing type 'GdkDisplay' (dotnet:28): GLib-CRITICAL **: 16:38:30.222: g_once_init_leave: assertion 'result != 0' failed (dotnet:28): GLib-GObject-CRITICAL **: 16:38:30.222: g_type_register_static: assertion 'parent_type > 0' failed (dotnet:28): GLib-CRITICAL **: 16:38:30.223: g_once_init_leave: assertion 'result != 0' failed (dotnet:28): GLib-GObject-CRITICAL **: 16:38:30.223: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed Segmentation fault (core dumped) xvfb-run: error: problem while cleaning up temporary directory
-
O meu arquivo dockerfile está configurado da seguinte forma: Está faltando alguma instalação? Vi que no post do Julio Cavalcanti, temos instalação de itens a mais. #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base RUN apt update && apt-get install -y libxml2 libxslt-dev libgtk2.0-0 xvfb WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build WORKDIR /src COPY src/WebApis/Api.Dfe/*.csproj ./ COPY src/nuget.config ./ RUN dotnet restore "Api.Dfe.csproj" /p:Configuration="Release" --configfile "./nuget.config" COPY src/WebApis/Api.Dfe/ ./ WORKDIR "/src" RUN dotnet build "Api.Dfe.csproj" -c Release -o /app FROM build AS publish RUN dotnet publish "Api.Dfe.csproj" -c Release -o /app FROM base AS final WORKDIR /app COPY --from=publish /app . #https://stackoverflow.com/questions/60934639/install-fonts-in-linux-container-for-asp-net-core # RUN echo "deb http://deb.debian.org/debian/ bookworm main contrib" > /etc/apt/sources.list && \ # echo "deb-src http://deb.debian.org/debian/ bookworm main contrib" >> /etc/apt/sources.list && \ # echo "deb http://security.debian.org/ bookworm-security main contrib" >> /etc/apt/sources.list && \ # echo "deb-src http://security.debian.org/ bookworm-security main contrib" >> /etc/apt/sources.list RUN sed -i'.bak' 's/$/ contrib/' /etc/apt/sources.list RUN apt-get update; apt-get install -y ttf-mscorefonts-installer fontconfig # ENV DISPLAY :99 # RUN chmod 0755 /app/start.sh # ENTRYPOINT ["bash", "start.sh"] # ENTRYPOINT ["xvfb-run", "dotnet", "Api.Dfe.dll"] ENTRYPOINT ["/bin/sh", "-c", "/usr/bin/xvfb-run -a $@", ""] CMD ["dotnet", "Api.Dfe.dll"]
-
Atualizei as dlls agora, vou testar e reporto.
-
Então, vou realizar o seguinte teste.. O que entendemos é que a acbr quando instanciada, carrega umas bibliotecas gráficas (xvfb e GdkWindow). Hoje, tenho um arquivo na api e no monitor (start.sh), onde tenho seguinte conteúdo: #!/bin/bash if [ -f /tmp/.X99-lock ]; then rm /tmp/.X99-lock fi Xvfb :99 -screen 0 1280x1024x24 -ac +extension GLX +render -noreset & dotnet Api.Dfe.dll No dockerfile, faço a seguinte config. ENV DISPLAY :99 RUN chmod 0755 /app/start.sh ENTRYPOINT ["bash", "start.sh"] Vou comentar esse cara, e adicionar o seguinte comando; ENTRYPOINT ["xvfb-run", "dotnet", "ACBr.API.dll"] Vi isso no seguinte link: https://github.com/frones/ACBr/blob/5013dcaa92124d4516a471628d92042a8354c3f3/Projetos/ACBrLib/Demos/C%23/ACBr.API/ACBr.API/Dockerfile#L6 Não sei se irá resolver, mas vamos testar aqui. Tinha que ter uma forma de configurar pra acbr nao carregar essas bibliotecas gráficas.
-
Bom dia Renato, Esse caso sempre ocorreu, como fizemos os logs, vimos que é justamente quando instancia a dll e a api cai. Toda infraestrutura é no linux, Ubuntu 22.04.4
-
Boa noite, estou com um grande problema. Tenho um worker que fica capturando notas, manifestando, e ele roda em um container docker. Esse monitor comunica com uma API minha, por exemplo para realizar a manifestação da nota. Veja esse trecho do código: private ACBrNFe ACBrNFe; private async Task<bool> ManifestarNota(NotasFiscaisManifestacaoModel nota, en_tipomanifestacao tipomanifestacao) { Console.WriteLine("Método ManifestarNota - Segundo processo"); bool result = false; var empresa = await _repositorio.empresa.SelecionarAsync(nota.idempresaevocenter); Console.WriteLine($"Método ManifestarNota - Empresa: {empresa.razaosocial}"); CertificadoPorParametrosModel certificadodigitalkeevo = await _kcenterworkscertificadoservico.SelecionarPorParametros(nota.idempresaevocenter, nota.idmaster, AplicativoModel.en_aplicativo.Manifestacao.ToInt()); if (certificadodigitalkeevo == null) return false; Console.WriteLine($"Método ManifestarNota - Leu certificado: {certificadodigitalkeevo.datavalidade}"); //string caminhoCompleto = Path.Combine(Path.GetTempPath(), certificadodigitalkeevo.idcertificado.ToString() + ".pfx"); try { Console.WriteLine("Método ManifestarNota - Início config acbr"); ACBrNFe = new(); Console.WriteLine("Método ManifestarNota - Instanciou acbr"); ConfigurarCertificado(ACBrNFe, certificadodigitalkeevo); Console.WriteLine("Método ManifestarNota - Configurou certificado acbr"); } catch { return false; } O problema é o seguinte: Fui colocando log no monitor e para printar na AWS, e ocorre o seguinte erro quando passo nessa parte: ACBrNFe = new(); O erro é: 03 de setembro de 2024 às 16:36 (UTC-3:00) start.sh: line 7: 8 Segmentation fault (core dumped) dotnet Api.Dfe.dll bcdc131931024db48b613901b8f7788a dfe-api-prod 03 de setembro de 2024 às 16:36 (UTC-3:00) (dotnet:8): GLib-GObject-WARNING **: 19:36:05.505: cannot register existing type 'GdkWindow' bcdc131931024db48b613901b8f7788a dfe-api-prod 03 de setembro de 2024 às 16:36 (UTC-3:00) (dotnet:8): GLib-GObject-CRITICAL **: 19:36:05.505: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed bcdc131931024db48b613901b8f7788a dfe-api-prod 03 de setembro de 2024 às 16:36 (UTC-3:00) (dotnet:8): GLib-GObject-WARNING **: 19:36:05.505: cannot register existing type 'GdkWindowImpl' bcdc131931024db48b613901b8f7788a dfe-api-prod 03 de setembro de 2024 às 16:36 (UTC-3:00) (dotnet:8): GLib-GObject-CRITICAL **: 19:36:05.505: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed bcdc131931024db48b613901b8f7788a dfe-api-prod 03 de setembro de 2024 às 16:36 (UTC-3:00) (dotnet:8): GLib-GObject-CRITICAL **: 19:36:05.505: g_type_add_interface_static: assertion 'g_type_parent (interface_type) == G_TYPE_INTERFACE' failed Por favor, conseguem me ajudar ?
-
Boa tarde, então, vou te passar minha classe de serviço, como está configurada. Se puder me ajudar... Enviei 2 trechos de código pra ver se me ajuda. O primeiro é minha classe de serviço de config do Acbr. O segundo, toda vez que eu processo uma empresa na captura de cte, eu instancio essa classe. using Dfe.Pacotes.Infra.IntegracaoApi.Models.Passaporte; using Keevo.Pacotes.Infra.ACBrLib.Core.DFe; using Keevo.Pacotes.Infra.ACBrLib.CTe; using Keevo.Pacotes.Infra.ACBrLib.CTe.Models; using Keevo.Pacotes.Infra.Utils.Conversao; using Keevo.Pacotes.Infra.Utils.Criptografia; using Keevo.Pacotes.Infra.Utils.Diretorio; using Keevocenter.Pacotes.Infra.IntegracaoApi.Models.Certificado; namespace Dfe.Monitor.CapturaCte.Servicos { public class AcbrCTeServico : IDisposable { public ACBrCTe acbrcte { get; set; } public EmpresaParametrosCteSelecaoModel empresacte { get; set; } public CertificadoPorParametrosModel certificadodigitalkeevo { get; set; } public AcbrCTeServico(EmpresaParametrosCteSelecaoModel empresacte, CertificadoPorParametrosModel certificadodigitalkeevo) { acbrcte = new(); this.empresacte = empresacte; this.certificadodigitalkeevo = certificadodigitalkeevo; ConfigurarCertificado(acbrcte, certificadodigitalkeevo); } public DistribuicaoDFeResposta<TipoCTe> DistribuicaoDFe() => TratarDfeResposta(acbrcte.DistribuicaoDFe(empresacte.codigonfe.ToInt(), empresacte.cnpj, empresacte.ultimonsu ?? ("0").PadLeft(15, '0'), "")); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoDFe(long ultimonsu) => DistribuicaoDFe(ultimonsu.ToString().PadLeft(15, '0')); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoDFe(string ultimonsu) => TratarDfeResposta(acbrcte.DistribuicaoDFe(empresacte.codigonfe.ToInt(), empresacte.cnpj, ultimonsu, "")); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoCtePorNSU(long nsu) => DistribuicaoCtePorNSU(nsu.ToString().PadLeft(15, '0')); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoCtePorNSU(string nsu) => TratarDfeResposta(acbrcte.DistribuicaoDFePorNSU(empresacte.codigonfe.ToInt(), empresacte.cnpj, nsu)); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoCtePorChave(string chave) => DistribuicaoCtePorChave(empresacte, chave); public DistribuicaoDFeResposta<TipoCTe> DistribuicaoCtePorChave(EmpresaParametrosCteSelecaoModel empresacte, string chave) => TratarDfeResposta(acbrcte.DistribuicaoDFePorChave(empresacte.codigonfe.ToInt(), empresacte.cnpj, chave)); public DistribuicaoDFeResposta<TipoCTe> TratarDfeResposta(string resposta) => DistribuicaoDFeResposta<TipoCTe>.LerResposta(resposta); public void ConfigurarCertificado() { ConfigurarCertificado(acbrcte, certificadodigitalkeevo); } public static void ConfigurarCertificado(ACBrCTe acbrCTe, CertificadoPorParametrosModel certificadodigitalkeevo) { acbrCTe.Config.DFe.SSLCryptLib = GetSSLCryptLib(); acbrCTe.Config.DFe.SSLHttpLib = GetSSLHttpLib(); acbrCTe.Config.DFe.SSLXmlSignLib = SSLXmlSignLib.xsLibXml2; acbrCTe.Config.DFe.DadosPFX = certificadodigitalkeevo.arquivocertificado; acbrCTe.Config.DFe.Senha = KeevoCrypto.Decrypt(certificadodigitalkeevo.senha); acbrCTe.Config.Ambiente = TipoAmbiente.taProducao; acbrCTe.Config.SalvarArq = false; acbrCTe.Config.SalvarGer = false; //Configurações para processamento acbrCTe.Config.SSLType = SSLType.LT_TLSv1_2; acbrCTe.Config.Timeout = 25000; acbrCTe.Config.AguardarConsultaRet = 0; acbrCTe.Config.Tentativas = 5; acbrCTe.Config.IntervaloTentativas = 1000; acbrCTe.Config.PathSchemas = KeevoDiretorio.AppPath() + @"/Schemas/CTe"; //Configurações para logs //#if (DEBUG) acbrCTe.Config.Principal.LogNivel = Keevo.Pacotes.Infra.ACBrLib.Core.NivelLog.logParanoico; acbrCTe.Config.Principal.LogPath = KeevoDiretorio.AppPath(); acbrCTe.ConfigGravar(); //#endif } private static SSLCryptLib GetSSLCryptLib() => ACBrCTe.IsWindows ? SSLCryptLib.cryWinCrypt : SSLCryptLib.cryOpenSSL; private static SSLHttpLib GetSSLHttpLib() => ACBrCTe.IsWindows ? SSLHttpLib.httpWinHttp : SSLHttpLib.httpOpenSSL; public void Dispose() { acbrcte.Dispose(); } } } Toda vez que eu processo uma empresa, eu instancio essa classe, conforme código abaixo: public async Task ProcessarEmpresa(EmpresaParametrosCteSelecaoModel empresacteselecaomodel, SemaphoreSlim semaphoreempresa) { AcbrCTeServico? acbrcteservico = null; try { if (empresacteselecaomodel.datahoraultimaconsulta.AddHours(1).AddMinutes(1) > DateTime.Now.ToSATimeZone()) { _logger.LogInformation($"[MONITOR_CAPTURA_CTE][{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] A empresa está em no tempo de 1 hora de espera"); return; } CertificadoPorParametrosModel certificadodigitalkeevo = await _kcenterworkscertificadoservico.SelecionarPorParametros ( empresacteselecaomodel.idempresaevocenter, empresacteselecaomodel.idmaster, AplicativoModel.en_aplicativo.Manifestacao.ToInt() ); if (!ValidacaoCertificado(certificadodigitalkeevo, empresacteselecaomodel)) return; else { _logger.LogInformation($"[MONITOR_CAPTURA_CTE][{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] Iniciando processamento da empresa [{empresacteselecaomodel.idmaster}] - CNPJ: {empresacteselecaomodel.cnpj}, Razão Social: {empresacteselecaomodel.razaosocial}"); acbrcteservico = new AcbrCTeServico(empresacteselecaomodel, certificadodigitalkeevo); long ultimoNSUretornado = 0; long maxNSUretornado = 0; do { long ultimoNsuConsulta = Convert.ToInt64(empresacteselecaomodel.ultimonsu); var resposta = acbrcteservico.DistribuicaoDFe(); _logger.LogInformation($"[{DateTime.Now}][MONITOR_CAPTURA_CTE][{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] Resultado da busca para empresa [{empresacteselecaomodel.cnpj}:{empresacteselecaomodel.razaosocial}] | CStat: {resposta.CStat} - XMotivo: {resposta.XMotivo}"); if (resposta.CStat.Equals(DOCUMENTO_ENCONTRADO)) //DOCUMENDO ENCONTRADO 138 await ProcessarRespostaDistribuicaoDFe(resposta, empresacteselecaomodel); else if (resposta.CStat.Equals(CONSUMO_INDEVIDO) || resposta.CStat.Equals(CNPJ_DIGITAL)) //CONSUMO INDEVIDO = 656//CNPJ_DIGITAL = 593 return; ultimoNSUretornado = Convert.ToInt64(resposta.ultNSU); maxNSUretornado = Convert.ToInt64(resposta.maxNSU); _logger.LogInformation($"[MONITOR_CAPTURA_CTE][{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] Salvando novas informacoes da empresa [{empresacteselecaomodel.idmaster}] - CNPJ: {empresacteselecaomodel.cnpj}, Razão Social: {empresacteselecaomodel.razaosocial} ------- UltimoNSUEmpresa: {empresacteselecaomodel.ultimonsu} - MaxNSUSefaz: {resposta.maxNSU}/ultimoNSUSefaz:{resposta.ultNSU}"); await SalvarConfiguracaoParametrosEmpresaCte(empresacteselecaomodel, resposta.ultNSU); _logger.LogInformation($"[MONITOR_CAPTURA_CTE][{DateTime.UtcNow:yyyy-MM-dd HH:mm:ss}] INFORMAÇÕES SALVAS [{empresacteselecaomodel.idmaster}] - CNPJ: {empresacteselecaomodel.cnpj}, Razão Social: {empresacteselecaomodel.razaosocial}"); if (ultimoNsuConsulta == maxNSUretornado) break; } while (ultimoNSUretornado <= maxNSUretornado); } } catch (Exception ex) { LogarException(ex, "ProcessarEmpresa"); } finally { //acbrcteservico?.Dispose(); try { semaphoreempresa.Release(); } catch (Exception e) { LogarException(e); } } } Se precisar de alguma outra informação, estou a disposição.
-
Prezados, bom dia ! Preciso de um apoio. Tenho um serviço que roda em um container docker, e ao verificar o log de execução, encontrei o seguinte problema: Sessão não [%s] existe no arquivo de configuração Segue detalhes do erro. info: Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker[0] [MONITOR_CAPTURA_CTE][2024-08-28 11:02:33] Iniciando processamento da empresa [10194] - CNPJ: 53266121000146, Razão Social: AC TREINAMENTOS LTDA fail: Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker[0] [08/28/2024 11:02:33][MONITOR_CAPTURA_CTE][2024-08-28 11:02:33] Erro ao processar documento fiscal. Exceção: Sessão não [%s] existe no arquivo de configuração - Exceção interna: - StackTrace: at Keevo.Pacotes.Infra.ACBrLib.Core.ACBrLibHandle.CheckResult(Int32 ret) at Keevo.Pacotes.Infra.ACBrLib.CTe.ACBrCTe.ConfigGravarValor(ACBrSessao eSessao, String eChave, Object value) at Keevo.Pacotes.Infra.ACBrLib.Core.Config.ACBrLibConfigBase`1.SetProperty[TProp](TProp newValue, String propertyName) at Keevo.Pacotes.Infra.ACBrLib.Core.Config.DFeConfig`1.set_SSLCryptLib(SSLCryptLib value) at Dfe.Monitor.CapturaCte.Servicos.AcbrCTeServico.ConfigurarCertificado(ACBrCTe acbrCTe, CertificadoPorParametrosModel certificadodigitalkeevo) in /src/Servicos/AcbrCTeServico.cs:line 53 at Dfe.Monitor.CapturaCte.Servicos.AcbrCTeServico..ctor(EmpresaParametrosCteSelecaoModel empresacte, CertificadoPorParametrosModel certificadodigitalkeevo) in /src/Servicos/AcbrCTeServico.cs:line 24 at Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker.ProcessarEmpresa(EmpresaParametrosCteSelecaoModel empresacteselecaomodel, SemaphoreSlim semaphoreempresa) in /src/Workers/CapturaCte/CapturaCteWorker.cs:line 195 info: Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker[0] [MONITOR_CAPTURA_CTE][2024-08-28 11:02:30] Iniciando processamento da empresa [10194] - CNPJ: 41125573000129, Razão Social: ESCUTART APARELHOS AUDITIVOS LTDA fail: Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker[0] [08/28/2024 11:02:30][MONITOR_CAPTURA_CTE][2024-08-28 11:02:30] Erro ao processar documento fiscal. Exceção: Sessão não [%s] existe no arquivo de configuração - Exceção interna: - StackTrace: at Keevo.Pacotes.Infra.ACBrLib.Core.ACBrLibHandle.CheckResult(Int32 ret) at Keevo.Pacotes.Infra.ACBrLib.CTe.ACBrCTe.ConfigGravarValor(ACBrSessao eSessao, String eChave, Object value) at Keevo.Pacotes.Infra.ACBrLib.Core.Config.ACBrLibConfigBase`1.SetProperty[TProp](TProp newValue, String propertyName) at Keevo.Pacotes.Infra.ACBrLib.Core.Config.DFeConfig`1.set_SSLCryptLib(SSLCryptLib value) at Dfe.Monitor.CapturaCte.Servicos.AcbrCTeServico.ConfigurarCertificado(ACBrCTe acbrCTe, CertificadoPorParametrosModel certificadodigitalkeevo) in /src/Servicos/AcbrCTeServico.cs:line 53 at Dfe.Monitor.CapturaCte.Servicos.AcbrCTeServico..ctor(EmpresaParametrosCteSelecaoModel empresacte, CertificadoPorParametrosModel certificadodigitalkeevo) in /src/Servicos/AcbrCTeServico.cs:line 24 at Dfe.Monitor.CapturaCte.Workers.CapturaCte.CapturaCteWorker.ProcessarEmpresa(EmpresaParametrosCteSelecaoModel empresacteselecaomodel, SemaphoreSlim semaphoreempresa) in /src/Workers/CapturaCte/CapturaCteWorker.cs:line 195 Ao inserir o log paranóico no fórum, ocorre o seguinte erro: Houve um problema no processamento do arquivo enviado. -200 Desde já agradeço.
-
WebService Distribuicao de DFe: - Inativo ou Inoperante tente novamente.
TimeB256 replied to TimeB256's tópico in Dúvidas gerais
Obrigado pelo retorno, mas era um problema na minha aplicação, onde eu estava passando a senha do certificado criptografada. -
WebService Distribuicao de DFe: - Inativo ou Inoperante tente novamente.
um tópico no fórum postou TimeB256 Dúvidas gerais
Prezados, boa tarde. tenho dois serviços rodando, tanto serviço de cte quanto nfe, e quando eu chamo o distribuicaodfe da o seguinte erro: var resposta = acbrcteservico.DistribuicaoDFe(); System.ApplicationException: 'WebService Distribuição de DFe: - Inativo ou Inoperante tente novamente. PFXDataToCertContextWinApi: Senha informada está errada MotivoRetornadoDoWebService: ""' TRECHO DO CÓDIGO FONTE: CertificadoPorParametrosModel certificadodigitalkeevo = await _kcenterworkscertificadoservico.SelecionarPorParametros ( empresanfeselecaomodel.idempresaevocenter, empresanfeselecaomodel.idmaster, AplicativoModel.en_aplicativo.Manifestacao.ToInt() ); acbrservico = new(empresanfeselecaomodel, certificadodigitalkeevo); var processarDocumentoServico = new ProcessarDocumentoServico(baseworker, _logger); -------NESSA LINHA OCORRE O PROBLEMA var retorno = acbrservico.DistribuicaoDFe(); -------MÉTODO QUE OCORRE O ERRO public DistribuicaoDFeResposta<TipoEventoNFe> DistribuicaoDFe() => acbrnfe.DistribuicaoDFe ( empresanfe.codigonfe.ToInt(), empresanfe.cnpj, empresanfe.ultimonsu ?? ("0").PadLeft(15, '0'), "" ); public DistribuicaoDFeResposta<TipoEventoNFe> DistribuicaoDFe(int acUFAutor, string eCnpjcpf, string eultNsu, string ArquivoOuXml) { int bufferLen = 256; StringBuilder buffer = new StringBuilder(bufferLen); NFE_DistribuicaoDFe method = GetMethod<NFE_DistribuicaoDFe>(); int ret = ExecuteMethod(() => method(libHandle, acUFAutor, ACBrLibHandle.ToUTF8(eCnpjcpf), ACBrLibHandle.ToUTF8(eultNsu), ACBrLibHandle.ToUTF8(ArquivoOuXml), buffer, ref bufferLen)); CheckResult(ret); return DistribuicaoDFeResposta<TipoEventoNFe>.LerResposta(ProcessResult(buffer, bufferLen)); } Conseguem me ajudar por favor ?