El flujo de abanico de entrada de agregación recibe las respuestas a los mensajes de petición enviados por el flujo de abanico de salida, y crea un mensaje de respuesta combinado que contiene todas las respuestas recibidas.
Antes de empezar:
Puede incluir el flujo de abanico de salida y de abanico de entrada dentro del mismo flujo de mensajes. Aunque, si lo prefiere, puede crear dos flujos distintos. Para obtener más información sobre las ventajas de configurar flujos de mensajes independientes, consulte Asociar flujos de agregación de mensajes de abanico de salida y de abanico de entrada. No despliegue varias copias del mismo flujo de abanico de entrada para los mismos grupos de ejecución o grupos de ejecución diferentes.
Si no configura el flujo de abanico de salida para que sea transaccional, los valores de tiempo de espera que ha especificado pueden hacer que el mensaje de respuesta combinado se genere antes de que el flujo de abanico de entrada haya recibido todas las respuestas. Para obtener más información, consulte Crear el flujo de mensajes de abanico de salida de agregación.
Para crear el flujo de mensajes de abanico de entrada:
El nodo AggregateReply crea una carpeta en el árbol de mensaje combinado debajo de Raíz, llamada ComIbmAggregateReplyBody. Debajo de esta carpeta, el nodo crea una serie de subcarpetas que utilizan los nombres que ha establecido en los nodos AggregateRequest. Estas subcarpetas se llenan con los mensajes de respuesta asociados.
Por ejemplo, los mensajes de petición pueden tener los nombres de carpeta:
El mensaje de respuesta agregado resultante creado por el nodo AggregateReply puede tener una estructura similar a la del ejemplo siguiente:
Utilice ESQL dentro de un nodo Compute para acceder a la respuesta de la empresa de taxis utilizando el nombre de correlación siguiente:
InputRoot.ComIbmAggregateReplyBody.TAXI.xyz
El nombre de carpeta no tiene que ser exclusivo. Si tiene varias peticiones con el nombre de carpeta TAXI, puede acceder a las diferentes respuestas utilizando la notación de subíndice de matriz, por ejemplo:
InputRoot.ComIbmAggregateReplyBody.TAXI[1].xyz InputRoot.ComIbmAggregateReplyBody.TAXI[2].xyz