Función del constructor LIST

El constructor LIST es una función compleja que se utiliza para generar de forma explícita listas de valores que se pueden asignar a campos de un mensaje de salida.

SINTAXIS

LIST consta de una secuencia de valores sin nombre. Cuando se asigna a una referencia de campo de matriz (lo que se indica añadiendo como sufijo [] al último elemento de la referencia), cada valor se asigna de forma secuencial a un elemento de la matriz. No se puede asignar LIST a una referencia de campo que no sea de matriz.

Ejemplos

Ejemplo 1

Cuando se proporciona el siguiente texto de entrada de mensaje XML:
<Car>
   <size>big</size>
   <color>red</color>
</Car> 
El ESQL siguiente:
SET OutputRoot.XML.Data.Result[] = LIST{InputBody.Car.colour,
                                                     'green',
                                                     'blue'};
genera los resultados siguientes:
<Data>
   <Result>red</Result> 
   <Result>green</Result>
   <Result>blue</Result>
</Data>
En el caso de LIST, no hay un nombre explícito asociado a cada valor. Los valores se asignan en secuencia a los elementos de la matriz del campo de mensaje especificada como el destino de la asignación. Para encerrar los elementos de LIST se utilizan llaves en lugar de paréntesis.

Ejemplo 2

Cuando se proporciona el siguiente texto de mensaje de entrada XML:
<Data>
   <Field>Keats</Field>
   <Field>Shelley</Field>
   <Field>Wordsworth</Field>
   <Field>Tennyson</Field>
   <Field>Byron</Field>
</Data>
El ESQL siguiente:
-- Copiar todo el mensaje de entrada en el mensaje de salida,
-- incluida la matriz del campo de mensajes XML como anteriormente
SET OutputRoot = InputRoot;
SET OutputRoot.XML.Data.Field[] = LIST{'Henri','McGough','Patten'};
genera la salida siguiente:
<Data>
   <Field>Henri</Field>
   <Field>McGough</Field>
   <Field>Patten</Field>
</Data>
Los miembros anteriores de la matriz Data.Field[] se han descartado. Al asignar una lista de valores nueva a una matriz de campo de mensajes existente se suprimen todos los elementos de la matriz existente antes de que se asignen los nuevos.
Conceptos relacionados
Visión general de ESQL
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 22/08/2006
ak05640_