Manutenção e Correção da Fila
Se a fila de integração estiver travada, use os procedimentos abaixo para sincronizar ou forçar o reprocessamento de itens.
Atenção
Os comandos desta seção modificam dados diretamente no banco. Sempre faça backup antes de executar e teste em ambiente de homologação.
Identificar o Maior TRANS_ID Disponível
Identifique o maior TRANS_ID disponível nas tabelas relevantes (PRODUTOS, VITRINE_PRODUTOS, VITRINE_PRODUTOS_SKU)
para encontrar o ponto mais recente de atualização do sistema.
SELECT MAX(x.trans_id) AS maior_trans_id
FROM (
SELECT MAX(trans_id) AS trans_id FROM produtos
UNION ALL
SELECT MAX(trans_id) AS trans_id FROM vitrine_produtos WHERE vitrine = 10401
UNION ALL
SELECT MAX(trans_id) AS trans_id FROM vitrine_produtos_sku WHERE vitrine = 10401
) AS x;Importante
Anote o valor retornado (maior_trans_id). Você precisará dele para o próximo passo.
Atualizar Controle da Vitrine (Sincronização)
Este comando atualiza o TRANS_ID_PRODUTO na tabela de controle da vitrine.
Atenção
Este comando IGNORA todos os itens que foram modificados antes do TRANS_ID inserido.
Use apenas quando quiser "pular" a fila atual e sincronizar a partir do ponto mais recente.
UPDATE VITRINE
SET TRANS_ID_PRODUTO = [MAIOR_TRANS_ID_ENCONTRADO]
WHERE VITRINE = 10401;Quando Usar
| Situação | Recomendação |
|---|---|
| Fila muito grande e precisa zerar | ✅ Usar este comando |
| Fila travada há muito tempo | ✅ Usar este comando |
| Precisa reprocessar itens específicos | ❌ Use o método de reenvio individual |
| Sincronização normal do dia-a-dia | ❌ Não é necessário |
Forçar Reenvio de um Produto Específico
Altere o TRANS_ID de um SKU específico para um valor antigo (inferior ao TRANS_ID_PRODUTO atual)
para forçar o reprocessamento pelo próximo ciclo de integração.
UPDATE vitrine_produtos_sku
SET TRANS_ID = [TRANS_ID_ANTERIOR] -- Ex: 839429290
WHERE VITRINE_PRODUTO_SKU = '10591BK9730334'; -- Substituir pelo SKU desejadoComo Funciona
- O sistema verifica produtos com
TRANS_ID > TRANS_ID_PRODUTOda vitrine - Ao definir um
TRANS_IDmenor, o produto volta para a fila de processamento - No próximo ciclo, o produto será reenviado para a plataforma
Dica
Para encontrar o TRANS_ID_ANTERIOR, você pode usar o valor de outro produto que já foi sincronizado
ou simplesmente usar um valor significativamente menor que o atual.
Limpar Produtos Bloqueados
Remove o bloqueio de produtos que podem estar travando a fila (BLOQUEADO = 'T'),
permitindo que o sistema tente processá-los novamente.
UPDATE VITRINE_PRODUTOS_SKU
SET TRANS_ID = NULL
WHERE BLOQUEADO = 'T';Quando Usar
- Quando há produtos com flag
BLOQUEADO = 'T'impedindo o processamento - Após correção de erros que causaram o bloqueio original
- Para forçar uma nova tentativa de envio
Cuidado
Se os produtos foram bloqueados por um motivo específico (ex: dados inválidos), resolver a causa raiz antes de desbloqueá-los evita que travem novamente.
Fluxograma de Manutenção
┌─────────────────────────────────┐
│ Fila de integração travada? │
└───────────────┬─────────────────┘
│
┌───────▼───────┐
│ Muitos itens │───────────────────┐
│ pendentes? │ │
└───────┬───────┘ │
│ Sim │ Não
┌───────▼───────┐ ┌───────▼───────┐
│ Identificar │ │ Verificar │
│ maior TRANS_ID│ │ logs de erro │
└───────┬───────┘ └───────┬───────┘
│ │
┌───────▼───────┐ ┌───────▼───────┐
│ Sincronizar │ │ Reenviar item │
│ TRANS_ID_ │ │ específico │
│ PRODUTO │ │ │
└───────────────┘ └───────────────┘Próximos Passos
- Para analisar erros específicos, consulte Análise de Logs
- Para problemas com pedidos, consulte Pedidos Não Integrados