Árvore de páginas


01. DADOS GERAIS

Linha de Produto:Bematech Loja
Segmento:Varejo
Módulo:Bematech PDV
Função:Integração de XML NFCe
Ticket:
Requisito/Story/Issue (informe o requisito relacionado) :DVARMAN1-3441


02. SITUAÇÃO/REQUISITO

        

Problema: Ao efetuar uma venda no qual há falha de comunicação com o SEFAZ a venda entra na "virada de contingencia" onde é inutilizada e primeira nota e efetivada a segunda.

Após o retorno online do SEFAZ a nota inutilizada não está sendo enviada corretamente para o PL devido ao retorno do FM para o PDV.

Análises e evidencias: 

Efetuado um teste em base de homologação e conseguido simular a falha que ocorre em produção.


No dia 24/01/2020 as 15:25 foi efetuada uma venda 37078 no qual no momento da finalização foi simulado uma falha de comunicação com o SEFAZ, a partir daí houve o comportamento normal onde há a virada de contingência onde a primeira nota é cancelada e feito uma cópia da mesma para ser efetivada passando a ser a 37079.

A partir daí todas as notas foram emitidas em contingência.

Passando mais ou menos 5 minutos foi voltado o fiscalmanager para online novamente, nesse momento todas as notas que forma emitidas em contingência foram enviadas para o SEFAZ onde a nota 37078 retornou com o status de inutilizada.

Passando-se alguns instantes o PDV efetuou a consulta no FM solicitando o status das notas emitidas em contingência para que seja enviada ao Practico Live, nesse meio tempo o FM ainda está aguardando o retorno das notas pelo SEFAZ e possivelmente por algum atraso a nota ainda está aguardando validação do SEFAZ e o FM retornou um status para o PDV sem o devido retorno completo do SEFAZ e por isso foi passado para o PDV uma retorno "em branco" fazendo com que a XML não suba corretamente para o PL.


Isso pode ser consultado no log nfceoneapi.log nas linhas 284056 a 284112 onde o mesmo retorna no final um código 99992 porém a falha foi o erro 99994. E nos trechos


"StatusAtual": {
"Codigo": "",
"Descricao": "",
"Mensagem": "",
"Contigencia": true,
"Cancelada": false,
"Inutilizada": true,
"Impressa": false,
"Email": false


Há retornos "em branco".


Anteriormente foi passado uma nota no mesmo cenário e houve o retorno correto entre as linhas 269153 a 269182 segue log anexo.

"statusAtual" : {
"codigo" : "102",
"descricao" : "Inutilizacao de numero homologado",
"inutilizada" : true

Ou seja durante os testes foi possível simular apenas duas vezes durante o dia que foi esse utilizada como exemplo e outra nota 37039.


Qualquer dúvida procurar Amarildo Nalin ou Anderson Fernandes 


 Pacote com a correção: 2019.8.66.0 / HF: 2019.8.93.25

SOLUÇÃO

Efetuado tratamento para quando não houver nada no statusAtual.Codigo utilizar o Código da raiz.

Além disso caso não exista nenhum dos códigos será desconsiderado para que faça a consulta novamente na próxima rodada do timer.