WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Expressões de Seleção de Registro

A expressão de seleção de registro é usada para selecionar um registro de um arquivo para propagar para o restante do fluxo.

Cada registro, por sua vez, é comparado com a expressão e o primeiro avaliado como true é propagado para o terminal de Saída. É possível configurar a expressão com qualquer expressão XPath válida que retornar um valor booleano. A expressão não é usada quando Arquivo Inteiro é selecionado como a opção Detecção de Registro.

Nomes de Correlação Usados na Expressão

É possível usar qualquer um dos seguintes nomes de correlação na expressão:
InputRoot e InputLocalEnvironment
Os nomes de Entrada referem-se à mensagem recebida que entra no nó por meio do terminal de Entrada
ResultRoot
O nome ResultRoot refere-se à mensagem criada usando o registro atual no arquivo.
OutputRoot
O nome OutputRoot refere-se à mensagem que será propagada se a expressão for avaliada como true. Esta ação é idêntica a ResultRoot, a não ser que o local dos dados de Saída ou o local dos dados de Resultado tenha sido alterado para copiar a mensagem de Resultado localizada no arquivo para um local diferente na mensagem de saída.
Ambiente Local da Saída
O OutputLocalEnvironment contém o ambiente local normal que é propagado pelo terminal de Saída e contém informações úteis, como o número do registro e seu deslocamento.

É possível usar qualquer combinação de dados nesses nomes de correlação, juntamente com qualquer expressão XPath válida, para determinar se o registro deve ser propagado.

Exemplos

A expressão é:
$InputRoot/XMLNSC/Invoice/AccountNumber=$ResultRoot/XMLNSC/Data/Key

Neste exemplo, cada registro é um documento XML válido. O nó FileRead lê cada registro do arquivo. Na mensagem recebida, o nó FileRead compara o campo /Data/Key ao campo /Invoice/AccountNumber. Se o registro corresponder, ele será propagado para o terminal de Saída.

A expressão é:
$OutputLocalEnvironment/File/Read/RecordNumber=5

O nó FileRead lê cada registro do arquivo e compara o número do registro com 5. O registro é propagado ao atingir o quinto registro.

Construir uma Mensagem de Saída Usando uma Mensagem Recebida Combinada com um Registro de um Arquivo

O nó FileRead lê um registro de um arquivo e o combina com a mensagem recebida no nó. Por padrão, ele substitui a mensagem pelo conteúdo do registro lido do arquivo. No entanto, ao usar propriedades no painel de Resultado, é possível escolher como combinar a mensagem recebida e o conteúdo do registro do arquivo. O nó possui três árvores lógicas:
Entrada
O conjunto da mensagem de Entrada contém todos os dados da mensagem de entrada e é a base do registro propagado.
Resultado
O conjunto da mensagem de Resultado contém o registro lido do arquivo.
Saída
O conjunto da mensagem de Saída é o objeto real propagado do nó.

Por padrão, o conjunto da mensagem de Saída é construído copiando-se o conjunto da mensagem de Entrada para o conjunto da mensagem de Saída. A parte dos dados do conjunto da mensagem de Saída é então substituído pelo conteúdo do conjunto da mensagem de Resultado e o OutputLocalEnvironment é atualizado com detalhes do que aconteceu no nó.

As seguintes propriedades do painel de Resultado podem ser usadas para modificar esse comportamento:
Local de dados de Resultado
Especifica qual parte do registro de leitura é copiada para a mensagem de Saída. Por padrão, o local de dados de Resultado copia tudo de ResultRoot, mas pode ser alterado para copiar apenas parte do registro. Por exemplo: ResultRoot.XMLNSC.Invoice.Name copia apenas o campo de nome do registro selecionado para a mensagem de saída.
Local de dados de Saída
Especifica para onde o registro é copiado na mensagem de saída. Por padrão, o local de dados de Saída copia tudo para OutputRoot. O local especificado pode estar na parte de dados da mensagem (em ResultRoot) ou em qualquer outra árvore de Saída, como OutputLocalEnvironment. Por exemplo: Copiar o registro resultante para um campo no corpo da mensagem OutputRoot.XMLNSC.Invoice.Data ou copiar o resultado para o ambiente local OutputRoot.Variables.Invoice.data.
Copiar ambiente local
Faz com que o ambiente local seja copiado a partir de InputLocalEnvironment. Se a opção Copiar ambiente local não estiver selecionada, o InputLocalEnvironment será usado diretamente sem cópia. Essa opção permite que nós antes do nó FileRead vejam as mudanças no ambiente local.
Por exemplo, as opções a seguir copiam o campo de nome de um registro para a mensagem de saída. O restante da mensagem de Saída baseia-se na mensagem de entrada:
Result data location= ResultRoot.XMLNSC.Invoice.Name
Output data location= OutputRoot.XMLNSC.Invoice.Name
As opções a seguir copiam o corpo da mensagem de um registro para o ambiente local de saída. A mensagem de saída é a mesma que a de entrada:
Result data location= ResultRoot.XMLNSC.Invoice
Output data location= OutputLocalEnvironment.Variables.Invoice
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:31:03


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | bc34095