Versões comparadas

Chave

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

Producto:

Microsiga Protheus

Ocurrencia:

Integración Protheus vs. RM

En este documento se tratará:

  • Creación Webservice
  • Parámetros
  • De/A Empresas
  • De/A Mensaje único
  • Configuración Adapter
  • InternalId
  • Mensaje único / SOAP UI
  • Tablas EAI
  • Integración Pedido de Compras (ORDER)
  • Integración XML Solicitud de compras (REQUEST)

INTEGRACIÓN RM vs. PROTHEUS

Vea en las siguientes solapas los detalles de cada opción y  procedimientos:


Deck of Cards
effectDuration0.5
id1
effectTypefade
Card
defaulttrue
effectDuration0.5
labelCreación Webservice

Creación Webservice: Configurar portales y Webservices


Toda integración debe contener un webservice activo.


Configurado mediante el appserver.ini:

Puert = Defina el puerto

Puert = Defina el puerto

ResponseJob = Defina un nombre de JOB

127.0.0.1 = IP Localhost (facilita para nuestras pruebas)


Obs: Servicio responsabilidad del Framework.


Al iniciar el appserver, en el browse acceda al ip + puerto para que vea el webservice en el aire (ejemplo: 10.173.10.219:8087/ws01), podrá verificar si su servicio está activo al buscar y este conste como "HABILITADO":


Después, busque por EAISERVICE y haga clic en el enlace. Este servicio es el responsable por la comunicación entre los XML:



Haga clic en el enlace "Descripción del servicio (WSDL)", el enlace que se abra se utilizará para configurar tanto el Soap como el MV_EAIURL2:


Camino seleccionado: Utilice para configurar SoapUi o si tiene una integración Protheus vs. Protheus, configure en el parámetro MV_EAIURL2:



Card
defaulttrue
effectDuration0.5
idMSGEAI
labelParámetros

Principales parámetros utilizados:


Parámetros: PARÁMETROS TOP VS. PROTHEUS - EAI 1 / EAI 2


  • MV_EAIURL2: Responsable para la comunicación entre el Protheus y el otro sistema. Informe el webservice del otro sistema solo cuando el Protheus sea ENVIAR el mensaje único.

 

  • MV_EAIWS: Client Service, ya viene configurado, pero, se debe modificar cuando se integra al Datasul.

 

  • MV_EAIUSER: Si el webservice necesita alguna autenticación de usuario y contraseña, informe el usuario en este parámetro.

 

  • MV_EAIPASS: Si el webservice necesita alguna autenticación de usuario y contraseña, informe el usuario en este parámetro.


  • MV_RESTINC:Indica si restringe la inclusión de un pedido de compras sin una solicitud de compras para los usuarios no registrados como compradores. Contenido del parámetro igual Sí.


  • MV_SLMPUSR: Define la utilización del usuario enviado por el TOTVS Obras y Proyectos. Este usuario se almacena en el campo C7_USER de la tabla de pedidos de compras.


  • MV_PMSITMU: Indica que la integración del módulo SIGAPMS, por mensaje único, está activada. (Es necesario activar para que el sistema busque el usuario informado en el XML).


  • MV_SLMPREP: Define el prefijo de los títulos por pagar.


  • MV_SLMCOND: Condición de pago estándar.


  • MV_SLMTS: Tipo de salida (TES) estándar.


  • MV_SLMNATP: Origen estándar del título por pagar.


  • MV_SLMNATR: Origen estándar del título por cobrar.


  • MV_SLMPROP: Producto estándar del gasto minorista (título por pagar).


  • MV_SLMCOMP: Define el nombre del usuario comprador estándar para aprobación/WS.


MV_SLMNTPV: Origen estándar del pedido de venta.


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelDe/A Empresas

 De/A Empresas - APCFG050  - (SIGACFG->Entorno->Schedule) – Tabla XXD:


 

  • Registro para informar el Sistema/Empresa/Sucursal que integrará el Protheus.
  • Referencia = Nombre de la empresa que integrará el Protheus <Product:Name>
  • Empresa = Código de la empresa <CompanyId>
  • Sucursal = Sucursal de la empresa <BranchId>
  • Grupo Emp. Protheus = Código de la empresa (99 - Protheus)
  • Suc. Protheus = Sucursal de la empresa (01 - Protheus)



Card
defaulttrue
effectDuration0.5
idMSGEAI
labelDe/A Mensaje único

De/A Mensaje único - APCFG070  - (SIGACFG->Entorno->Schedule) – Tabla XXF:


Registro donde quedan los datos que informan la clave única en el Protheus (Valor interno) y la clave única en el otro sistema (RM – Valor externo):



Obs:

En el registro de Adapter de la integració delo registro de proveedores (Rutina: MATA020 - Mensaje: CUSTOMERVENDOR), para que haya integración de la información de Tipo de Cuenta (campo A2_TIPCTA) del registro del proveedor, el XML de ENVÍO mencionado, debe estar en una versión a partir de la 2.004, así como los debidos registros de los Adapter.




Card
defaulttrue
effectDuration0.5
idMSGEAI
label Configuración Adapter

Configuración Adapter (SIGACFG -> Schedule -> Adapter E.A.I) – Tabla XX4: Como realizar pruebas de Integraciones (Mensaje único)



Mensaje único =

Rutina = rutina de integración (MATA010)

Mensagem = Nombre del mensaje único (ÍTEM)

Envia = Indica si el Protheus envía el mensaje único (antes de eliminar o después de incluir/modificar).

Recibe = Indica si el Protheus recibe el mensaje único.

Método = Sincrónica (Espera respuesta – Igual transacción) o Asíncrona (No espera respuesta – Otra transacción) del otro sistema.

Condición = Regla para cuando el Protheus enviará el mensaje único (SA2->A2_EST = ‘SP’), solamente proveedores del estado de SP que envían mensaje único.

Canal Envío = 2 – EAI - REST

XSD = Camino de los XSD si el cliente desea validar XSD con XML enviado/recibido

Versión envío = Versión del mensaje (WHOIS)

Alias = Alias de la tabla

Formato = XML




Modelos de mensajes sincrónicas y asíncronas 

 Las integraciones por Mensagería proponen dos modelos de envío y recepción de mensajes. El modelo Sincrónico y el Asíncrono.


Asíncronas:  En el modelo de mensajes Asíncronas el mensaje se envía y el sistema que envió espera el procesamiento del mensaje por el receptor.


Asíncronas:  Por otro lado, en el modelo Asíncrono el mensaje se envía y el sistema que la envió no espera su procesamiento. Posteriormente el mensaje se procesará en el receptor.

Card
defaulttrue
effectDuration0.5
idMSGEAI
labelInternalId

La tag InternalId, significa que esta es el identificador único para búsqueda en el sistema de donde se está enviando el XML.

Cuando dentro de la BusinessContent se tengan otros InternalId, significa que el mensaje tiene dependencia de otros mensajes.

-> ÍTEM

-> UNITOFMEASURE

-> WAREHOUSE



Card
defaulttrue
effectDuration0.5
idMSGEAI
labelMensaje único/ SOAP UI

Mensaje único/ SOAP UI: Cómo realizar pruebas de Integraciones (Mensaje único)


Esta herramienta nos auxilia cuando es el Protheus que recibe el mensaje.

En “File -> New SOAP Project” informe el camino del servicio EAISERVICE



<![CDATA[

"cola o xml aqui""

]]> 


En “File -> Import Project” importe el archivo con los mensajes ya grabados.


Card
defaulttrue
effectDuration0.5
idMSGEAI
labelTablas EAI

XX0 - Registro de agents (Schedule)

XX1 - Programación de agenda (Schedule)

XX2 - Programación de agenda vs. Empresa/Sucursal (Schedule)

XX3 - Transacciones EAI

XX4 - Adapter EAI

XX5 - Relación de uso de rutinas/módulos

XX6 - Catálogo de personalizaciones

XX7 - Ítems do catálogo de personalizaciones

XX8 - Configuración de empresas

XX9 - Ítems de configuración de empresas

XXF - De/A EAI

XXD - De-A de Empresas del EAI

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

Simulación de integración de Pedido de Compras (MENSAJE ORDER):


XML Ejemplo:


View file
namePedido de Compras.xml
height250


Expandir
titleXX4 – Adapter EAI


OBS: Registre el UserInternalId como comprador


Es necesario que el Adapter este habilitado:


  • MATA120 (Pedido de compras):




  • MATA010 (Registro de producto):




  • AGRA045 (Lugar de stock):




  • PMSA200 (Proyecto):




  • PMSA203 (Tareas del proyecto):





Expandir
titleXXD - (De-A de Empresas del EAI)


REFERENCIA:



EMPRESA/SUCURSAL XML:



PROTHEUS:


Expandir
titleXXF – De/A EAI
Expandir
titleProveedor

FORNECEDOR

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





Expandir
titleCondición de pago

<PaymentConditionInternalId>17|002</PaymentConditionInternalId>





Expandir
titleMoneda contable

<CurrencyId>R$</CurrencyId>



Expandir
titleProducto

<ItemInternalId>17|15724</ItemInternalId>



Expandir
titleUnidad de medida

<UnitOfMeasureInternalId>M2</UnitOfMeasureInternalId>



Expandir
titleLugar de stock

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



Expandir
titleCentro de costo

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




Expandir
titleProducto

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



Expandir
titleLugar de stock

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



Expandir
titleProyecto

<ProjectInternalId>1|75</ProjectInternalId>



Expandir
titleCentro de costo

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




Obs:

En este ejemplo del XML en que las informaciones del Centro de Costo están en el XML en la tag "<ListOfApportionOrderItem>" el Centro de Costo se importará en el Pedido de Compras en la pantalla de Prorrateo del Centro de Costos (tabla SCH):

Verificando con el Equipo del Producto, en el programa MATI120 del Compras del Protheus, que recibe el XML del RM, en este ejemplo del XML, cuando recibe la información, se utilizará la tag "<CostCenterInternalId>" dentro de la "<ListOfApportionOrderItem>" el estándar es que esta sea importada para la pantalla de prorrateo (tabla SCH). Aunque sea 1 o más centro de costo.



Para que el Protheus reciba  información del Centro de Costo en el ítem del Pedido en la SC7 las informaciones de este, deben estar contenidos en la tag "<CostCenterInternalId>" dentro de la "<Ítem>" del archivo XML directamente.

Si se tuviera la tag dentro del "Ítem" y también dentro del "ListOfApportationOrderItem", lo que prevalecerá será lo que esta dentro del "ListOfApportationOrderItem".




Expandir
titleProducto

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



Expandir
titleLugar de stock

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



Expandir
titleProyecto

<ProjectInternalId>1|75</ProjectInternalId>



Expandir
titleCentro de costo

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




Obs:

En este ejemplo del XML, en que las informaciones del Centro de Costo están en el XML en la tag "<ListOfApportionOrderItem>" el Centro de Costo se importará en el Pedido de Compras en la pantalla de prorrateo del Centro de Costos (tabla SCH):

Verificando con el Equipo del Producto, en el programa MATI120 del Compras del Protheus, que recibe el XML del RM, en este ejemplo del XML, cuando recibe la información, se utilizará la tag "<CostCenterInternalId>" dentro de la "<ListOfApportionOrderItem>" el estándar es que esta sea importada para la pantalla de prorrateo (tabla SCH). Aunque sea 1 o más centros de costo.



Para que el Protheus reciba  información del Centro de Costo en el ítem del Pedido en la SC7 las informaciones de este, deben estar contenidos en la tag "<CostCenterInternalId>" dentro de la "<Ítem>" del archivo XML directamente.

Si se tuviera la tag dentro del "Ítem" y también dentro del "ListOfApportationOrderItem", lo que prevalecerá será lo que esta dentro del "ListOfApportationOrderItem".




Expandir
titleProyectos

<ProjectInternalId>17|9</ProjectInternalId>



Expandir
titleTarea del proyecto

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



Expandir
titleEstructura del proyecto

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






Card
defaulttrue
effectDuration0.5
idMSGEAI
labelIntegração Integración XML Solicitud de Compras (REQUEST)

Simulación de integración de solicitud de compras (MENSAJE REQUEST):



XML Ejemplo:


View file
nameSolicitação de Compras.xml
height250


Expandir
titleXX4 – Adapter EAI

Es necesario que el adapter esté habilitado para la rutina MATA110(Solicitud de compras):



Y el adapter para la rutina MATA105 (Solicitud de almacén):



Expandir
titleXXD - (De-A de empresas del EAI)


REFERENCIA:

 

 


XML:

 

 

 

PROTHEUS:


Expandir
titleXXF – De/A EAI
Expandir
titleProducto

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



Expandir
titleLugar de stock

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



Expandir
titleProyecto

<ProjectInternalId>1|75</ProjectInternalId>



Expandir
titleCentro de costo

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




Obs:

En este ejemplo del XML, en que las informaciones del Centro de Costo están en el XML en la tag "<ListOfApportionOrderItem>" el Centro de Costo se importará en la Solicitud de Compras en la pantalla de prorrateo del Centro de Costos (tabla SCH):

Verificando con el Equipo del Producto, en el programa MATI120 del Compras del Protheus, que recibe el XML del RM, en este ejemplo del XML, cuando recibe la información, se utilizará la tag "<CostCenterInternalId>" dentro de la "<ListOfApportionOrderItem>" el estándar es que esta sea importada para la pantalla de prorrateo (tabla SCH). Aunque sea 1 o más centros de costo.



Para que el Protheus reciba  información del Centro de Costo en el ítem del Pedido en la SC7 las informaciones de este, deben estar contenidos en la tag "<CostCenterInternalId>" dentro de la "<Ítem>" del archivo XML directamente.

Si se tuviera la tag dentro del "Ítem" y también dentro del "ListOfApportationOrderItem", lo que prevalecerá es lo que esta dentro del "ListOfApportationOrderItem".


Expandir
titleTarea del proyecto

OBS: Si el XML tiene más de una tag <TaskInternalId> con código diferente, es necesario regstrar todas las demás tag


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



Expandir
titleUnidad de medida

<UnitOfMeasureCode>M3</UnitOfMeasureCode>





Documentación complementaria:

La categoría del EAI
Funciones y clases utilizables en el EAI Protheus
Configurar portales y Webservices
Sugerencias útiles y dudas sobre el EAI Protheus
EAI Protheus
Manual de integración PIMS MultiCultivos vs. Protheus (V.12.1.18)
Cómo realizar pruebas de integraciones (Mensaje único)
CONFIGURACIÓN - INTEGRACIONES - EAI RM
MP - SIGACOM - ¿Cómo extraer el XML en la integración EAI (Protheus)?
XML Formatter

Pruebas de integración Mensaje único por Soap

...