WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Expresiones de selección de registro

La expresión de selección de registro se utiliza para seleccionar un registro de un archivo para que se propague al resto del flujo.

Cada registro a su vez se compara con la expresión, y el primero que se evalúe en verdadero se propaga al terminal Out. Puede establecer la expresión en cualquier expresión válida XPath que devuelva un valor booleano. La expresión no se utiliza cuando se selecciona Todo el archivo como la opción de Detección de registros.

Nombres de correlación utilizados en la expresión

Puede utilizar cualquiera de los siguientes nombres de correlación de la expresión:
RaízEntrada y EntradaEntornoLocal
Los nombres de Entrada hacen referencia al mensaje entrante que entra en el nodo a través del terminal In
RaízResultado
El nombre RaízResultado refiere al mensaje creado utilizando el registro actual del archivo.
RaízSalida
El nombre RaízSalida refiere al mensaje que se propaga si la expresión se evalúa en verdadero. Esta acción es idéntica a RaízResultado, a menos que la ubicación de los datos de Salida o la ubicación de datos Resultado hayan sido cambiados para copiar el mensaje Resultado encontrado en el archivo a una ubicación diferente en el mensaje saliente.
OutputLocalEnvironment
La opción OutputLocalEnvironment contiene el entorno local normal que se propaga por el terminal Out y contiene información útil, como el número de registro y su desplazamiento.

Cualquier combinación de datos en estos nombres de correlación se pueden utilizar, junto con cualquier expresión Xpath válida, para determinar si se ha de propagar al registro.

Ejemplos

La expresión es:
$InputRoot/XMLNSC/Invoice/AccountNumber=$ResultRoot/XMLNSC/Data/Key

En este ejemplo, cada registro es un documento XML válido. El nodo FileRead lee cada registro del archivo. En el mensaje de entrada, el nodo FileRead compara el campo /Data/Key con el campo /Invoice/AccountNumber. Si el registro coincide, se propaga al terminal Out.

La expresión es:
$OutputLocalEnvironment/File/Read/RecordNumber=5

El nodo FileRead lee cada registro del archivo y compara el número de registro con 5. El registro se propaga cuando alcanza el quinto registro.

Compilación de un mensaje saliente utilizando un mensaje entrante combinado con un registro de un archivo

El nodo FileRead lee un registro de un archivo y lo combina con el mensaje que entra en el nodo. De forma predeterminada, reemplaza el mensaje por los contenidos del registro leídos en el archivo. No obstante, utilizando las propiedades en el Panel de resultados, puede elegir cómo combinar el mensaje entrante y los contenidos de los registros de archivo. El nodo tiene tres árboles lógicos:
Entrada
El ensamblaje del mensaje de Entrada contiene todos los datos del mensaje entrante y es la base para el registro propagado.
Resultado
El ensamblaje del mensaje Resultado contiene el registro que se leyó en el archivo.
Salida
El ensamblaje del mensaje de Salida es el objeto concreto propagado desde el nodo.

De forma predeterminada, el ensamblaje del mensaje Salida se construye copiando el ensamblaje del mensaje Entrada al ensamblaje del mensaje Salida. La parte de datos del ensamblaje del mensaje Salida se reemplaza entonces por los contenidos del ensamblaje del mensaje Resultado y OutputLocalEnvironment se actualiza con detalles de lo que sucedió en el nodo.

Las siguientes propiedades del panel Resultados se pueden utilizar para modificar este comportamiento:
Ubicación de datos de resultado
Especifica qué parte del registro leído se copia al mensaje Salida. De forma predeterminada, la ubicación de datos de Resultado copia todo de RaízResultado, pero puede cambiarse para que copie sólo parte del registro. Pro ejemplo: ResultRoot.XMLNSC.Invoice.Name solamente copia el campo del nombre del registro seleccionado al mensaje de salida.
Ubicación de datos de salida
Especifica dónde se copia el registro en el mensaje de salida. De forma predeterminada, la ubicación de los datos Salida copia todo a RaízSalida. La ubicación especificada puede estar en la parte de datos del mensaje (bajo RaízResultado) o en cualquier otro árbol Salida, como OutputLocalEnvironment. Por ejemplo: para copiar el registro resultante a un campo del cuerpo del mensaje OutputRoot.XMLNSC.Invoice.Data o para copiar el resultado al entorno local, OutputRoot.Variables.Invoice.data.
Copiar entorno local
Hace que el entorno local se copie desde InputLocalEnvironment. Si la opción Copiar entorno local no está seleccionada, InputLocalEnvironment se utiliza directamente sin copiarse. Esta opción permite que los nodos anteriores al nodo FileRead vean los cambios en el entorno local.
Por ejemplo, las siguientes opciones copian el nombre de campo desde un registro al mensaje de salida. El resto del mensaje Salida se basa en el mensaje de entrada:
Result data location= ResultRoot.XMLNSC.Invoice.Name
Output data location= OutputRoot.XMLNSC.Invoice.Name
Las siguientes opciones copian el cuerpo del mensaje desde un registro al entorno local saliente. El mensaje Salida es el mismo que el mensaje de entrada:
Result data location= ResultRoot.XMLNSC.Invoice
Output data location= OutputLocalEnvironment.Variables.Invoice
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

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

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:01:02


Tema de conceptoTema de concepto | Versión 8.0.0.5 | bc34095