ProtheusClienteFull (STATUS: PARCIAL)
Documentação Técnica
| Nome do cliente | OSKLEN |
| Nome do projeto | INTEGRAÇÃO LINX → PROTHEUS |
| Biblioteca | wosk_protheus_cliente_full |
| Token da Biblioteca | d1444b58-fc25-4211-845d-a12be3cc09b7 |
|
URL de Produção
|
https://isnapp.illimitar.pro/bibliotecas/d1444b58-fc25-4211-845d-a12be3cc09b7/wosk_protheus_cliente_full |
| URL de Homologação | https://hmg-isnapp.illimitar.pro/bibliotecas/d1444b58-fc25-4211-845d-a12be3cc09b7/wosk_protheus_cliente_full |
| Data | 24/02/2026 |
Sumário
- Documentação Técnica
- Sumário
- Histórico de Versões
- Descrição Geral dos Processos
- Fluxo do Processo
- Critérios de Aceitação
Histórico de Versões
| Data | Versão | Modificado por | Descrição da Mudança |
| 24/02/2026 | 1.0 | Maykon/Gustavo | Criação da documentação do processo de integração de cliente (Full). |
Descrição Geral dos Processos
Este processo realiza a integração completa de cadastros de clientes, garantindo que os dados estejam consistentes antes do envio e que o acompanhamento do processamento seja rastreável.
A captura de registros é feita de forma periódica (cron), a partir de uma visão de dados disponível no ambiente de origem, e os itens capturados são encaminhados para processamento assíncrono por fila.
Em seguida, a fila processa cada item, aplica ajustes de padronização de texto, envia ao destino e atualiza o status do processamento, permitindo reprocessamento, auditoria e notificação quando houver falhas.
Monitor
Descrição do fluxo
- O Monitor é acionado por cron e busca os dados de clientes a partir da visão de origem.
- Para cada registro encontrado, é montada uma chave única do cliente e o item é enfileirado para processamento assíncrono (Queue), com status inicial.
- A data de transferência do registro é utilizada como base para agendamento/ordenação do processamento, caracterizando uso do Conceito Cronológico.
Entrada de dados (query)
A entrada é realizada via query sobre a visão WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_FULL. O WHERE é construído dinamicamente de acordo com a chave recebida.
SELECT
A1_COD,
A1_LOJA,
CGC_CPF,
NOME,
PESSOA,
NOME_REDUZ,
ENDERECO,
BAIRRO,
COMPLEMENTO,
TIPO,
UF,
COD_MUNICIPIO_IBGE,
CEP,
DDI,
DDD,
TELEFONE,
CONTATO,
A1_PFISICA,
A1_INSCR,
INSC_MUNICIPAL,
DATA_NASC,
EMAIL,
COD_PAIS_SISCOMEX,
COD_PAIS_BC,
A1_CONTA,
A1_CONTRIB,
A1_TPESSOA,
A1_SUFRAMA,
A1_CALCSUF,
A1_CODMUN,
STATUS,
DATA_PARA_TRANSFERENCIA
FROM
WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_FULL
WHERE
A1_LOJA = '<A1_LOJA>'
AND A1_COD = '<A1_COD>';
Reestruturação e alteração de dados
- Chave do cliente: composta no formato
A1_LOJA-A1_CODpara identificação única no processamento assíncrono. - Data de transferência: convertida para formato
Y-m-d H:i:se utilizada como referência de agendamento/ordenação na fila (ver Conceito Cronológico).
Operações com dados (Banco de Dados)
- Leitura: visão WOSK_SERVICO_ENVIA_PROTHEUS_CLIENTES_FULL.
- Persistência da fila: inserção do item para processamento na tabela wosk_queue (banco do integrador).
- Controle do Monitor: persistência de posição/continuidade na tabela wosk_monitor (banco do integrador), permitindo retomada do processamento.
Resultado do processamento
Ao final, o registro fica disponível na fila para processamento assíncrono, iniciado com status de aguardando integração e data de referência para ordem de processamento.
Queue
Descrição do fluxo
- A Queue é acionada por cron e consome itens pendentes da fila.
- O item é marcado como em processamento, e o conteúdo é preparado para envio ao destino.
- Após o envio, a fila é atualizada com o resultado: sucesso ou erro, incluindo mensagem e detalhes de retorno.
- Quando há erro e o mesmo cliente já foi capturado no fluxo padrão, o registro do fluxo Full pode ser descartado para evitar duplicidade.
Reestruturação e alteração de dados
- Padronização de texto: remoção de acentos em campos de nome/endereço/bairro/contato e eliminação do caractere
|em nomes, para evitar inconsistências no destino. - Código de país: normalizado para sempre possuir 5 dígitos (com zeros à esquerda quando necessário).
- Identificação do tenant: envio de cabeçalho de identificação do ambiente/tenant junto à requisição.
Operações com dados (Banco de Dados)
- Leitura: consumo de itens da tabela wosk_queue (banco do integrador).
- Atualização: gravação do retorno, mensagem e status final na tabela wosk_queue.
- Log de falhas: quando aplicável, registro de detalhes de erro de banco na tabela wosk_queue_log.
Resultado do processamento
- Sucesso: o cliente é considerado integrado e o item é finalizado com status de sucesso.
- Erro: o item é finalizado com status de erro e mensagem explicativa; o processo pode acionar notificação e/ou evitar duplicidade com o fluxo padrão.
Fluxo do Processo
Critérios de Aceitação
| Processo | Subprocesso | Descrição | Situação esperada |
| Monitor | Captura | Quando acionado por cron, deve obter o registro do cliente na visão de origem e gerar uma chave única no formato A1_LOJA-A1_COD. |
Registro identificado e pronto para encaminhamento. |
| Monitor | Enfileiramento | O registro capturado deve ser enfileirado para processamento assíncrono, com status inicial e agendamento baseado em DATA_PARA_TRANSFERENCIA (conceito cronológico). |
Item persistido em wosk_queue e ordenado/agendado conforme a data. |
| Queue | Processamento | Ao consumir o item, deve aplicar padronização de texto e enviar ao destino; em seguida, deve atualizar o resultado na fila. | Fila atualizada com status de sucesso ou erro e mensagem correspondente, mantendo rastreabilidade. |
| Queue | Controle de duplicidade | Quando houver falha no envio e o mesmo cliente já existir no fluxo padrão, o registro do fluxo Full deve ser descartado para evitar processamento duplicado. | Sem duplicidade de registros na fila para o mesmo cliente. |

Nenhum comentário