Ir para conteúdo
  • Cadastre-se

dev botao

Problema com Distribuição - Erro 12002 - TimeOut


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

Recommended Posts

Postado
 
 
 
  Em 20/05/2019 at 13:21, Mom disse:

Esse aplicativo em Java de Manifestação do Governo, também está com problemas de lentidão e está dando mensagem TimeOut (imagem em anexo)... Pois, deve está usando o mesmo WebService de Distribuição de NF-e do Ambiente Nacional.

Só que o legal desse aplicativo do Governo que ele tem uma rotina muito boa para ficar dando Loop, mesmo que parece que vai ficar eternamente... rsss... E trata bem os erros do WebService.

O legal de os desenvolvedores acessarem direto o WebService é implementar essa rotina em seus ERPs e não ficar usando softwares de terceiros e importando de um lado para o outro...

 

Expandir  

Lentidão dos webservices do governo é comum, existem técnicas de programação que podemos fazer para minimizar isso.

Erro de timeout do webservice pode ser tratado com um simples try..except no nosso software.

Podemos fazer uma thread para ficar consultando o webservice de tempos em tempos.

Acho que o povo reclama demais.

 

 

  • Obrigado 1

leogregianin@gmail.com | github.com/leogregianin

Postado
  Em 20/05/2019 at 13:21, Mom disse:

Só que o legal desse aplicativo do Governo que ele tem uma rotina muito boa para ficar dando Loop, mesmo que parece que vai ficar eternamente... rsss... E trata bem os erros do WebService.

Expandir  

Atualmente eu faço isso também...

Se der algum exception de conexão com o WebService eu tento novamente. Controlando o tempo de espera para tentar novamente e o quantas vezes irá tentar.

Em resumo, a questão de TimeOut é "quase" nula aqui. 

Por padrão no aplicativo vai os seguintes parâmetros:

  1. TimeOut: 30 segundos (sim é um valor alto, mas esse WebService é complicado).
  2. Número Tentativas: 10 tentativas.
  3. Tempo de espera entre as tentativas: 5 segundos.
  • Curtir 2
  • Obrigado 1
Postado
  Em 20/05/2019 at 13:28, Leonardo Gregianin disse:

Lentidão dos webservices do governo é comum, existem técnicas de programação que podemos fazer para minimizar isso.

Erro de timeout do webservice pode ser tratado com um simples try..except no nosso software.

Podemos fazer uma thread para ficar consultando o webservice de tempos em tempos.

Acho que o povo reclama demais.

 

 

Expandir  

Sim... Colega... a lentidão nos WebServices do Governo é comum (pela quantidade de impostos que pagamos jamais deveria ser assim), se for gratuito mas se for pago como no caso do SERPRO é instantâneo as consultas, não precisa ficar horas criando rotinas para tratar erros e fazer malabarismo loucos por uma simples consulta de WebService.

Todos nós temos que nos contentar (com toda essa quantidade de impostos que pagamos) com isso e ponto final... kkk

Acho que pedir um servicinho decente para o governo é reclamar de mais... só me resta rir numa dessa😂

Postado
  Em 20/05/2019 at 13:30, Gabriel Franciscon disse:

Atualmente eu faço isso também...

Se der algum exception de conexão com o WebService eu tento novamente. Controlando o tempo de espera para tentar novamente e o quantas vezes irá tentar.

Em resumo, a questão de TimeOut é "quase" nula aqui. 

Por padrão no aplicativo vai os seguintes parâmetros:

  1. TimeOut: 30 segundos (sim é um valor alto, mas esse WebService é complicado).
  2. Número Tentativas: 10 tentativas.
  3. Tempo de espera entre as tentativas: 5 segundos.
Expandir  

Quando uso DistribuicaoDFePorChaveNFe está me retornando sempre o recibo, está assim para vcs tmb?

  • Membros Pro
Postado
  Em 22/05/2019 at 18:22, LIDERNetwork disse:

Sim isso mesmo, a NFe já esta em ciência da operação e mesmo assim só traz o recibo. Seria alguma coisa que estou fazendo de errado?

Expandir  

Estranho, aqui depois de ter a ciência ele trouxe normal o xml completo, antes da ciÊncia só trazia o recibo.

 

Cola ai seu fonte...

Postado
  Em 22/05/2019 at 18:26, luisclaudio_jr disse:

Estranho, aqui depois de ter a ciência ele trouxe normal o xml completo, antes da ciÊncia só trazia o recibo.

 

Cola ai seu fonte...

Expandir  
 if DM.ACBrNFe1.DistribuicaoDFePorChaveNFe(UFEmitente, CNPJEmitente, ChaveAcesso) then
//    if DM.ACBrNFe1.DistribuicaoDFe(UFEmitente, CNPJEmitente, NSU,'',ChaveAcesso) then
    begin
    PastaSalvar := ExtractFilePath( Application.ExeName ) + 'NFe\XML_Download\';

    if not DirectoryExists(PastaSalvar) then
    ForceDirectories(PastaSalvar);

      Status := DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat;

      if Status = 138 then
      begin
        for i := 0 to DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1 do
        begin

         if (DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].schema = schprocNFe) then
         //verifica se o arquivo é o XML da NFe (-nfe.xml)
          begin
              ArqXML := TStringStream.Create(DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].XML);
              XMLDocument1.LoadFromStream(ArqXML);
              XMLDocument1.Active;

              XMLDocument1.SaveToFile(PastaSalvar+ChaveAcesso+'-nfe.xml');
              {Gravando no banco de dados o download da nota fiscal}
              GravaXMLnoBanco(XMLDocument1.XML.Text, ChaveAcesso);
              ArqXML.Free;
              Result := true;
          end;
        end;
      end else
      Result := false;
  end;

veja o codigo, ja tentei tmb por DistribuicaoDFe e n consigo baixar nada...

Postado
ACBrNFe.DistribuicaoDFePorChaveNFe(CodigoUF, CNPJ, ChaveDFe);
if ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeIntcStat = 138 then
begin
  for i := 0 to ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1 do
  begin
    try
      ArqXML := TStringStream.Create(ACBrNFe.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].XML);
      ArqXML.LoadFromStream(ArqXML);
      ArqXML_Nome := ;
      ArqXML.SaveToFile(ACBrNFe.Configuracoes.Arquivos.PathSalvar + ChaveDFe + '-nfe.xml');
    finally
      FreeAndNil(ArqXML);
    end;
  end;
end;

Funciona para mim assim

Postado

A diferença está na verificaçao se é um XML de NFe ou so de resumo nessa minha linha aqui:

DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.schema = schprocNFe

o resto é a mesma coisa

Postado (editado)
ACBrNFe1.DistribuicaoDFePorChaveNFe(CodigoUF, CNPJ, ChaveDFe);
if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeIntcStat = 138 then
begin
  for i := 0 to ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1 do
  begin
    if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].schema = schprocNFe then
    begin
      try
        ArqXML := TStringStream.Create(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[i].XML);
        ArqXML.LoadFromStream(ArqXML);
        ArqXML_Nome := ;
        ArqXML.SaveToFile(ACBrNFe1.Configuracoes.Arquivos.PathSalvar + ChaveDFe + '-nfe.xml');
      finally
        FreeAndNil(ArqXML);
      end;
    end;
  end;
end;

Assim então

Editado por Vicente Carletto Scalfoni
Postado
  Em 22/05/2019 at 21:21, marcio-carneiro disse:

Uma dúvida: vocês salvam também os eventos todos? Ou somente  inicialmente o resumo, depois o xml no banco de dados? 

Expandir  

Aqui eu salvo tudo... Até mesmo pra ter todo histórico. Vai que amanhã ou depois essa nota é cancelada ou criam uma carta de correção. 

Dessa forma eu tenho o evento de cancelamento, com a justificativa e a CCe com a correção.

Porém falando de arquivo XML em si eu gravo apenas os XML's essenciais: XML completo, CCe e cancelamento. 

 

Faço um "mestre-detalhe" nas informações. (como esse exemplo de nota que tem vários eventos)

Screenshot_5.thumb.png.61320436c532f6769d9d916e1ffa3a4d.png

  • Curtir 1
Postado

Hoje pela amanhã alguém está conseguindo buscar as notas pelo método DistribuicaoDFePorUltNSU. Fiz estas configurações infelizmente comigo não funcionou, continuo recebendo a mensagem de time out e meu intervalo de tempo já esta em 50000 milisegundos.

  Em 23/05/2019 at 14:04, Filipe Doblinski disse:

estava sofrendo muito com esse problema ai encontrei um site: Freitas Automação (http://www.freitasautomacao.com.br/noticias/erro-nfe-inativo-ou-inoperante-tente-novamente/) e depois que mudei a configuração da maquina consegue retorno de 100% das requisições sem problema, fiz em um cliente hoje, vou fazer em mais alguns e posto o resultado, mas aparentemente resolveu o problema

 

 

NewItem1048.jpg

Expandir  

 

  • Consultores
Postado

Boa tarde,

Essa configuração é sugerida para que utiliza certificado A3, se você utiliza A1 aconselho configurar com libOpenSSL, desta forma você fica livre de qualquer configuração e atualização do Windows.

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • 9 meses depois ...
Postado

boa noite pessoal, sei que o tópico é antigo mas o problema ainda persiste junto a sefaz, sempre dando erro de timeout, não uso acbr para manifestação das notas, uso tecnospeed ja bastante tempo e tambem não estou conseguindo baixar o xml, fazer a manifestação ate que funciona normal , mas baixar o xml so com reza, tem hora que funciona, tem hora que na maioria das vezes não da certo.

entrei em contato com o pessoal do arquivei como ja disseram eles tem solução, mas cobram bem caro para baixar cada xml, mas é mais conta do que o site da serpro de onde eles fazen a conexão para baixar o xml.

meus clientes estão puto sempre dizendo que o problema é do meu sistema e que outros clientes estão baixando normal os xml, so que o pessoal da tecnospeed ja enviaram milhões de e-mail para a sefaz dizendo sobre esse problema de lentidão mas sempre retornam a mesma explicação, que o servidor deles estão sem capacidade de processar todas as requisições e que o download entra em fila de solicitação, enfim tiraram o dele da reta e sempre sobra para os programadores.

no fritar dos ovos, existe outra solução ? ou temos que nos sujeitar a site como o arquivei,serpro ou o fsist ou temos que continuar com esses erros da sefaz ?

qual opnião de voces ? qual solução encontraram

 

  • 4 meses depois ...
Postado

estranho pq tenho cliente que funciona 100% e outros da erro em quase todas as notas manifestadas,  segundo o pessoal da tecnospeed as notas entram em fila de liberação do xml

a manifestação não entra em fila, mas a baixa sim.

 

so que o cliente nosso não quer saber onde é o problema, ele quer funcionando

  • Moderadores
  • Solution
Postado
  Em 18/07/2020 at 00:21, Fernando Rodrigo disse:

estranho pq tenho cliente que funciona 100% e outros da erro em quase todas as notas manifestadas,  segundo o pessoal da tecnospeed as notas entram em fila de liberação do xml

a manifestação não entra em fila, mas a baixa sim.

 

so que o cliente nosso não quer saber onde é o problema, ele quer funcionando

Expandir  

O problema é que a software house é culpada de tudo. então sugiro passar as informações para eles abrirem reclamação junto ao sefaz e aos demais orgãos.

deve-se explicar sempre que nào é o sistema, não depende dele somente, tem toda uma estrutura por trás do governo em que não temos o mínimo dominio

  • Curtir 2
Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: juliomar_m@yahoo.com.br
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

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

The popup will be closed in 10 segundos...