Offline - Regerar Registros Fila.

Criado por Gabriel Hipólito em 16/02/2023 11:35  ·  Leitura: 2 min

Situação: Offline Service Fila do cliente não estava instalado, com isso os registros da fila não eram condizentes.

 

Solução:

Após reinstalar o serviço fila, segue o processo:

Paralise a integração de dados na filial/Caixa e no servidor, faça um backup dos banco de dados, e depois siga o passo a passo abaixo:

No banco de dados do servidor:

1 - Execute o "SELECT" abaixo e coloque o valor retornado no GEN_FILAINTEGOFFLINE_ID;

SELECT MAX(FILAINTEGOFFLINE.ID) FROM FILAINTEGOFFLINE

2 - Execute o "SELECT" abaixo, e anote os 2 valores retornados(MIN e MAX);

SELECT MIN(FILAINTEGOFFLINE.ID_ORIGEM),
MAX(FILAINTEGOFFLINE.ID_ORIGEM)
FROM FILAINTEGOFFLINE
WHERE FILAINTEGOFFLINE.STATUS IN (0,3)
AND FILAINTEGOFFLINE.CODEMPRESA = :PCODEMPRESA
AND FILAINTEGOFFLINE.MAQUINA = :PMAQECF

3 - Execute o "DELETE" abaixo;

DELETE
FROM FILAINTEGOFFLINE
WHERE FILAINTEGOFFLINE.STATUS IN (0,3)
AND FILAINTEGOFFLINE.CODEMPRESA = :PCODEMPRESA
AND FILAINTEGOFFLINE.MAQUINA = :PMAQECF

4 - Execute o "SELECT" abaixo, e altere o campo "ULTIMOID" com o valor anterior ao valor MIN do item 2;

SELECT *
FROM IGFMAQUINA
WHERE IGFMAQUINA.MAQUINA = :CODEMPRESA
AND IGFMAQUINA.MAQUINAECF = :MAQUINA

No banco de dados da Filial/Caixa:

5 - Execute o "UPDATE" abaixo preenchendo os campos :MIN e :MAX com os valores do item 2;

UPDATE MVINTEGGERAL
SET MVINTEGGERAL.DATAENVIO = NULL,
MVINTEGGERAL.DATASINC = NULL
WHERE MVINTEGGERAL.ORDEM BETWEEN :MIN AND :MAX

Coloque a integração para rodar na filial/caixa e servidor e aguarde a integração.