Acerca del ejemplo de transferencia de archivos de Connect:Direct

El ejemplo Transferencia de archivos de IBM Sterling Connect:Direct muestra cómo utilizar los nodos Connect:Direct al trabajar con IBM Sterling Connect:Direct junto con WebSphere Message Broker. El ejemplo muestra las siguientes tareas:

El ejemplo se basa en el siguiente escenario:

En la oficina central de un pequeño banco se autoriza diariamente toda la información de transferencia de cuentas para las cuentas de banco de sus sucursales de Eastleigh y Winchester. La oficina central recibe las transferencias de cuentas como mensajes de WebSphere MQ y las guarda en un único archivo de proceso por lotes. Una vez que se ha enviado la última transferencia del día, cada sucursal envía un mensaje de final del día a la oficina central. Cuando la oficina central recibe el mensaje de final del día de las dos sucursales, utiliza IBM Sterling Connect:Direct para transferir el archivo de proceso por lotes a un proveedor de servicios de autorización externo, junto con instrucciones sobre cómo verificar las transferencias. Una vez realizada la autorización, la oficina central recibe los registros de transferencia de cuenta autorizados en un archivo de proceso por lotes nuevo. A continuación, la oficina central archiva el archivo de proceso por lotes y envía los registros de transferencia de cuenta autorizados a las colas individuales de WebSphere MQ de cada sucursal.

screen capture of the SendToauthorizingSystem message flow.

El escenario se implementa utilizando tres flujos de mensajes, que se describen en las siguientes secciones:

La oficina central recibe transferencias de las sucursales y las envía al sistema de autorización
SendToAuthorisingSystem.msgflow

Este flujo de mensajes se ejecuta en Message Broker en la oficina central y recibe las transferencias de cuentas que requieren autorización de las sucursales. Añade ReplyToQ a los registros de transferencia de cuenta y los agrupa en un archivos por lotes. A continuación, utiliza IBM Sterling Connect:Direct para transferir el archivo al proveedor de servicio de autorización externo.

  1. El nodo MQInput recibe registros de transferencia de cuenta individuales de la sucursal de Winchester o de Eastleigh y envía cada una de ellos al nodo Compute.
  2. El nodo Compute detecta si un mensaje es un mensaje de final del día y, en caso afirmativo, incrementa el contador.
  3. Si el mensaje no es un mensaje de final del día, el nodo Compute extrae la cola ReplyToQ de la cabecera MQMD la añade al registro.
  4. El nodo Compute envía el registro al nodo CDOutput.
  5. El nodo CDOutput crea un lote de todos los registros en una archivo local.
  6. Cuando ambas sucursales han enviado su mensaje de final del día, el nodo Compute envía un mensaje al terminal Finish File del nodo CDOutput. El nodo Compute establece también un campo Connect:Direct del entorno local en el valor BlacklistCheck. Este valor se incluirá en los metadatos de la transferencia Connect:Direct iniciada.
  7. El nodo CDOutput transfiere el archivo de proceso por lotes al proveedor de servicio de autorización.

captura de pantalla del flujo de mensajes SendToauthorizingSystem.

El proveedor del servicio de autorización procesa las transferencias
AuthorisingSystem.msgflow

Este flujo de mensajes emula el sistema de autorización del proveedor de servicios externo. Comprueba y autoriza cada registro de transferencia de cuenta del archivo de proceso por lotes recibido y agrupa los registros autorizados en un nuevo archivo de proceso por lotes. A continuación, utiliza IBM Sterling Connect:Direct para transferir el archivo a la oficina central.

  1. El nodo CDInput recibe el archivo enviado desde la oficina central.
  2. El nodo CDInput analiza los registros del archivo de proceso por lotes, donde cada uno representa una transferencia de cuenta. Envía cada registro al nodo Mapping.
  3. El nodo CDInput llena el entorno local con metadatos de la transferencia Connect:Direct.
  4. El nodo Mapping traslada cada registro de transferencia de cuenta al mensaje de salida. Si no se detecta ningún número de cuenta en la lista negra y el valor BlacklistCheck está presente en el entorno local dentro de los metadatos Connect:Direct, los registros se autorizan.
  5. Los registros autorizados se envían al nodo CDOutput.
  6. El nodo CDOutput crea un lote de todos los registros en una archivo local.
  7. Una vez que el nodo CDInput ha procesado todos los registros del archivo de proceso por lotes, envía un mensaje desde su terminal de fin de datos al terminal de final de archivo del nodo CDOutput.
  8. El nodo CDOutput transfiere de nuevo las transferencias autorizadas como un archivo de proceso por lotes a la oficina central.

Captura de pantalla del flujo de mensajes authorizingSystem.

La oficina central recibe las transferencias autorizadas del sistema de autorización y responde a las sucursales
ReceiveFromAuthorisingSystem.msgflow

Este flujo de mensajes se ejecuta en Message Broker en la oficina central y recibe las transferencias de cuentas autorizadas en un archivo de proceso por lotes. Para cada una de las transferencias de cuenta del archivo de proceso por lotes, responde a la sucursal que ha iniciado la consulta. La respuesta se envía a la cola de WebSphere MQ que se ha especificado como ReplyToQ en la cabecera MQMD del mensaje de consulta inicial.

  1. El nodo CDInput recibe el archivo de proceso por lotes con los registros autorizados.
  2. El nodo CDInput analiza los registros del archivo de proceso por lotes y envía cada registro al nodo MQHeader.
  3. El nodo MQHeader añade una cabecera MQMD predeterminada a cada registro antes de enviarlo al nodo Mapping.
  4. El nodo Mapping pasa la información de ReplyToQ del registro a la cabecera MQMD.
  5. El nodo MQReply utiliza la información de la cabecera MQMD para transferir cada registro a la sucursal que ha enviado la consulta original.
  6. El nodo CDInput archiva el archivo de proceso por lotes recibido añadiendo una indicación de fecha y hora al nombre.

Captura de pantalla del flujo de mensajes ReceiveFromauthorizingSystem.

Volver a la página inicial del ejemplo