Utilización de las áreas de trabajo temporal de LocalEnvironment

El árbol LocalEnvironment incluye un subárbol denominado Variables. Siempre se crea pero nunca lo rellena el flujo de mensajes. Puede utilizar esta área para pasar información de un nodo a otro.

Le recomendamos que incluya toda la información en este subárbol. No obstante, si lo desea puede crear otros subárboles en el árbol LocalEnvironment.

La ventaja de crear sus propios datos en un área de trabajo temporal de LocalEnvironment es que estos datos se propagan como parte del árbol lógico a los nodos posteriores del flujo de mensajes. Si crea un mensaje de salida nuevo en un nodo Compute, también puede incluir todo o una parte del árbol LocalEnvironment en el mensaje de entrada del mensaje de salida nueva.

No obstante, cualquier actualización o adición de datos que realice en un nodo no se conservará si el mensaje vuelve a fluir por el flujo de mensajes (por ejemplo, si se genera una excepción o si el mensaje lo procesa el segundo terminal del nodo FlowOrder). Si desea crear sus propios datos y desea que se conserven los datos a través del flujo de mensajes, debe utilizar el árbol Environment.

Puede establecer los valores del subárbol Variables en un nodo Compute que posteriormente utiliza otro nodo (Compute, Database o Filter) para algún fin que determinará cuando configure el flujo de mensajes.

Por ejemplo, es posible que lo utilice para determinar el destino de un mensaje de salida. El primer nodo Compute puede determinar de algún modo que los mensajes de salida de este flujo de mensajes deben ir a las colas WebSphere MQ. Incluya el ESQL siguiente para insertar información en el área de trabajo temporal de LocalEnvironment.
SET LocalEnvironment.Variables.OutputLocation = 'MQ';
El segundo nodo Compute puede acceder a esta información, a continuación escriba los destinos necesarios en el subárbol Destination para garantizar que el mensaje de salida que propaga a un nodo MQOutput se envía a la lista de las colas que se han creado aquí. Configure el nodo MQOutput de modo que utilice la lista de destinos, estableciendo la propiedad Modalidad de destino en Lista de destinos.
IF LocalEnvironment.Variables.OutputLocation = 'MQ' THEN
DO;
   SET LocalEnvironment.Destination.MQ.DestinationData.queueManagerName = 'myQManagerName';
   SET LocalEnvironment.Destination.MQ.DestinationData.queueName = 'myQueueName';
END IF; 

Para obtener información acerca de la lista completa de elementos del subárbol DestinationData, consulte Los tipos de datos de los elementos del subárbol DestinationData.

Conceptos relacionados
Flujos de mensajes
Árbol LocalEnvironment
ESQL
Diseño de mensajes

Tareas relacionadas
Diseño de un flujo de mensajes
Definición del contenido del flujo de mensajes
Gestión de archivos ESQL

Referencia relacionada
Nodo Compute
Nodo Database
Nodo Filter
Los tipos de datos de los elementos del subárbol DestinationData
ESQL
Sentencia IF
Sentencia SET