Este tópico contém as seguintes seções:
Utilize o nó RouteToLabel junto com um ou mais nós Label para determinar dinamicamente a rota que uma mensagem deve seguir pelo fluxo de mensagens, com base em seu conteúdo. O nó RouteToLabel interroga o Ambiente Local da mensagem para determinar o identificador do nó Label para o qual rotear a mensagem.
Você deve preceder o nó RouteToLabel no fluxo de mensagens por um nó Compute que ocupa o Ambiente Local da mensagem com os identificadores de um ou mais nós Label que introduzem a próxima seqüência de processamento para a mensagem. Os destinos são configurados como uma lista de nomes de rótulos na árvore Ambiente Local em um local específico. Esse fragmento de ESQL da amostra Airline Reservations (com link abaixo) fornece um exemplo de como configurar o conteúdo de LocalEnvironment em um nó Compute:
IF InputRoot.XML.PassengerQuery.ReservationNumber<>'' THEN SET OutputLocalEnvironment.Destination.RouterList.DestinationData[1].labelname='SinglePassenger'; ELSE SET OutputLocalEnvironment.Destination.RouterList.DestinationData[1].labelname='AllReservations'; END IF;
Os nomes de rótulos podem ser qualquer valor de cadeia e podem ser explicitamente especificados no nó Compute ou obtidos ou lançados a partir de qualquer campo na mensagem, ou recuperados a partir de um banco de dados. No entanto, um nome de rótulo no Ambiente Local deve corresponder à propriedade Nome do Rótulo de um Nó Label correspondente.
Ao configurar o nó Compute, você também deve selecionar um valor para a propriedade Modo Calcular a partir da lista drop down que inclui o Ambiente Local.
Projete seu fluxo de mensagens para que um nó RouteToLabel preceda logicamente um ou mais nós Label em um fluxo de mensagens, mas não ligue fisicamente o nó RouteToLabel a um nó Label. A conexão é feita pelo intermediário, quando requerida, de acordo com o conteúdo do Ambiente Local.
O nó RouteToLabel é representado no workbench pelo seguinte ícone:
Veja a amostra a seguir para consultar como utilizar este nó:
Quando tiver colocado uma instância do nó RouteToLabel em um fluxo de mensagens, será possível configurá-lo. Clique com o botão direito do mouse na visualização do editor clique em Propriedades. As propriedades básicas do nó são exibidas.
Todas as propriedades obrigatórias, para as quais é necessário inserir um valor (aquelas que não possuem um valor padrão definido) são marcadas com um asterisco no diálogo das propriedades.
Configure o nó RouteToLabel da seguinte forma:
Clique em Cancelar para fechar o diálogo e descartar todas as alterações feitas nas propriedades.
Os terminais do nó RouteToLabel são descritos na tabela a seguir.
Terminal | Descrição |
---|---|
Entrada | O terminal de entrada que aceita a mensagem para processamento pelo nó. |
Defeito | O terminal de saída para o qual a mensagem será roteada se for detectado um defeito durante o processamento. |
As tabelas a seguir descrevem as propriedades do nó; a coluna com cabeçalho M indica se a propriedade é obrigatória (marcado com um asterisco no diálogo de propriedades caso seja necessário digitar um valor quando nenhum padrão for definido), a coluna com cabeçalho C indica se a propriedade é configurável (você poderá alterar o valor quando incluir o fluxo de mensagens no arquivo bar para implementá-lo).
As propriedades Básicas do nó RouteToLabel são descritas na tabela a seguir.
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Modo | Sim | Não | Rotear para o Último | Como o nó RouteToLabel processa os itens dentro do Ambiente Local associado à mensagem atual |
As propriedades de Descrição do nó RouteToLabel são descritas na tabela a seguir.
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Descrição Breve | Não | Não | Uma breve descrição do nó. | |
Descrição Longa | Não | Não | Texto que descreve a finalidade do nó no fluxo de mensagens. |