Rational Developer para System z, Versión 7.6

Variables y referencias de campo en ESQL

En este tema se describe brevemente el uso de variables y referencias de campo en el subconjunto de ESQL que las herramientas de proyecto de flujo de servicios soportan.

Importante: Para comprender totalmente una característica descrita en este tema, debe leer toda la descripción de la característica en la documentación para WebSphere Message Broker (consulte la sección Trabajos de referencia que describen ESQL).

Variables

En ESQL una variable es un campo de datos dentro de un mensaje. Por ejemplo, la variable CA_REQUEST_ID, que es una variable de serie pensada para contener un ID de petición para una aplicación no de terminal, es un campo dentro de un mensaje como msg_QUERYACC_DFHCOMMAREA.

Nota: No se debe confundir el uso de los términos variable y elemento de mensaje. Un elemento de mensaje puede ser una estructura compleja, un campo individual, una matriz o un elemento de matriz. Dos de estos elementos, el campo individual y la matriz, también se pueden denominar variables (consulte la sección Cómo se utilizan los mensajes en flujos).

En ESQL, se hace referencia a una variable mediante una referencia de campo que se compone (en este caso) del nombre de mensaje, seguido por un punto y, después, por el nombre de campo: msg_QUERYACC_DFHCOMMAREA.CA_REQUEST_ID (consulte la sección Referencias de campo).

Las variables de ESQL de un flujo de proyecto de flujo de servicios pertenecen a una categoría de variables de ESQL denominadas compartidas. Estas variables existen para toda la duración del flujo (porque los mensajes en los que están ubicados las variables existen para toda la duración del flujo) y se puede acceder a ellas desde cualquier nodo del flujo.

Por lo tanto, dentro de un flujo puede tener acceso a las estructuras, los campos, las matrices y los elementos de matriz contenidos en todos los mensajes a los que el flujo hace referencia, incluyendo:
  • El mensaje de entrada para el flujo
  • El mensaje de salida para el flujo
  • El mensaje de variables

Los nombres de variables son sensibles a las mayúsculas y minúsculas, así como todos los nombres de los mensajes y los nombres de elementos de los mensajes.

Nota: Puesto que las herramientas de proyecto de flujo de servicios sólo soportan el uso de expresiones ESQL (no sentencias ESQL, procedimientos ESQL ni módulos ESQL), no se puede utilizar la sentencia ESQL DECLARE para declarar una variable.

Referencias de campo

Las referencias de campo son las referencias dentro de las expresiones ESQL a mensajes o elementos de mensajes existentes (incluyendo variables) por nombre. Las referencias de campo pertenecen al tipo de datos REFERENCE.

Las referencias de campo son sensibles a las mayúsculas y minúsculas, porque utilizan nombres de mensajes y de elementos de mensajes, que son sensibles a las mayúsculas y minúsculas (consulte la sección Sensibilidad a las mayúsculas y minúsculas).

Una referencia de campo se compone de un nombre de correlación seguido por cero o más elementos de vía de acceso separados por puntos (consulte la sección Figura 1). En las herramientas de proyecto de flujo de servicios, un nombre de correlación debe ser el nombre de un mensaje que haya importado al flujo actual. Un elemento de vía de acceso puede ser el nombre de una estructura, el nombre de un campo de datos, el nombre de una matriz o el elemento de una matriz. El nombre de correlación y los elementos de vía de acceso combinados especifican la vía de acceso dentro del mensaje para el campo de datos al que desea hacer referencia:
Figura 1. Referencias de campo
msg_QUERYACC_DFHCOMMAREA.CA_REQUEST_ID
msg_MY_PROGRAM_INFO.aiAccountInfo.userName
msg_JGAPPSCA_DFHCOMMAREA.INSEARCHCRITERIA.INFIRSTNAME
msg_MY_DATA.arrCustomerInfo[4].CustomerID

Cuando se utiliza una expresión ESQL que contiene una referencia de campo, ésta debe satisfacer los criterios para ser un identificador de ESQL válido (consulte la sección Identificadores y palabras clave en ESQL).

Importante: Si el nombre de un mensaje o elemento de mensaje que se incluye en una referencia de campo contiene un operador de ESQL o una palabra clave de ESQL, debe especificarse entre comillas. Ejemplos:
Figura 2. Utilización de comillas alrededor de operadores y nombres reservados en las referencias de campo
msg_MY_INFO."ORDER-NUMBER"         *** Signo menos 
msg_MY_INFO."NOT_NEEDED"           *** NOT
msg_MY_INFO."NULL_SENDER"          *** NULL
msg_MY_INFO."IS_VALID"             *** IS

Consulte las secciones Operadores en ESQL y Identificadores y palabras clave en ESQL.


Términos de uso | Comentarios

Este Information Center está basado en tecnología Eclipse. (http://www.eclipse.org)