Função do Construtor LIST

A função complexa do construtor LIST é utilizada explicitamente para gerar linhas de valores que podem ser designados a campos em uma mensagem de saída.

SINTAXE

Uma LIST consiste em uma seqüência de valores não denominados. Quando designado a uma referência de campo de matriz (indicada por [] sufixada ao último elemento da referência), cada valor é designado em seqüência a um elemento da matriz. Uma LIST não pode ser designada a uma referência de campo de sem-matriz.

Exemplos

Exemplo 1

Especificado o seguinte corpo de entrada da mensagem XML:
<Car>
   <size>big</size>
   <color>red</color>
</Car> 
O seguinte ESQL:
SET OutputRoot.XML.Data.Result[] = LIST{InputBody.Car.colour,
                                                     'green',
                                                     'blue'};
produz os seguintes resultados:
<Data>
   <Result>red</Result>
   <Result>green</Result>
   <Result>blue</Result>
</Data>
Em caso de uma LIST, não existe nenhum nome explícito associado a cada valor. Os valores são designados em seqüência a elementos da matriz do campo de mensagem especificados como o destino da designação. São utilizadas chaves em vez de parênteses para circundar os itens de LIST.

Exemplo 2

Especificado o seguinte corpo de mensagem de entrada XML:
<Data>
   <Field>Keats</Field>
   <Field>Shelley</Field>
   <Field>Wordsworth</Field>
   <Field>Tennyson</Field>
   <Field>Byron</Field>
</Data>
o seguinte ESQL:
-- Copie a mensagem de entrada inteira na mensagem de saída,
-- incluindo a matriz do campo de mensagem XML conforme acima
SET OutputRoot = InputRoot;
SET OutputRoot.XML.Data.Field[] = LIST{'Henri','McGough','Patten'};
Produz a seguinte saída:
<Data>
   <Field>Henri</Field>
   <Field>McGough</Field>
   <Field>Patten</Field>
</Data>
Os membros anteriores da matriz Data.Field[] foram descartados. A designação de uma nova lista de valores a uma matriz de campo de mensagens já existente remove todos os elementos na matriz existente antes da designação de novos.
Conceitos relacionados
Visão Geral do ESQL
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ak05640_