CONTEÚDO
- Visão Geral
- Regras e Definições
- Exemplo da seção AddFields
01. VISÃO GERAL
Para o processamento de campos sem tag, sejam eles customizados ou padrão, foi implementada uma melhoria na mensagem EAI CustomerVendor e Seller para integrar os campos ao JSON sem a necessidade de customizar o Protheus.
A integração de campos sem tag está homologada atualmente apenas para o Cadastro de Clientes (CRMA980) e Cadastro de Vendedores (MATA040). As demais rotinas estão em desenvolvimento.
02. REGRAS E DEFINIÇÕES
Processamento no Envio
No processo de envio, os campos customizados e padrão que não possuírem as tags, mas apresentarem conteúdo preenchido, serão adicionados a uma seção denominada "AddFields" no JSON.
Essa seção conterá:
- O nome do campo ("Field").
- O respectivo conteúdo do campo ("Content").
Parâmetro MV_EAIFLDS
Para habilitar o envio dos campos sem tag e/ou customizados nas mensagens EAI é necessário configurar o parâmetro MV_EAIFLDS.
O parâmetro MV_EAIFLDS (Tipo Caracter) contém 4 posições, considerando a seguinte estrutura:
Cada posição do parâmetro representa uma rotina para habilitar o envio dos campos customizados e padrão que não possuem tag, onde:
- 0 - Desabilita o envio dos campos sem tag e customizados.
- 1 - Habilita o envio dos campos sem tag e customizados.
Processamento no Recebimento
A leitura dos campos sem tag para o recebimento de mensagens EAI não requer a configuração do parâmetro MV_EAIFLDS.
Durante o recebimento, os dados presentes na seção "AddFields" seguirão a mesma estrutura definida no envio, contendo os atributos "Field" e "Content". Esses campos serão adicionados ao array correspondente aos campos já tagueados, permitindo o processamento contínuo da mensagem.
- Campos sem tag - mensagem de recebimento:
- Os campos sem tag a serem gravados por exemplo, nas tabelas SA1, AI0 e SA3 são de responsabilidade do cliente, assim como o conteúdo a ser gravado nesses campos;
- Exclusões na seção "AddFields":
- Os campos já contidos em tags não serão incluídos na seção "AddFields".
03. EXEMPLO DA SEÇÃO ADDFIELDS
Exemplo de JSON no envio (cadastro de cliente com campos adicionais):
"AddFields":[ { "Field":"A1_BCO1", "Content":"000" }, { "Field":"A1_BCO2", "Content":"111" }, { "Field":"A1_RISCO", "Content":"A" }, { "Field":"AI0_RECPIX", "Content":"1" }, { "Field":"AI0_EMAPIX", "Content":"TESTE@TESTE.COM.BR " } ]