Se proporciona el flujo de mensajes del ejemplo Alquiler de vídeos, pero si prefiere crear el flujo de mensajes usted mismo, siga las instrucciones siguientes:
| Cajones de la paleta | Tipo de nodo | Nombre de nodo |
|---|---|---|
| WebSphere MQ | MQInput | VIDEO_XML_IN |
| WebSphere MQ | MQInput | VIDEO_TDS_IN |
| WebSphere MQ | MQInput | VIDEO_CWF_IN |
| WebSphere MQ | MQOutput | VIDEO_OUT |
| WebSphere MQ | MQOutput | VIDEO_FAIL |
| Transformación | Compute | Extract Fields |
| Nombre de nodo | Terminal | Conectar a este nodo |
|---|---|---|
| VIDEO_XML_IN | Failure (de anomalías) | VIDEO_FAIL |
| Out | Extract Fields | |
| Catch | VIDEO_FAIL | |
| VIDEO_TDS_IN | Failure (de anomalías) | VIDEO_FAIL |
| Out | Extract Fields | |
| Catch | VIDEO_FAIL | |
| VIDEO_CWF_IN | Failure (de anomalías) | VIDEO_FAIL |
| Out | Extract Fields | |
| Catch | VIDEO_FAIL | |
| Extract Fields | Out | VIDEO_OUT |
| Nombre de nodo | Página | Propiedad | Valor |
|---|---|---|---|
| VIDEO_XML_IN | Básicas | Nombre de cola | VIDEO_XML_IN |
| Análisis de mensaje de entrada | Dominio del mensaje | MRM | |
| Análisis de mensaje de entrada | Conjunto de mensajes | (Seleccione el identificador de conjunto de mensajes exclusivo) | |
| Análisis de mensaje de entrada | Tipo de mensaje | Customer | |
| Análisis de mensaje de entrada | Formato del mensaje | XML1 | |
| VIDEO_TDS_IN | Básicas | Nombre de cola | VIDEO_TDS_IN |
| Análisis de mensaje de entrada | Dominio del mensaje | MRM | |
| Análisis de mensaje de entrada | Conjunto de mensajes | (Seleccione el identificador de conjunto de mensajes exclusivo) | |
| Análisis de mensaje de entrada | Tipo de mensaje | Customer | |
| Análisis de mensaje de entrada | Formato del mensaje | TDS1 | |
| VIDEO_CWF_IN | Básicas | Nombre de cola | VIDEO_CWF_IN |
| Análisis de mensaje de entrada | Dominio del mensaje | MRM | |
| Análisis de mensaje de entrada | Conjunto de mensajes | (Seleccione el identificador de conjunto de mensajes exclusivo) | |
| Análisis de mensaje de entrada | Tipo de mensaje | Customer | |
| Análisis de mensaje de entrada | Formato del mensaje | CWF1 | |
| VIDEO_FAIL | Básicas | Nombre de cola | VIDEO_FAIL |
| Extract Fields | Básicas | Módulo ESQL | Video_Test_Compute |
| VIDEO_OUT | Básicas | Nombre de cola | VIDEO_OUT |
CREATE COMPUTE MODULE Video_Test_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
-- Este ESQL extrae algunos de los campos del mensaje de entrada
-- sólo para demostrar las referencias utilizadas para los campos
-- en diferentes espacios de nombres
SET OutputRoot = InputRoot;
DECLARE addr NAMESPACE 'http://www.ibm.com/AddressDetails';
DECLARE brw NAMESPACE 'http://www.ibm.com/BorrowedDetails';
DECLARE I INTEGER;
SET OutputRoot.MRM.Name = InputRoot.MRM.Name;
SET OutputRoot.MRM.addr:Address = InputBody.addr:Address;
IF InputRoot.MRM.ID ='P' THEN
SET OutputRoot.MRM.PassportNo = InputBody.PassportNo;
ELSEIF InputRoot.MRM.ID ='D' THEN
SET OutputRoot.MRM.DrivingLicenseNo=InputBody.DrivingLicenseNo;
ELSEIF InputRoot.MRM.ID ='C' THEN
SET OutputRoot.MRM.CreditCardNo=InputBody.CreditCardNo;
END IF;
SET I=1;
WHILE I<= CARDINALITY(InputBody.brw:Borrowed.*[]) DO
SET OutputRoot.MRM.brw:Borrowed[I].VideoTitle = InputBody.brw:Borrowed[I].VideoTitle;
SET OutputRoot.MRM.brw:Borrowed[I].DueDate=InputBody.brw:Borrowed[I].DueDate + INTERVAL '1' DAY;
SET OutputRoot.MRM.brw:Borrowed[I].Cost=InputBody.brw:Borrowed[I].Cost*2;
SET I=I+1;
END WHILE;
SET OutputRoot.MRM.Magazine = InputBody.Magazine;
RETURN TRUE;
END;
END MODULE