Ir para conteúdo
  • Cadastre-se

dev botao

Tratamento mais eficiente de entrada em contigência


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

Recommended Posts

  • Membros Pro

Bom dia.

Atualmente na hora de enviar uma venda de nfc-e, eu coloco o comando dentro de um bloco try except para em caso de falha no envio eu tratar a exceção.

Então no quando ocorre a falha eu pego a mensagem de erro e verifico se na mensagem tem erro tem alguns códigos como 12002, 12007, 12057, etc.. e quando acho estes códigos na exceção meu sistema já entende que foi falha na comunicação, faz os devidos tratamentos e envia em contigência.

Todavia, ontem quando a sefaz do RS saiu do ar o retorno era o erro http: 500 que eu não tinha catalogado dentro do tratamento das exceções, o que me obrigou a fazer uma intervenção manual em cada cliente para resolver o problema.

O que eu gostaria de saber é se tem alguma forma através do acbr que eu consiga identificar o que é erro de comunicação e o que é erro de rejeição da nfc-e uma vez que a rejeição da nfc-e, como por exemplo ncm errado ou qualquer outro motivo, também gera exceção. Como os colegas tratam isso?

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Obrigado @Rafael Dias. Eu assisti este vídeo.

No caso o que eu gostaria de saber é se tem alguma rotina (no ontransmiterror por exemplo) no qual eu tenha certeza que o erro é de comunicação e não NFC-e reprovada pois os dois casos geram excessão na hora de enviar. Por hora, eu adicionei além dos códigos de erro de http que tinham, a expressão "Erro HTTP:' para quando aparecer na mensagem de erro o sistema já jogar em contigência também.

Link para o comentário
Compartilhar em outros sites

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