Histórico da Página
...
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
1. Introdução
2. Representação Arquitetural
3. Metas e Restrições da Arquitetura
4. Metas e Restrições da Arquitetura Visão Lógica das Integrações
5. Visão Lógica dos Processos
6. Configuração Base do TOTVS ESB
7. PIMS
8. Protheus
9. Glossário
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
...
Escopo
Documentar o modelo de integração , e 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 | ||||
---|---|---|---|---|
|
...
Visão Lógica das Integrações
Nessas versões envolvidas temos 12 13 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 | Nome Lógico ERP | Nome Lógico PIMS | Nome Técnico | Fluxo |
5 - Custos dos Itens | Valores de Materiais | ItemCosting | Protheus → PIMS | ||||
| Grupo de Insumos |
|
| ||||
| Insumos |
|
| ||||
8- Unidade de Medida | Unidade de Medida (UNIMEDIA) | UnitOfMeasure | Protheus → PIMS | ||||
9 - Movimento de Estoque | Baixa de Materiais (BRG_BXMATERIAL_EMS) | InventoryTransaction | PIMS → Protheus | ||||
10 – Retorno do Movimento de Estoque | Baixa de Materiais | InventoryTransaction | Protheus → PIMS | ||||
Nome Lógico ERP | Nome Lógico PIMS | Nome Técnico | Fluxo | ||||
11 – Cargos | Cargos (CARGO) | Position | Protheus → PIMS | ||||
12 – Funcionários | Funcionários (FUNCIONAR) | Employee | Protheus → PIMS | ||||
12 13 – Disponibilidade Funcionário | Disponibilidade Funcionário (Afastamento e férias) | Situations | Protheus → PIMS |
Âncora | ||||
---|---|---|---|---|
|
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:
...
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 Valor – InventoryTransaction
- CD_CCUSTO_PADRAO_DISP - Código do CCUSTO Padrão para Disponibilidades
Valor Valor – 204
- EMPRESA_FILIAL_EAI - Controle por Empresa x Filial
Valor Valor – True
- ESTORNO_BAIXA - Se executa estorno de baixa de material
Valor 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 Valor – false
- CHAR_CD_CCUSTO - Caracteres a serem retirados do Código do Centro de Custo
Valor Valor – True / False – A definir na Implantação
- FG_CENTRALIZAR_REGIAO_ADM - Centralizar dados por Região Administrativa
Valor Valor – True / False – A definir na Implantação
- CD_UNI_NEGOCIO_BX - Unidade de Negócio ERP
Valor Valor – A definir na Implantação
Configurações services_client.xml
O Sistema PIMS realiza algumas configurações específicas de seus clientes em arquivo XML, chamadas services_client.xml. Dentro do arquivo services_client.xml, existe variáveis que precisam ser preenchidas conforme as necessidades de cada cliente.
Abaixo serão listadas as variáveis que deverão ser preenchidas respeitando o valor pré-definido pelo ERP.
Variáveis referentes ao processo de integração
...
Valores padrão por Transação
Devido aos modelos conceituais, os cadastros a seguir têm valores padrão quando os registros são provenientes do EMS para o PIMS:
Centro de Custo – CostCenter
Deve haver um Ramo de Custo com Código 1 cadastrado no PIMS com nome a A DEFINIR
Deve haver uma Fase de Custo com cadastrado no PIMS com nome a A DEFINIR
Deve haver uma Ocupação com cadastrado no PIMS com nome a A DEFINIR
Insumo – Item
Deve haver um Principio Ativo com cadastrado no PIMS com Código 999 e nome a A DEFINIR
Cargo - Positions
Deve haver um Cargo com cadastrado no PIMS com nome a A DEFINIR
Baixa de Material – InventoryTransaction
Os dados são gravados na tabela BRG_BXMATERIAL_EMS.
Restrições: Devem estar parametrizados: Unidade Administrativa (CD_INT_ERP) para Empresa,
Centro de Custo (ver CD_INT_ERP), Insumo e Material (CD_INT_ERP e CD_CONTA_ERP) como
Código, Depósito (CD_INT_ERP), Fazenda (CD_INT_ERP) como Estabelecimento.
Configurações do PIMS EAI
Nos arquivos de configurações XML do PIMS ( /proxima/pims/config ) devem haver os parâmetros de tipoDocumento e tipoMovimento com dados específicos do cliente:
<!-- Protheus acima de 000-->
<var name="brg.tipoDocumento" type="java.lang.String" value="001" />
<!-- Protheus acima de 500 -->
<var name="brg.tipoMovimento" type="java.lang.String" value="501" />
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
Âncora | ||||
---|---|---|---|---|
|
...
- MV_PORT: ProtheusReceiver – Nome do Canal WS do TOTVS ESB
Valor ProtheusReceiver
Âncora | ||||
---|---|---|---|---|
|
...