Páginas filhas
  • Manual Integração - PIMS Multicultivos x Protheus - TOTVS ESB

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...


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.

...

Devido á necessidades de tolerância a falhas, garantia de entrega e suporte a grandes volumes, a integração do PIMS com o Protheus via TOTVS ESB foi projetada utilizando o conceito de mensageria assíncrona, com filas específicas para envio e recebimento de dados. Os dados trocados entre os processos são constituídos de arquivos XML que devem ser integrados, seguindo o formato e padrões necessários de cada processo, provendo a independência evolutiva dos produtos e reduzindo as interfaces de contato entre os processos. Tanto para o envio como para o recebimento, o TOTVS ESB provê a tradução dos arquivos XML usando o padrão XSLT ( XML Stylesheet Transformation ) desenhado num mapa de tradução para cada processo/transação.


Nesse caso a Transação EAI consiste na troca de documentos XML específicos para cada processo dentro dos aplicativos envolvidos.

Âncora
_Toc445907633
_Toc445907633
Metas e Restrições da Arquitetura


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
_Toc445907634
_Toc445907634
Metas e Restrições da Arquitetura

...

Nome Lógico ERP

Nome Lógico PIMS

Nome Técnico

Fluxo

10 – Cargos

Cargos (CARGO)

Position

Protheus → PIMS

11 – Funcionários

Funcionários (FUNCIONAR)

Employee

Protheus → PIMS

12 – Disponibilidade Funcionário

Disponibilidade Funcionário (Afastamento e férias)

Situations

Protheus → PIMS

 

Âncora
_Toc445907635
_Toc445907635
Visão Lógica dos Processos

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:
Image Modified


PIMSJMSSender:
Image Modified



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:
Image Modified


PIMSReceiver:
Image Modified

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:
Image Modified

Âncora
_Toc445907636
_Toc445907636
Configuração Base do TOTVS ESB

Usamos o WS-Channel do HTTP Server do ESB configurado na porta 8085 do ESB conforme configuração abaixo:
Image Modified




Configuração do WS-Channel
Image Modified

Âncora
_Toc445907637
_Toc445907637
PIMS

...

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.

...