Ir para conteúdo
  • Cadastre-se

dev botao

Inclusão Protocolo autorização posteriormente


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

Recommended Posts

  • Membros Pro
Postado (editado)

Olá,
trabalhamos com o ACBR Plus há bastante tempo, agora estamos finalizando a migração para a Lib e estou verificando uma demanda anterior e gostaria de uma ajuda se possível.
Começo dizendo que a maioria de nossos clientes estão em MG então, como sabemos, precisamos tentar antecipar alguns problemas antes de virar para produção e a minha dúvida é a seguinte:

É sabido que o servidor da SEFAZ MG passa por muitas instabilidades e há um tempo atrás tivemos um problema que algumas NFC-es emitidas em contingência ficaram com o XML sem o protocolo de autorização mesmo autorizadas.

O problema ocorre porque as vezes a nota emitida em contingência é enviada para autorização automaticamente em segundo plano e o tempo de resposta da SEFAZ é maior que o TimeOut ou é retornado algum erro de indisponibilidade, logo a nota não é autorizada no banco de dados e nas tentativas posteriores retorna nota duplicada.
Usando o ACBR Plus contornamos esse problema da seguinte forma:
- Ao retornar duplicidade com o numero da chave o sistema busca na pasta o XML correspondente, ao consultar, o XML completo é retornado, dessa forma atualiza-se as informações gerais no banco de dados inclusive o XML.
Pois bem, gostaria de uma sugestão para contorno desse problema pela LIB, pois quando usamos o comando de consulta o XML completo não é retornado.

Editado por Milton Felipe
  • Consultores
Postado

Olá @Milton Felipe,

Fiquei com umas dúvidas em relação a sua operação.

Você está falando de NFe ou de NFCe?
Na NFe no caso de contingencia você muda de ambiente de emissão e passa a emitir no ambiente de contingencia até a produção voltar. Nesse caso o processo de emissão/autorização é igual, só muda o ambiente.
No caso da NFCe a emissão em contingencia não envolve a transmissão da nota enquanto o ambiente está indisponível, então você não tem que ficar tentando transmitir nada durante as emissões. Quando a conexão com o ambiente de NFCe é reestabelecida aí sim você realiza todo o processo de transmissão dos cupons emitidos antes em contingencia.

Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

  • Membros Pro
Postado (editado)
17 minutos atrás, Alexandre de Paula disse:

Olá @Milton Felipe,

Fiquei com umas dúvidas em relação a sua operação.

Você está falando de NFe ou de NFCe?
Na NFe no caso de contingencia você muda de ambiente de emissão e passa a emitir no ambiente de contingencia até a produção voltar. Nesse caso o processo de emissão/autorização é igual, só muda o ambiente.
No caso da NFCe a emissão em contingencia não envolve a transmissão da nota enquanto o ambiente está indisponível, então você não tem que ficar tentando transmitir nada durante as emissões. Quando a conexão com o ambiente de NFCe é reestabelecida aí sim você realiza todo o processo de transmissão dos cupons emitidos antes em contingencia.

Olá @Alexandre de Paula, agradeço o retorno.
Essa preocupação é somente com a NFC-e.
O processo da contingência é feito sim de forma off-line, se uma NFC-e é enviada e o servidor da SEFAZ está indisponível ele envia essa nota para o limbo (Inutilização ou Cancelamento por substituição) e emite a mesma nota em contingência e mantêm o sistema no modo contingencia off-line por 20 minutos, logo todas as notas nesse intervalo serão emitidas em modo contingencia off-line e o processo se repete dessa forma, esse processo está claro e funciona bem.
O problema não está na emissão, está em algumas situações na autorização posterior:
O sistema automaticamente com intervalo de 15 minutos verifica se existe alguma NFC-e em contingência, se houver ele envia para autorização, se é retornado um erro,  o processo é parado e retornado 15 minutos depois. O que acontece é que às vezes, principalmente após um grande período de indisponibilidade da SEFAZ, quando o servidor volta ele parece ficar sobrecarregado, então quando a NFC-e é enviada para autorização o sistema não recebe retorno, porém ela foi autorizada.
Como o sistema parou de enviar, como dito acima, depois dos 15 minutos ele tenta enviar novamente e é retornado um erro de duplicidade, pois a autorização, apesar de não ter sido recebida como resposta, foi realizada. Com o ACBR Plus essa nota era consultada e na consulta o XML completo era retornado, pela LIB o XML completo não é retornado, então gostaria de uma sugestão de uma maneira de "completar" o XML com o protocolo de autorização.

Editado por Milton Ferreira
  • Curtir 1
  • Consultores
  • Solution
Postado

Bom dia Milton,

Primeiramente, se ocorre algum erro de internet, já mais devemos enviar novamente a nota, pelo simples fato de não sabermos em que momento ocorreu o erro.

Uma vez que esse erro pode ter ocorrido no envio ou no retorno.

A lógica é bem simples, ocorreu erro de internet, carrega o componente com o XML da nota e execute o método Consultar.

Se o erro ocorreu no retorno teremos como resposta o resultado do processamento da nota que pode ser autorizada ou rejeitada.

Se retornar autorizada, automaticamente o XML vai ser atualizado com o protocolo de autorização, passo seguinte é imprimir o DANFE.

Se retornar rejeitada, ai devemos fazer as devidas correções e enviar a nota novamente.

Agora se o erro ocorreu no envio, ao realizar a consulta teremos a rejeição: 217 - NF-e não consta na base de dados da SEFAZ.

Com essa rejeição temos a certeza que a nota não consta na SEFAZ e que o erro ocorreu no envio, o passo seguinte é enviar novamente.

Desta forma você não vai ter mais a rejeição de nota em duplicidade.

Detalhe importante:

O procedimento acima pode ser adotado por quem usa o Componente ou a Lib ou o Monitor.

  • Curtir 1
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

  • Membros Pro
Postado (editado)
12 minutos atrás, Italo Giurizzato Junior disse:

Bom dia Milton,

Primeiramente, se ocorre algum erro de internet, já mais devemos enviar novamente a nota, pelo simples fato de não sabermos em que momento ocorreu o erro.

Uma vez que esse erro pode ter ocorrido no envio ou no retorno.

A lógica é bem simples, ocorreu erro de internet, carrega o componente com o XML da nota e execute o método Consultar.

Se o erro ocorreu no retorno teremos como resposta o resultado do processamento da nota que pode ser autorizada ou rejeitada.

Se retornar autorizada, automaticamente o XML vai ser atualizado com o protocolo de autorização, passo seguinte é imprimir o DANFE.

Se retornar rejeitada, ai devemos fazer as devidas correções e enviar a nota novamente.

Agora se o erro ocorreu no envio, ao realizar a consulta teremos a rejeição: 217 - NF-e não consta na base de dados da SEFAZ.

Com essa rejeição temos a certeza que a nota não consta na SEFAZ e que o erro ocorreu no envio, o passo seguinte é enviar novamente.

Desta forma você não vai ter mais a rejeição de nota em duplicidade.

Detalhe importante:

O procedimento acima pode ser adotado por quem usa o Componente ou a Lib ou o Monitor.

Olá Itallo,
Alterei o processo e deu certo.
Fiz a consulta carregando o XML sem protocolo e obtive o XML posteriormente completo.
Obrigado @Italo Giurizzato Junior e @Alexandre de Paula!

Editado por Milton Ferreira
  • Curtir 1
  • Consultores
Postado

Ótimo! que bom que deu certo!!!

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Curtir 1
Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

  • Este tópico foi criado há 478 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.