Este ejemplo muestra dos usos de los nodos SAP: se utiliza un nodo SAPInput para mostrar un escenario de entrada de intermediario y se utiliza un nodo SAPRequest para mostrar un escenario de salida de intermediario.
El nodo SAPInput se utiliza para capturar información (por ejemplo un IDoc) generada por el sistema SAP, de modo que se pueda pasar a un flujo de mensajes para procesarla.
El siguiente diagrama muestra el flujo de mensajes de entrada SAP que se utiliza en este ejemplo:
En este flujo de mensajes de ejemplo, el nodo SAPInput recibe un mensaje de SAP. El mensaje contiene un IDoc Maestro de materiales. El mensaje recibido se pasa, sin modificar, a una cola MQOutput.
El ejemplo de Conectividad de SAP muestra las siguientes tareas:
El ejemplo proporciona:
El nodo SAPRequest se utiliza para enviar información al sistema SAP y recuperar la respuesta de SAP. En este flujo de mensajes de ejemplo, se utilizan nodos SAPRequest para invocar funciones remotas en SAP (BAPIs).
El siguiente diagrama muestra el flujo de mensajes de salida SAP que se utiliza en este ejemplo.
Se envía un mensaje al nodo MQInput que contiene los campos necesarios para crear un objeto Customer en SAP.
El primer nodo SAPRequest, SAP Request: Create, invoca una BAPI Customer Create (BAPI_CUSTOMER_CREATEFROMDATA1) y SAP devuelve el identificador exclusivo del objeto Cliente que se ha creado.
El nodo Compute, Set Update Msg, utiliza el identificador devuelto (número de cliente) y construye un mensaje que permitirá actualizar el nuevo Cliente.
El segundo nodo SAPRequest, SAP Request: Update, envía estos datos a una BAPI Customer Update (BAPI_CUSTOMER_CHANGEFROMDATA1) y SAP devuelve un código de retorno.
El nodo Compute, Set Retrieve Msg, utiliza el identificador de Cliente para construir un mensaje que solicita a SAP que devuelva el objeto Cliente actualizado.
El último nodo SAPRequest, SAP Request: Retrieve, utiliza estos datos para invocar una BAPI Customer Retrieve (BAPI_CUSTOMER_GETDETAILS1) y SAP devuelve el objeto Cliente, que se envía a una cola WebSphere MQ como un mensaje XML.
Si el flujo detecta algún problema, al cabecera del mensaje original y los datos de la lista de excepciones se colocan en un mensaje XML y se envían a una cola WebSphere MQ de anomalías.
La ejecución del ejemplo conlleva la realización de las tareas siguientes:
El ejemplo proporciona los siguientes recursos: