Integração Protheus x RM

Produto:

Microsiga Protheus

Ambiente: Compras (SIGACOM)

Ocorrência:

Integração Protheus x RM

Neste documento você verá:


Documentação:

A camada do EAI
Funções e classes utilizáveis no EAI Protheus
Configurar Portais e Webservices
Dicas úteis e dúvidas sobre o EAI Protheus
EAI Protheus
Manual de Integração PIMS MultiCultivos x Protheus (V.12.1.18)
Como realizar testes de Integrações (Mensagem Unica)
CONFIGURAÇÃO - INTEGRAÇÕES - EAI RM
MP - SIGACOM - Como extrair o XML na Integração EAI (Protheus) ?
XML Formatter



Integração RM x PROTHEUS


Veja nas abas abaixo o detalhamento de cada opção e procedimentos:


Criação Webservice: Configurar Portais e Webservices


Toda integração deve-se conter um webservice ativo.


Configurado via appserver.ini:

Port = Definir porta

Environment = Ambiente que utiliza o webservice

ResponseJob = Definir um nome de JOB

127.0.0.1 = IP Localhost (facilita para nossos testes)



Obs: Serviço responsabilidade do Framework.


Ao iniciar o appserver, no browse acesse o ip + porta para que veja o webservice no ar (exemplo: 10.173.10.219:8087/ws01), poderá verificar se seu serviço está ativo ao pesquisar e o mesmo constar como "HABILITADO":


Após pesquise por EAISERVICE e clique no link. Esse serviço é o responsável pela comunicação entre os XML:



Caminho selecionado: Utilizar para configurar SoapUi ou caso tenha uma integração Protheus x Protheus configurar no parâmetro MV_EAIURL2:

Principais parâmetros utilizados:


Parâmetros: PARÂMETROS TOP X PROTHEUS - EAI 1 / EAI 2


  • MV_EAIURL2: Responsável para a comunicação entre Protheus e o outro sistema. Informar o webservice do outro sistema apenas quando o Protheus for ENVIAR a mensagem única;

 

  • MV_EAIWS: Client Service, já vem configurado, porém, quando integrado com o Datasul deve ser alterado;

 

  • MV_EAIUSER: Caso o webservice necessite de alguma autenticação de usuário e senha, nesse parâmetro informe o usuário;

 

  • MV_EAIPASS: Caso o webservice necessite de alguma autenticação de usuário e senha, nesse parâmetro informe a senha;


  • MV_PMSITMU: Indica que a integração do módulo SIGAPMS, via mensagem única, está ativada. (necessário ativar para que o sistema busque o usuário preenchido no XML).


 De/Para Empresas - APCFG050  - (SIGACFG->Ambiente->Schedule) – Tabela XXD:


 

  • Cadastro para informar qual Sistema/Empresa/Filial integrará com o Protheus.
  • Referência = Nome da empresa que integrará com o Protheus <Product:Name>
  • Empresa = Código da empresa <CompanyId>
  • Filial = Filial da empresa <BranchId>
  • Grupo Emp. Protheus = Código da empresa (99 - Protheus)
  • Fil. Protheus = Filial da empresa (01 - Protheus)


Obs: Utilizar o mesmo que é apresentado para logar no Protheus



De/Para Mensagem Única - APCFG070  - (SIGACFG->Ambiente->Schedule) – Tabela XXF:


Cadastro onde fica os registro informando a chave única no Protheus (Valor Interno) e a chave única no outro sistema (RM – Valor Externo):




Configuração Adapter (SIGACFG -> Schedule -> Adapter E.A.I) – Tabela XX4: Como realizar testes de Integrações (Mensagem Unica)



Mensagem Única = Sim

Rotina = rotina de integração (MATA010)

Mensagem = Nome da mensagem única (ITEM)

Envia = Indica se o Protheus envia a mensagem única (antes de exclusão ou após inclusão/alteração).

Recebe = Indica se o Protheus recebe a mensagem única.

Método = Síncrona (Aguarda resposta – Mesma transação) ou Assíncrona (Não aguarda resposta – Outra transação) do outro sistema.

Condição = Regra para quando o Protheus enviara a mensagem única (SA2->A2_EST = ‘SP’), somente fornecedores do estado de SP que enviam mensagem única.

Canal Envio = 2 – EAI - REST

XSD = Caminho dos XSD caso o cliente queira validar XSD com XML enviado/recebido

Versão envio = Versão da mensagem (WHOIS)

Alias = Alias da tabela

Formato = XML




Modelos de mensagens Síncronas e Assíncronas 

 As integrações via Mensageria propõem dois modelos de envio e recebimento de mensagens. O modelo Síncrono e o Assíncrono.


Síncronas:  No modelo de mensagens Síncronas a mensagem é enviada e o sistema que enviou aguarda o processamento da mensagem pelo receptor.


Assíncronas:   Já no modelo Assíncrono a mensagem é enviada e o sistema que a enviou não aguarda o seu processamento. Posteriormente a mensagem será processada no receptor.

A tag InternalId, significa que ela é o identificador único para busca no sistema de onde está sendo enviado o XML.

Quando dentro da BusinessContent possuir outros InternalId, significa que a mensagem possui dependência de outras mensagens.

-> ITEM

-> UNITOFMEASURE

-> WAREHOUSE



Mensagem única/ SOAP UI: Como realizar testes de Integrações (Mensagem Unica)


Essa ferramenta nos auxilia quando é o Protheus que recebe a mensagem.

Em “File -> New SOAP Project” informar o caminho do serviço EAISERVICE



<![CDATA[

"cola o xml aqui""

]]> 


Em “File -> Import Project” importar arquivo com as mensagens já salvas.


XX0 - Cadastro de agents (Schedule)

XX1 - Agendamento (Schedule)

XX2 - Agendamento x Empresa/Filial (Schedule)

XX3 - Transações EAI

XX4 – Adapter EAI

XX5 - Relação de uso de rotinas/módulos

XX6 - Catalogo de personalizações

XX7 - "Itens do Catalogo de personalizações"

XX8 - Configuração de empresas

XX9 - Itens de configuração de empresas

XXF – De/Para EAI

XXD -  XXD (De-para de Empresas do EAI)

Simulação de integração de Pedido de Compras (MENSAGEM ORDER):


XML Exemplo:



Será necessário estar habilitado o adapter pata a rotina MATA120 (Pedido de Compras):



REFERÊNCIA:



EMPRESA/FILIAL XML:



PROTHEUS:


FORNECEDOR

<CustomerInternalId>17|01;F000213</CustomerInternalId>





<PaymentConditionInternalId>17|002</PaymentConditionInternalId>





<CurrencyId>R$</CurrencyId>



<ItemInternalId>17|15724</ItemInternalId>



<UnitOfMeasureInternalId>M2</UnitOfMeasureInternalId>



<WarehouseInternalId>17|1|0000017</WarehouseInternalId>



<CostCenterInternalId>1F8ADAFE-F805-4FC6-9A0C-0E9147C5B898</CostCenterInternalId>



<ProjectInternalId>17|9</ProjectInternalId>



<TaskInternalId>17|9|185|0|0</TaskInternalId>



<SubProjectInternalId>17|9|185|0|0</SubProjectInternalId>






Simulação de integração de Solicitação de Compras (MENSAGEM REQUEST):



XML Exemplo:



Será necessário estar habilitado o adapter para a rotina MATA110(Solicitação de Compras):



E o adapter pata a rotina MATA105 (Solicitação de Armazém):






REFERÊNCIA:

 

 


XML:

 

 

 

PROTHEUS:


<ItemInternalId>1EDB480E-3A91-42EA-98B5-2DFB1BE5D4A4</ItemInternalId>



<WarehouseInternalId>86FF78DB-64CE-4575-8711-359B573D13F7</WarehouseInternalId>



<ProjectInternalId>1|75</ProjectInternalId>



<CostCenterInternalId>C00160C9-CE4A-4E7E-BD3D-5490C7CD0902</CostCenterInternalId>



OBS: Caso o XML possuir mais de uma tag <TaskInternalId> com código diferente será necessário cadastrar todas as demais tags


<TaskInternalId>1|75|3|0|0</TaskInternalId>



<UnitOfMeasureCode>M3</UnitOfMeasureCode>







Certifique-se 

Em caso de alterar o conteúdo deste parâmetro após já ter sido criado o Lote de numerações, é necessário executar a rotina de Ajuste de Numeração da tabela SD9: MATA470 mencionada abaixo para exclusão das numerações que ficarão em desuso.









Pode lhe interessar: