Produto ainda em fase de piloto. |
Modelo a ser seguido para a integração de Baixas de Títulos a Pagar e/ou Receber enviados do sistema Gesplan para o Protheus.
O envio de dados deve ser realizado via SmartLink utilizando o Padrão CloudEvents para envio de mensagens no formato Json.
O job FwTotvsLinkJob deve ser configurado no schedule, ele é responsável pela leitura das mensagens recebidas na fila do SmartLink.
Abaixo temos o modelo de mensagem enviada pela Gesplan.
O atributo type indica o evento a ser executado no ERP. O job FWTotvsLinkJob identifica uma nova mensagem e executa a classe BxTreadXGsp, responsável pela inclusão/cancelamento da baixas dos títulos via rotina automática (FINA070 ou FINA080, conforme especificado no atributo OperationType). O fonte que contém a classe BxTreadXGsp é o FINIBXTG.prw.
{ "specversion": "1.0", "type": "BxTreadXGsp", "tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69", "time": "2023-07-19T15:18:08.367574Z", "data": [ { "CompanyId": "T1", "BranchId": "D MG 01", "OperationType" : "R", "OperationAction" : "I", "E1_NUM": "200", "E1_PREFIXO": "GES", "E1_PARCELA": " ", "E1_TIPO": "NF", "AUTMOTBX": "NOR", "AUTBANCO": "001", "AUTAGENCIA": "00001", "AUTCONTA": "0000000001", "AUTDTBAIXA": "23/09/2024", "AUTDTCREDITO": "23/09/2024", "AUTHIST": "BAIXA TESTE", "AUTJUROS": 0, "AUTVALREC": 700, "ID": "ID001", "SYSCODE": "ID001" } ] } |
{ "specversion": "1.0", "type": "BxTreadXGsp", "tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69", "time": "2023-07-19T15:18:08.367574Z", "data": [ { "CompanyId": "T1", "BranchId": "D MG 01", "OperationType" : "R", "OperationAction" : "E", "E1_NUM": "200", "E1_PREFIXO": "GES", "E1_PARCELA": " ", "E1_TIPO": "NF", "AUTMOTBX": "NOR", "AUTBANCO": "001", "AUTAGENCIA": "00001", "AUTCONTA": "0000000001", "AUTDTBAIXA": "23/09/2024", "AUTDTCREDITO": "23/09/2024", "AUTHIST": "BAIXA TESTE", "AUTJUROS": 0, "AUTVALREC": 700, "ID": "ID001", "SYSCODE": "ID001" } ] } |
a. Principais Campos e Parâmetros
Campo | Descrição | Tipo | Tamanho(MAX) | Obrigatório | Observação |
---|---|---|---|---|---|
CompanyId | Código do Grupo de Empresas | Caractere | 2 | x | Grupo de Empresa do Protheus. Todos os movimentos da mensagem devem pertencer ao mesmo Grupo de Empresa. Caso existam movimentos de Grupos de Empresa diferentes, deverão ser enviados em mensagens separadas. |
BranchId | Código da Filial | Caractere | 8 | x | Filial do Protheus. Identificação da filial do sistema onde ocorrerá a operação. Em ambientes com Gestão de Empresas o BranchId é composto pela Empresa + Unidade de Negócio + Filial |
OperationType | Operação a ser realizada "P" ou "R" | Caractere | 1 | x | "P" = Título a Pagar "R" = Título a Receber |
OperationAction | Ação de integração a ser realizada | Caractere | 1 | x | "I" = Inclusão "E" = Exclusão |
E1_NUM (para OperationType="R") E2_NUM (para OperationType="P") | Número do documento | Caractere | 9 | x | Será complementado com "0" (zeros) a esquerda, quando o conteúdo passado for inferior ao tamanho do campo na base de dados. |
E1_PREFIXO (para OperationType="R") E2_PREFIXO (para OperationType="P") | Prefixo de identificação do título | Caractere | 3 | x | N/A |
E1_PARCELA (para OperationType="R") E2_PARCELA (para OperationType="P") | Parcela do título | Caractere | 1 | x | Pode ser enviado conteúdo vazio. |
E1_TIPO (para OperationType="R") E2_TIPO (para OperationType="P") | Tipo | Caractere | 3 | x | Conforme tabela SX5 - NF, BOL, FT, etc. |
AUTMOTBX | Motivo da Baixa | Caractere | ? | x | N/A |
AUTBANCO | Código do agente cobrador | Caractere | 10 | Somente para OperationAction igual a "I" | A data deverá ser informada no formato "DD/MM/AAAA". |
AUTAGENCIA | Código da agência do agente cobrador | Caractere | 10 | Somente para OperationAction igual a "I" | A data deverá ser informada no formato "DD/MM/AAAA". Integração irá calcular o vencimento Real conforme a data informada. |
AUTCONTA | Número da conta bancária. | Caractere | 1 | N/A | |
AUTDTBAIXA | Data em que foi/será realizada a baixa. | Caractere | 5 | Para moeda 1-Real, indicar taxa 0 | |
AUTDTCREDITO | Data do crédito bancário referente à baixa do título. | Caractere | 6 | x | Indicar código válido de cliente ou fornecedor, conforme operação especificada no OperationType |
AUTHIST | Histórico da baixa. | Caractere | 2 | x | Conforme operação especificada no OperationType |
AUTJUROS | Valor do Juros | Numérico | 16 | Somente para OperationAction igual a "I" | O valor dos decimais deverá ser separado por "." (ponto). Ex: 1234.56 |
AUTVALREC | Valor do título | Numérico | 40 | Pode ser enviado conteúdo vazio. | |
ID | Código de Controle Gesplan | Caractere | x | N/A | |
SYSCODE | Chave identificadora Gesplan | Caractere | x | N/A | |
Específico | Campo específico do ERP | Variável | Ver mais detalhes da utilização de campos específicos no "item b" abaixo. |
b. Campo específico/customizado
Existe a possibilidade de enviar qualquer outro campo existente no dicionário de dados da tabela SE1 (Contas a Receber) para OperationType do tipo "R" ou SE2 (Contas a Pagar) para OperationType do tipo "P" do ambiente onde está sendo processada a mensagem.
Esse campo pode ser um campo padrão (não exemplificado na tabela acima) ou um campo customizado (criado especificamente para o ambiente Protheus em que a integração está ativa). Nesse caso, basta que seja inserida uma nova linha no conteúdo da mensagem, com o mesmo formato Chave/Valor, conforme exemplo abaixo, onde inserimos os campos E1_CCUSTO (campo padrão do produto) e E1_XDTCLI (campo específico do ERP do cliente) no movimento com OperationType do tipo "R" e E2_CCUSTO (campo padrão do produto) e E2_XDTCLI (campo específico do ERP do cliente) no movimento com OperationType do tipo "P".
{ "specversion": "1.0", "type": "TITreadXGsp", "tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69", "time": "2023-07-19T15:18:08.367574Z", "data": [ { "CompanyId": "T1", "BranchId": "D MG 01", "OperationType" : "R", "OperationAction" : "I", "E1_NUM": "10", "E1_PREFIXO": "GES", "E1_PARCELA": "A", "E1_TIPO": "NF", "E1_NATUREZ": "REC001", "E1_EMISSAO": "19/07/2023", "E1_VENCTO": "20/08/2023", "E1_MOEDA": 1, "E1_TXMOEDA": 0, "E1_CLIENTE": "000001", "E1_LOJA": "01", "E1_VALOR": 10500.50, "E1_HIST": "CAMPO LIVRE", "E1_CCUSTO": "CC001", "E1_XDTCLI": "01/07/2023", "ID": "ID001", "SYSCODE": "ID001" }, { "CompanyId": "T1", "BranchId": "D MG 02", "OperationType" : "P", "OperationAction" : "I", "E1_NUM": "20", "E2_PREFIXO": "GES", "E2_PARCELA": "", "E2_TIPO": "NF", "E2_NATUREZ": "PAG001", "E2_EMISSAO": "19/07/2023", "E2_VENCTO": "20/08/2023", "E2_MOEDA": "2", "E2_TXMOEDA": 4.5, "E2_FORNECE": "000001", "E2_LOJA": "01", "E2_VALOR": 1000, "E2_HIST": "TITULO PAGAR MOEDA 2 - TAXA 4.5", "E2_CCUSTO": "CC001", "E2_XDTCLI": "01/07/2023", "ID": "ID002", "SYSCODE": "ID002" } ] } |
Ponto de Entrada FiTitGsp para permitir a alteração do conteúdo do execauto do FINA040/FINA050