Acerca del Ejemplo minorista de Correlación de datos gráficos
Este ejemplo muestra el uso de la correlación de datos gráficos en un escenario minorista
simplificado. El escenario utiliza un canal de información de datos de ventas simplificados en lugar del estándar de
la industria TLOG, para el cual hay disponible un ejemplo de producto por separado.
Para obtener más información sobre la correlación,
consulte Uso de
correlaciones de datos gráficos.
Escenario:
Una empresa minorista, que podría ser cualquiera de las típicas cadenas de supermercados, tiene varias tiendas en todo el
mundo. Las tiendas completan transacciones de ventas cada día y el reaprovisionamiento de las existencias mantiene las
estantería llenas. Esto hace que los clientes estén satisfechos.
En sus inicios, la empresa abarcaba un área pequeña y podía por ello utilizar un solo almacén para
aprovisionar todas sus tiendas. Desarrolló un sistema propietario de gestión de inventario que se ejecuta
por la noche, procesando los archivos que contienen registros de ajuste del inventario que identifican el
artículo, la cantidad y la tienda.
El progresivo crecimiento de la compañía hizo que ya no fuera práctico utilizar un solo almacén (depósito)
para abastecer las tiendas, de manera que ahora dispone de varios almacenes diseminados por las diversas zonas
geográficas en las que opera. Para simplificar el proceso de inventario, la empresa agrupa los datos de ajuste de inventario
por almacenes.
Además de la gestión de inventario, la empresa aplica también un programa de fidelización de clientes en línea
con sus competidores. El sistema de fidelización que ha desarrollado está activo todo el día, de manera que puede aceptar
datos siempre que se lleva a cabo una transacción. De esta manera se obtienen beneficios adicionales, por ejemplo el hecho de que
los puntos acumulados por un cliente puedan verse en cada factura de caja.
La empresa ha decidido utilizar WebSphere Message Broker para integrar los datos de ventas de la tienda con la gestión de inventario
y los sistemas de fidelización de clientes. Se utiliza un intermediario para realizar las transformaciones de datos adecuadas y el direccionamiento
y consolidación de los datos de ventas.
Las siguientes funciones de correlación de datos gráficos se muestran en las transformaciones que se utilizan en la solución:
- Estructuras repetitivas
- Llamada a funciones XPath
- Enriquecimiento de los mensajes utilizando búsquedas en base de datos
- Extracción de datos de las cabeceras de mensajes, como MQMD
- Formatos y analizadores de mensajes de entrada y salida diferenciados
El flujo de mensajes utilizado es:

El mensaje pasa a través del flujo de mensajes de la siguiente manera:
- Un mensaje XML StoreSales entra en el flujo de mensajes a través del nodo Store Sales In.
- El nodo Flow Order lo dirige por la vía de acceso de solicitud de suministros.
- El nodo de correlación "StoreSales to SoldStock" utiliza una correlación de datos gráficos para
transformar el mensaje, eliminando los datos irrelevantes para la solicitud de suministros y consultando
una fuente de datos externa para identificar el depósito que abastece a la tienda identificada en el mensaje.Consulte Configurar la base de datos para obtener más información.
- El mensaje entra a continuación en el nodo Collect SoldStock, donde los mensajes se
recopilan en una colección para cada depósito.
- A continuación, el nodo Flow Order direcciona el mensaje al sistema de
fidelización. Aquí se utiliza otro nodo Mapping con una correlación de datos gráficos,
que transforma el mensaje StoreSalesLoyaltySalesData y, a continuación, el nodo MQOutput
lo coloca en la cola de ventas de fidelización.
- Transcurrido un número predefinido de segundos desde la llegada del primer mensaje
para un depósito determinado (por ejemplo, 60), el nodo Collector Collect SoldStock
genera como salida una colección para dicho depósito, que contiene todos los mensajes
coincidentes que han llegado durante ese tiempo.
- El nodo Process SoldStock Collection convierte entonces la colección en un mensaje
StockOrderBatch que contiene un elemento StockOrder para cada artículo vendido en cada
uno de los mensajes SoldStock. Para hacerlo se utiliza un nodo Compute.
- El nodo Mapping "Process each StockOrder" utiliza otra correlación de
datos gráficos para generar un mensaje CSV StockOrder para cada elemento StockOrder del
mensaje StockOrderBatch. Este nodo también actualiza el Entorno local para establecer el
nombre del archivo que se creará más adelante en el flujo de mensajes.
- Los mensajes CSV se escriben entonces como líneas separadas en el archivo
identificado en el Entorno local mediante el nodo Batched Depot Stock Updates.
Volver a la página inicial del ejemplo