Monitoramento, erros e reprocessamento seguro da integração

A fila de integração é a tela de diagnóstico da integração com o Protheus. É nela que você descobre se um pedido chegou ao ERP, por que um cliente não foi criado e o que ainda está esperando processamento. Este artigo mostra como ler a fila, como tratar cada tipo de erro e, principalmente, quando reprocessar é seguro e quando não é.

Onde fica e o que ela mostra

No menu lateral, abra Integrações e auditoria e depois Itens da fila de integração. Cada linha é uma operação que atravessou ou tentou atravessar a integração, nos dois sentidos.

Tela Itens da fila de integração no Vendelo, com a grade de registros e os botões Carregar dados do ERP e Baixar logs da integração no cabeçalho
A fila é o ponto de partida de qualquer diagnóstico. As duas ações do cabeçalho, à direita, aparecem apenas para o usuário master.

A mesma tela serve para o SAP Business One e para o Protheus. O que muda são os modelos de dados e as mensagens de erro, que vêm do ERP configurado.

O que cada coluna significa

ColunaO que trazComo usar
Modelo de dadosO tipo de registro. Cargas iniciais aparecem como Carregar dados do ERP.Filtrar por tipo quando o problema é de um cadastro específico
Chave de identificaçãoO identificador do registro no VendeloCruzar com o registro na tela de origem
Id. no ERPO identificador no ProtheusLocalizar o documento ou cadastro no ERP
AçãoAdicionado, Modificado ou RemovidoEntender o que estava sendo feito
DireçãoERP para Vendelo, ou Vendelo para ERPSaber de que lado investigar
StatusPendente, Sincronizado ou ErroA informação principal
DescriçãoA mensagem devolvida pela integração ou pelo ERPO ponto de partida do diagnóstico
Data de criação e Última atualizaçãoQuando entrou e quando mudou de estadoMedir tempo de processamento e identificar item travado
Grade da fila de integração exibindo linhas com o modelo de dados Carregar dados do ERP, ação Adicionado, direção ERP para Vendelo e status Sincronizado
Linhas de carga inicial no meio da fila, com ação Adicionado e direção ERP para Vendelo.

Os três status

StatusSignificaAção
PendenteAinda não processado ou em processamentoAguardar. Se ficar parado por muito tempo, investigar a integração.
SincronizadoConcluídoNada. Conferir o resultado na tela de destino, se for o caso.
ErroA operação não foi concluídaLer a descrição, corrigir a causa e só então reprocessar.

Uma falha em um registro não derruba o lote. A integração isola o erro naquela linha e segue com as demais. Numa carga grande, o resultado normal é a maioria sincronizada e uma minoria em erro, para tratamento pontual.

Filtrar rápido

O botão Pesquisas favoritas, no cabeçalho da lista, traz três atalhos prontos: Com erros, Pendentes e Sincronizados.

Painel Pesquisas favoritas da fila de integração, com os atalhos Com erros, Pendentes e Sincronizados
No acompanhamento diário, comece sempre por Com erros: é o filtro que mostra o que exige ação humana.

Para investigações mais específicas, use os filtros do cabeçalho das colunas, combinando modelo de dados, direção e período.

Os erros que mais aparecem

A descrição costuma trazer a mensagem original do Protheus. Vale aprender a reconhecer as mais comuns.

MensagemO que aconteceuOnde corrigir
A410NATCLICliente criado pelo Vendelo sem natureza, em ambiente que exige natureza no clienteConfiguração da integração, preenchendo a natureza padrão
Loja do cliente recusada, com o cliente existindoVersão antiga da integração publicada no ambienteRepublicar os artefatos da integração
Conta não encontrada na filialConta corrente do adiantamento não existe naquela filialCadastro no Protheus, na filial
Natureza inválida no títuloNatureza não existe na filialCadastro no Protheus, na filial
Nenhuma liberacao validaFaturamento automático de pedido sem liberação, por bloqueio de crédito ou estoqueLiberar no ERP, ou faturar pelo backoffice
Campo fora do dicionárioColuna física existe na tabela sem registro no dicionárioCompletar o dicionário ou remover a coluna
Já existe registro com esta informaçãoNumeração automática travada num número já usadoJá tratado no pedido de venda. Em outras rotinas, ajustar a numeração no Configurador
Falha de conexão com o bancoDBAccess paradoSubir o DBAccess e reiniciar o serviço dedicado
Recusa ao cancelar pedido pagoNota já transmitida ou baixa que o ERP não estornaResolver no ERP e repetir. É comportamento esperado.

Reprocessar com segurança

Esta é a parte que mais causa estrago quando feita no automático. Antes de reenfileirar qualquer coisa, classifique o erro.

Erro de validação: reprocessar é seguro

Se o ERP recusou a operação por regra de negócio, nada foi gravado. Corrija a causa no Protheus ou na configuração e reprocesse à vontade. Exemplos: natureza faltando, TES inválido, conta inexistente na filial, cliente bloqueado.

Erro de comunicação em uma inclusão: conferir antes

Se a resposta do ERP se perdeu depois de uma inclusão bem-sucedida, o reprocessamento pode duplicar o documento. Antes de reenfileirar uma inclusão que terminou em erro de comunicação ou timeout, confira no Protheus se o documento já existe.

Na prática: abra o pedido ou a solicitação de compra no ERP pelo identificador esperado. Se já estiver lá, o problema é só de registro do resultado, e reprocessar criaria um segundo documento.

O procedimento

  1. Leia a descrição do item em erro e identifique se é validação ou comunicação.

  2. Corrija a causa onde ela está: no Protheus, na configuração da integração ou no cadastro do Vendelo.

  3. Confira a origem, se o erro foi de comunicação em uma inclusão.

  4. Reenfileire: para um registro específico, use a ação de forçar sincronização na tela dele. Para um grupo inteiro, crie uma carga daquele grupo.

  5. Acompanhe o item até Sincronizado e confira o resultado na tela de destino.

Reprocessar sem corrigir a causa só produz outro item em erro e polui a fila. Se o mesmo erro reaparece, o problema não foi resolvido.

Quando nem item na fila aparece

Se uma alteração feita no Protheus não gera nem item na fila, o problema é anterior à integração. Verifique nesta ordem:

  1. Objetos da integração derrubados. Manutenção de dicionário pelo Configurador pode derrubar os objetos que a integração usa para detectar alterações. Existe uma verificação automática que reconstrói sozinha em ciclos curtos; se não quiser esperar, peça ao consultor para refazer a preparação.

  2. Serviço dedicado fora do ar. Uma verificação rápida da integração responde a essa pergunta em segundos.

  3. DBAccess parado. O sintoma é falha de conexão com o banco. Depois de subir, o serviço dedicado precisa ser reiniciado.

  4. Rede bloqueada. Mudança de firewall, IP de origem ou certificado vencido interrompem a comunicação.

  5. Certificado trocado sem atualizar a identificação registrada na configuração. A integração para de propósito.

Logs da integração

Na mesma tela da fila, o usuário master tem a ação Baixar logs da integração, que traz os logs registrados no ERP por período. É o recurso para quando a mensagem da fila não basta.

  • O período padrão é de sete dias. O ERP mantém os logs por poucos dias, então não conte com histórico longo.
  • A permissão real é verificada no servidor: apenas master da empresa e operador Vendelo autorizado.
  • Quando não houver log disponível no ERP, o Vendelo informa isso em vez de baixar um arquivo vazio.

Rotina de acompanhamento

Nos primeiros dias de produção, vale um ritual curto:

  • Diário: abrir a fila filtrada por Com erros e tratar o que apareceu.
  • Diário: conferir se existe item Pendente antigo, o que indica integração parada.
  • Semanal: revisar os erros recorrentes. Erro que se repete é configuração ou cadastro, não acaso.
  • Após qualquer manutenção no Protheus: conferir se os eventos voltaram a chegar.

Perguntas frequentes

Posso apagar itens da fila?

A tela não oferece exclusão, e isso é proposital: a fila é o registro do que aconteceu. Itens em erro devem ser tratados, não removidos.

Um item Pendente há horas significa que travou?

Pode ser volume, se houver carga grande em andamento, ou integração parada. Confira se outros itens estão avançando. Se nada avança, o problema é da integração, não daquele item.

Qual a diferença entre forçar sincronização e criar uma carga?

Forçar sincronização, na tela do registro, enfileira aquele registro sozinho. A carga trata um grupo inteiro de dados. Use o primeiro no tratamento pontual e o segundo em recargas amplas.

A fila mostra tudo que a integração faz?

Mostra o que passa pelo fluxo de eventos e de gravação. Consultas em tempo real, como saldo de estoque e situação financeira, não geram item na fila: elas não replicam nada.

Vejo o mesmo registro várias vezes na fila. É normal?

É. Cada alteração no ERP gera um evento. Um cadastro editado três vezes aparece três vezes, com datas diferentes.

Posso reprocessar um lote inteiro de uma vez?

Pode, criando uma carga do grupo afetado com a opção de atualizar também os existentes. Só faça isso depois de corrigir a causa, e fora do horário de uso.

Quem pode ver a fila?

Depende do perfil de permissão configurado. Vale revisar isso na implantação: a fila mostra identificadores e mensagens do ERP, que é informação operacional legítima mas não precisa estar disponível para todo mundo.

Os logs contêm dados de cliente?

Podem conter conteúdo de requisição. Por isso o acesso é restrito, há registro de quem baixou, e o material de documentação usa apenas logs sintéticos.