Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. DADOS GERAIS

SolucaoCrossTOTVS Varejo Gestão Fiscal

Produto:

Solucoes_totvs_cross
Linha de Produto:

linhas_totvsLinha Fiscal Manager 

Segmento:

Segmentos_totvs
Segmento Varejo

Módulo:

modulos_cross_segmentosFiscal Manager

Função:Fiscal ManagerInutilizar
País:Brasil
Ticket:16568975
Requisito/Story/Issue (informe o requisito relacionado) :DVARLVN-8249


02. SITUAÇÃO/REQUISITO

...

Ao ocorrer "Falha de comunicação com a SEFAZ" durante a emissão de uma venda, o Fiscal Manager entra em modo de contingência, conforme configurado no properties. Nesse cenário, é gerada uma venda em contingência espelhada a venda original.

Quando a comunicação com a SEFAZ é restabelecida e as vendas em contingência são autorizadas, o Fiscal Manager consulta a venda original que havia falhado na comunicação com a SEFAZ, se a venda original apresentar autorizada, o documento é cancelado. Caso contrário, se apresentar rejeitada, o número do documento é inutilizado.

No entanto, ao consultar a situação do documento na SEFAZ, está ocorrendo um erro: 404, e o processo de inutilização da numeração entra em um loop, repetindo-se indefinidamente.

03. SOLUÇÃO

...

Efetuado o ajuste na classe InutilizationManager.java para incluir

...

o tratamento da exceção

...

404  originada do SEFAZ.

...

Agora, quando essa exceção ocorrer, o processo

...

será encerrado com um erro, evitando assim a continuidade do loop e a duplicação das informações.

e duplicando as informações.

...

Bloco de código
switch (inutTransaction.getStatus()) {

...


Add 

...

comment79 case ReturnCodes.RETURN_PREFIXO_NAO_PERMITIDO:

...


Add 

...

comment80 inutTransaction.setExecutado(true);

...


Add 

...

comment81Minus   TransactionDAO dao404 = TransactionDAO.getInstance();

...


Add 

...

comment82Minus   Transaction transaction404 = dao404.getFromModeloSerieENumeroNF(inutTransaction.getModelo(),

...


Add 

...

comment81Plus   Transaction transaction404 = dao.getFromModeloSerieENumeroNF(inutTransaction.getModelo(),

...


Add 

...

comment83 82 inutTransaction.getNfeSerie(),

...


Add 

...

comment84 83 inutTransaction.getNNFIni());

...


Add 

...

comment85 84 transaction404.setStatus(ReturnCodes.RETURN_PREFIXO_NAO_PERMITIDO);

...


Add 

...

comment86 85 transaction404.setMotivo("Falha ao inutilizar nota rejeitada. Prefixo de namespace nao permitido");

...


Add 

...

comment87Minus   dao404.update(transaction404);

...


Add 

...

comment86Plus   dao.update(transaction404);

...


Add 

...

comment88 87 break;

...


Add 

...

comment89 88 case ReturnCodes.INUTILIZATION_IN_QUEUE:

...


Add 

...

comment90 89 inutTransaction.setExecutado(false);




04. DEMAIS INFORMAÇÕES

Não se aplica

05. ASSUNTOS RELACIONADOS

Não se aplica



Templatedocumentos