Acessando a Árvore de Ambiente

A árvore Ambiente tem seu próprio nome de correlação, Ambiente, e você deve utilizar esse nome em todas as instruções ESQL para fizer referência a, ou definir, o conteúdo dessa árvore.

A árvore Environment é sempre criada quando a árvore lógica é criada para uma mensagem de entrada. Entretanto, o fluxo de mensagens não o preenche nem utiliza seu conteúdo. Você pode utilizar essa árvore para suas próprias finalidades, por exemplo, para transmitir informações de um nó para outro. Você pode utilizar toda a árvore como uma área de scratchpad ou de trabalho.

A vantagem de criar seus próprios dados na árvore Ambiente é que esses dados são propagados como parte da árvore lógica para nós subseqüentes no fluxo de mensagens. Se você criar uma nova mensagem de saída em um nó Compute, a árvore Ambiente também será copiada da mensagem de entrada para a nova mensagem de saída. (Em contraste à árvore LocalEnvironment, que é incluída somente na mensagem de saída, se você pedir explicitamente isso).

Apenas a árvore Ambiente está presente durante a duração do fluxo de mensagens. Qualquer atualização, ou adição, de dados feita em um nó é retida e todos os nós no fluxo de têm acesso à cópia mais recente dessa árvore. Mesmo que a mensagem flua de volta pelo fluxo de mensagens (por exemplo, se for emitida uma exceção, ou se a mensagem for processada por meio do segundo terminal do nó FlowOrder), o último estado será mantido. (Em contraste à árvore LocalEnvironment, que reverte para seu estado anterior, se os fluxos de mensagens retornarem o fluxo de mensagens).

Você pode utilizar essa árvore para qualquer finalidade desejada. Por exemplo, você pode utilizar as seguintes instruções ESQL para criar campos na árvore:
SET Environment.Variables =             ROW('granary' AS bread, 'reisling' AS wine, 'stilton' AS cheese);
SET Environment.Variables.Colors[] =
      LIST{'yellow', 'green', 'blue', 'red', 'black'};
SET Environment.Variables.Country[] = LIST{ROW('UK' AS name, 'pound'
AS currency),
   ROW('USA' AS name, 'dollar' AS currency)};

Essas informações agora estão disponíveis para todos os nós para os quais uma mensagem é propagada, independentemente de sua posição relativa no fluxo de mensagens.

Para obter outro exemplo de como você pode utilizar Ambiente para armazenar informações utilizadas por outros nós no fluxo de mensagens, analise o fluxo de mensagens Reserva na seguinte amostra: O nó Compute neste fluxo de mensagens grava informações na subárvore Environment.Variables que foram extraídas de um banco de dados, de acordo com o valor de um campo na mensagem de entrada.

Você pode visualizar amostras apenas quando utilizar o centro de informações integrado ao Message Brokers Toolkit.

Conceitos relacionados
Visão Geral de Fluxos de Mensagens
Estrutura em Árvore Environment
Visão Geral do ESQL
Modelagem de Mensagens
Tarefas relacionadas
Projetando um Fluxo de Mensagens
Definindo o Conteúdo do Fluxo de Mensagens
Gerenciando Arquivos ESQL
Referências relacionadas
Nó Compute
Nó Banco de Dados
Nó Filter
Referência de ESQL
Função do Construtor ROW
Função do Construtor LIST
ROW e LIST Combinados
Comparações de ROW e LIST
Instrução SET
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Última atualização : 2009-02-13 16:11:49

ac16840_