Histórico da Página
Manual Integração - PIMS Multicultivos x Protheus utilizando o Totvs ESB 13/11/2015
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
...
Finalidade
Este documento tem como objetivo apresentar uma visão geral arquitetural abrangente de como funciona o processo de
Integração entre os ambiente envolvidos.
Escopo
Documentar o modelo de integração, suas interfaces e evidencias de homologação.
Âncora | ||||
---|---|---|---|---|
|
...
Tolerância a Falhas – em caso de interrupção inesperada dos serviços, o ambiente é capaz de restabelecer as comunicações
Modelo Assíncrono de Mensagens – melhor desempenho e desacoplamento, maior complexidade, maior garantia de tolerância a falhas.
Desacoplamento – os aplicativos integrados têm seus documentos padronizados e independentes do ESB, e para cada transação o próprio ESB executa a identificação / transformação específica.
Modelo ACID – as transações de negócio respeitam o modelo ACID para evitar dados inconsistentes.
Âncora | ||||
---|---|---|---|---|
|
Nessas versões envolvidas temos 12 transações homologadas, como segue na listagem abaixo:
Nome Lógico ERP | Nome Lógico PIMS | Nome Técnico | Fluxo |
1 - Centro de Custo | Centro de Custos (CCUSTO) | CostCenter | Protheus → PIMS |
2 - Fornecedores | Fornecedores (PRESTSERV) | CustomerVendor | Protheus → PIMS |
3 - Saldos Contábeis do Período | Despesas Gerais (BRG_INTDG) | PeriodGLBalance | Protheus → PIMS |
4 – Depreciações de Bens | Depreciações (BRG_INTDE) | AssetDepreciation | Protheus → PIMS |
...
Envio do EMS para o PIMS
O Processo no Protheus insere na Fila EAI de Saída ( Protheus EAI ) a mensagem, que é dispara via WS-I para o TOTVS ESB ( Integrator 5.1.X ) usando o componente ProtheusReceiver, que por sua vez identifica a mensagem, traduz usando o XSL específico para o processo do PIMS, e deposita a mensagem XML na fila JMS de Inbound (Entrada) que será consumida pelo MessageReceiver, que por sua vez traduz a mensagem para as tabelas do PIMS.
Nessa situação as mensagens são processadas no sentido Protheus → PIMS, não necessitando de controle de processamento, e em caso de erro podem ser reenviadas novamente, pois, caso o registro já exista no PIMS, ele será atualizado, e caso não exista será inserido.
Em nenhum dos cadastros, foi contemplada a exclusão de dados nesse sentido, pois o PIMS tem severas restrições de integridade de dados.
Diagrama do envio de transação no sentido Protheus → PIMS dos cadastros e retorno da Baixa:
Usamos o IdentifierMensagem que identifica a mensagem e roteia adequadamente para o tradutor específico para o processo do PIMS (veja nomes lógicos), usando o JMSSender para o servidor do PIMS.
Configurações do ESB:
ProtheusReceiver:
PIMSJMSSender:
Envio do PIMS para o Protheus
O Processo no PIMS insere registros na tabela de controle das baixas (BRG_BXMATERIAL_EMS) e gera um XML baseado no modelo XSD:BaixaMaterial.xsd que é depositado numa fila interna JMS de Outbound que será consumida via JMS ( Java Message Service ) pelo TOTVS ESB usando o JMSReceiver, que por sua vez traduz o documento XML usando o XSL específico para a InventoryTransaction, e envia o XML traduzido para o Protheus WS, nesse momento o Agente do ERP consome as mensagens de requisição de baixa de material. Após consumir as mensagens, o processo do Protheus gera o retorno no Protheus EAI que é consumido pelo TOTVS ESB e enviado para o PIMS informado o sucesso ou erro das baixas.
Diagrama do envio de transação no sentido PIMS → Protheus da Baixa de Material:
Configurações do ESB:
ProtheusSender:
PIMSReceiver:
Para o retorno do Protheus para o PIMS da Baixa de Material usamos o mesmo diagrama dos cadastros, pois o Protheus WS usa o mesmo canal de retorno WS Protheus Receiver:
Âncora | ||||
---|---|---|---|---|
|
...
O PIMS deve estar devidamente instalado e configurado em ambiente de Homologação e Produção, com versão Novembro 2014 ou superior.
Parâmetros
O Sistema PIMS utiliza configurações padronizadas ou específicas, chamadas de parâmetros.
Um parâmetro é uma variável que atua como elemento chave na execução de determinados processamentos. De acordo com seu conteúdo é possível obter diferentes resultados.
- USING_INVENTORY_LIST - Determina se o envio de dados será em lista de itens ou item a item
Valor – True
- NOME_TRANSACAO_BAIXA - Nome da transação de Movimento de Estoque
Valor – InventoryTransaction
- CD_CCUSTO_PADRAO_DISP - Código do CCUSTO Padrão para Disponibilidades
Valor – 204
- EMPRESA_FILIAL_EAI - Controle por Empresa x Filial
Valor – True
- ESTORNO_BAIXA - Se executa estorno de baixa de material
Valor – True
- FG_MOV_ESTOQUE_SINC - Permite configurar as integrações de movimentação de estoque para executarem de forma síncrona ou assíncrona.
Valor – false
- CHAR_CD_CCUSTO - Caracteres a serem retirados do Código do Centro de Custo
Valor – True / False – A definir na Implantação
- FG_CENTRALIZAR_REGIAO_ADM - Centralizar dados por Região Administrativa
Valor – True / False – A definir na Implantação
- CD_UNI_NEGOCIO_BX - Unidade de Negócio ERP
...
O BackOffice Protheus deve estar devidamente instalado e Configurado em ambiente de Homologação e Produção, com versão 11.80 ou superior.
Parâmetros
O Sistema Microsiga Protheus utiliza em suas rotinas configurações padronizadas ou específicas, chamadas de parâmetros.
Um parâmetro é uma variável que atua como elemento chave na execução de determinados processamentos. De acordo com seu conteúdo é possível obter diferentes resultados.
Todas as variáveis são iniciadas pelo prefixo MV_ e agem sobre diversas operações no Sistema.
- MV_EAIURL - Endereço WebService que Receberá os Dados Enviados
(Exemplo: http://10.10.0.246:8080/ws/esb/wsdl11/literal/rpc - Endereço WS-I do TOTVS ESP).
- MV_PIMSINT - Habilita integração Protheus x PimsGraos
Valor .T.
- MV_PORT: ProtheusReceiver – Nome do Canal WS do TOTVS ESB
Valor ProtheusReceiver
Âncora | ||||
---|---|---|---|---|
|
...