Árvore de páginas

Versões comparadas

Chave

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

Integração Protheus x RM

Compras (SIGACOM)

Produto:

Microsiga Protheus

Ambiente: 

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

  • Criação Webservice
  • Parâmetros
  • De/Para Empresas
  • De/Para Mensagem Única
  • Configuração Adapter
  • InternalId
  • Mensagem única/ SOAP UI
  • Tabelas EAI
  • Integração Pedido de Compras (ORDER)
  • Integração XML Solicitação de compras (REQUEST)

INTEGRAÇÃO

Integração

RM x PROTHEUS

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


Deck of Cards
effectDuration0.5
id1
effectTypefade
Card
defaulttrue
effectDuration0.5
idMSGEAI
labelCriação Webservice

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:



Clicar no link "Descrição do Serviço (WSDL)", o link que abrir irá utilizar para configurar tanto o Soap quanto o MV_EAIURL2:

Image Added


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


Image RemovedImage Added


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelParâmetros

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_RESTINC: Indica se restringe a inclusão de pedido de compras sem solicitação de compras para usuários não cadastrados como compradores. Conteúdo do parâmetro igual Sim;


  • MV_SLMPUSR: Define a utilização do usuário enviado pelo TOTVS Obras e Projetos. Este usuário é armazenado no campo C7_USER da tabela de pedidos de compras;


  • 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);


  • MV_SLMPREP: Define o prefixo dos títulos a pagar;


  • MV_SLMCOND: Condição de pagamento padrão;


  • MV_SLMTS: Tipo de Saída (TES) padrão;


  • MV_SLMNATP: Natureza padrão do Título a Pagar;


  • MV_SLMNATR: Natureza padrão do Título a Receber;


  • MV_SLMPROP: Produto padrão da despesa avulsa (título a pagar);


  • MV_SLMCOMP: Define o nome do usuário comprador default para alçada/WS;


  • MV_SLMNTPV: Natureza padrão do Pedido de Venda.


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelDe/Para Empresas

 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



Card
defaulttrue
effectDuration0.5
idMSGEAI
labelDe/Para Mensagem Única

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):



Obs:

No cadastro de Adapter da integração de cadastro de Fornecedores (Rotina: MATA020 - Mensagem: CUSTOMERVENDOR), para que haja integração da informação de Tipo de Conta (campo A2_TIPCTA) do Cadastro do Fornecedor, o XML de ENVIO em questão deve estar em uma versão a partir da 2.004, bem como os devidos cadastros de Adapters.




Card
defaulttrue
effectDuration0.5
idMSGEAI
label Configuração Adapter

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.

Card
defaulttrue
effectDuration0.5
idMSGEAI
labelInternalId

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


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelCriação Webservice

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)

Image Removed

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":

Image Removed

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

Image Removed

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

Image Removed


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelMensagem única/ SOAP UI

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.


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelTabelas EAI

XX0 - Cadastro de agents (Schedule)

XX1 - Agendamento (Schedule)

XX2 - Agendamento x Empresa/Filial (Schedule)

XX3 - Transações EAI

XX4 – 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 – XXF - De/Para EAI

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

Card
defaulttrue
effectDuration0.5
idMSGEAI
labelIntegração Pedido de Compras (ORDER)

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


XML Exemplo:


View file
namePedido de Compras.xml
height250


Expandir
titleXX4 – Adapter EAI


OBS: Cadastrar UserInternalId como comprador


Será necessário estar habilitado o adapter pata a rotina :


  • MATA120 (Pedido de Compras):




  • MATA010 (Cadastro de Produto):


Image Added



  • AGRA045 (Local de Estoque):


Image Added



  • PMSA200 (Projeto):


Image Added



  • PMSA203 (Tarefas do Projeto):


Image Added




Expandir
titleXXD - (De-para de Empresas do EAI)

Image RemovedImage Added


REFERÊNCIA:



EMPRESA/FILIAL XML:



PROTHEUS:


Expandir
titleXXF – De/Para EAI
Expandir
titleFornecedor

FORNECEDOR

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



Image RemovedImage Added



Expandir
titleCondição de pagamento

<PaymentConditionInternalId>17|002</PaymentConditionInternalId>



Image Removed



Image Added
Expandir
titleMoeda Contábil

<CurrencyId>R$</CurrencyId>



Image RemovedImage Added

Expandir
titleProduto

<ItemInternalId>17|15724</ItemInternalId>



Image RemovedImage Added

Expandir
titleUnidade de Medida

<UnitOfMeasureInternalId>M2</UnitOfMeasureInternalId>



Image RemovedImage Added

Expandir
titleLocal de Estoque

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



Image RemovedImage Added

Expandir
titleCentro de Custo

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


Image Removed


Image Added


Expandir
titleProduto

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


Image Added


Image Added

Expandir
titleLocal de Estoque

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


Image Added


Image Added

Expandir
titleProjeto

<ProjectInternalId>1|75</ProjectInternalId>


Image Added


Image Added

Expandir
titleCentro de Custo

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


Image Added


Image Added


Obs:

Neste exemplo do XML em que as informações do Centro de Custo estão no XML na tag "<ListOfApportionOrderItem>" o Centro de Custo será importado no Pedido de Compras na tela de Rateio de Centro de Custos (tabela SCH):

Verificando junto à Equipe de Produto, no programa MATI120 do Compras do Protheus que recebe o XML do RM, neste exemplo do XML quando recebe a informação e é utilizada a tag "<CostCenterInternalId>" dentro da "<ListOfApportionOrderItem>" o padrão é ela ser importada para a tela de rateio (tabela SCH). Mesmo sendo 1 ou mais centro de custo.


Image Added


Para o Protheus receber informação de Centro de Custo no Item do Pedido na SC7 as informações do mesmo devem estar contidas na tag "<CostCenterInternalId>" dentro da "<Item>" do arquivo XML diretamente.

Se caso, tiver a tag dentro do "Item" e também dentro do "ListOfApportationOrderItem", o que vai prevalecer é que esta dentro do "ListOfApportationOrderItem".




Expandir
titleProduto

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


Image Added


Image Added

Expandir
titleLocal de Estoque

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


Image Added


Image Added

Expandir
titleProjeto

<ProjectInternalId>1|75</ProjectInternalId>


Image Added


Image Added

Expandir
titleCentro de Custo

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


Image Added


Image Added


Obs:

Neste exemplo do XML em que as informações do Centro de Custo estão no XML na tag "<ListOfApportionOrderItem>" o Centro de Custo será importado no Pedido de Compras na tela de Rateio de Centro de Custos (tabela SCH):

Verificando junto à Equipe de Produto, no programa MATI120 do Compras do Protheus que recebe o XML do RM, neste exemplo do XML quando recebe a informação e é utilizada a tag "<CostCenterInternalId>" dentro da "<ListOfApportionOrderItem>" o padrão é ela ser importada para a tela de rateio (tabela SCH). Mesmo sendo 1 ou mais centro de custo.


Image Added


Para o Protheus receber informação de Centro de Custo no Item do Pedido na SC7 as informações do mesmo devem estar contidas na tag "<CostCenterInternalId>" dentro da "<Item>" do arquivo XML diretamente.

Se caso, tiver a tag dentro do "Item" e também dentro do "ListOfApportationOrderItem", o que vai prevalecer é que esta dentro do "ListOfApportationOrderItem".




Expandir
titleProjetos

<ProjectInternalId>17|9</ProjectInternalId>



Image RemovedImage Added

Expandir
titleTarefa de Projeto

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



Image RemovedImage Added

Expandir
titleEstrutura do Projeto

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



Image RemovedImage Added


Image RemovedImage Added


Image RemovedImage Added


Image RemovedImage Added

Card
defaulttrue
effectDuration0.5
idMSGEAI
labelIntegração XML Solicitação de compras Compras (REQUEST)

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



XML Exemplo:


View file
nameSolicitação de Compras.xml
height250


Expandir
titleXX4 – Adapter EAI

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


Image RemovedImage Added


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


Image RemovedImage Added


Expandir
titleXXD - (De-para de Empresas do EAI)


REFERÊNCIA:

 

 


XML:

 

 

 

PROTHEUS:


Expandir
titleXXF – De/Para EAI
Expandir
titleProduto

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



Image RemovedImage Added

Expandir
titleLocal de Estoque

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



Image RemovedImage Added

Expandir
titleProjeto

<ProjectInternalId>1|75</ProjectInternalId>



Image RemovedImage Added

Expandir
titleCentro de Custo

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


Image Removed


Image Added


Obs:

Neste exemplo do XML em que as informações do Centro de Custo estão no XML na tag "<ListOfApportionOrderItem>" o Centro de Custo será importado no Solicitação de Compras na tela de Rateio de Centro de Custos (tabela SCH):

Verificando junto à Equipe de Produto, no programa MATI120 do Compras do Protheus que recebe o XML do RM, neste exemplo do XML quando recebe a informação e é utilizada a tag "<CostCenterInternalId>" dentro da "<ListOfApportionOrderItem>" o padrão é ela ser importada para a tela de rateio (tabela SCH). Mesmo sendo 1 ou mais centro de custo.


Image Added


Para o Protheus receber informação de Centro de Custo no Item do Pedido na SC7 as informações do mesmo devem estar contidas na tag "<CostCenterInternalId>" dentro da "<Item>" do arquivo XML diretamente.

Se caso, tiver a tag dentro do "Item" e também dentro do "ListOfApportationOrderItem", o que vai prevalecer é que esta dentro do "ListOfApportationOrderItem".




Expandir
titleTarefa de Projeto

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>



Image RemovedImage Added

Expandir
titleUnidade de Medida

<UnitOfMeasureCode>M3</UnitOfMeasureCode>



Image RemovedImage Added

Card
defaulttrue
effectDuration0.5
id2
labelEXEMPLO
Aviso
titleAtenção

Certifique-se 

Dica
titleObservação

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.



Documentação Complementar:

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

Testes de Integração Mensagem única via Soap

Pode lhe interessar: