El árbol Properties tiene su propio nombre de correlación, Properties, y es necesario utilizarlo en todas las sentencias ESQL que hagan referencia al contenido de dicho árbol o lo establezcan.
Los campos del árbol Properties contienen valores que definen las características del mensaje. Por ejemplo, el árbol Properties contiene un campo para el dominio de mensajes y campos para el CCSID y la codificación con los que se codificó el mensaje. Si desea ver una lista completa de los campos de este árbol, consulte el apartado Tipos de datos para los elementos del subárbol de Propiedades.
Podrá interrogar y actualizar esos campos utilizando las sentencias actualizar adecuadas. Si crea un nuevo mensaje de salida en el nodo Compute, deberá establecer valores para las propiedades del mensaje.
Si utiliza el nodo Compute para generar un nuevo mensaje de salida, deberá establecer sus propiedades en el árbol Properties. No es necesario que las propiedades de los mensajes de salida sean iguales que las propiedades de los mensajes de entrada.
Por ejemplo, para establecer las propiedades de un mensaje de salida para un mensaje de salida MRM, establezca las siguientes propiedades:
Propiedad | Valor |
---|---|
Dominio de mensajes | MRM |
Conjunto de mensajes | Identificador del conjunto de mensajes |
Tipo de mensaje | Nombre del mensaje¹ |
Formato del mensaje | Nombre del formato físico² |
Este procedimiento ESQL establece propiedades de mensaje en valores entrados por la sentencia de llamada. Es posible que tenga que realizar esta tarea frecuentemente y puede utilizar un procedimiento como éste en muchos nodos y flujos de mensajes diferentes. Si lo prefiere, puede codificar ESQL que establece valores específicos.
CREATE PROCEDURE setMessageProperties(IN OutputRoot REFERENCE, IN setName char, IN typeName char, IN formatName char) BEGIN /**************************************************************************** * Procedimiento que establece las propiedades de mensaje ****************************************************************************/ set OutputRoot.Properties.MessageSet = setName; set OutputRoot.Properties.MessageType = typeName; set OutputRoot.Properties.MessageFormat = formatName; END;
Para establecer el dominio de mensajes de salida, puede establecer la propiedad de mensaje o puede codificar sentencias ESQL que hagan referencia al dominio necesario en el segundo calificador de la sentencia SET, el campo de analizador. Por ejemplo, la sentencia ESQL establece el dominio en MRM:
SET OutputRoot.MRM.Field1 = 'datos campo1';
Esta sentencia ESQL establece el dominio en XML:
SET OutputRoot.XML.Field1 = 'datos campo1';
No especifique más de un dominio en el ESQL para un solo mensaje. No obstante, si utiliza sentencias PROPAGATE para generar varios mensajes de salida, podrá establecer un dominio distinto para cada mensaje.
Para obtener información sobre la lista completa de elementos del árbol Properties, consulte Tipos de datos para los elementos del subárbol de Propiedades.