Registros de opciones para registros MQ

Cada registro MQ está asociado con cinco registros de opciones, que EGL utiliza como argumentos en las llamadas ocultas a MQSeries:

Al especificar un registro de opciones como propiedad de un registro MQ, está haciendo referencia a una variable que utiliza un componente de registro de almacenamiento de trabajo (como MQOD) como definición de tipo (typeDef). El componente reside en un archivo EGL que se suministra con el producto, como se describe en el apartado Soporte de MQSeries. En lugar de utilizar el componente de registro tal cual, puede copiarlo en su propio archivo EGL y personalizarlo.

Si no indica que se está utilizando un componente de opciones determinado, EGL construye un registro por omisión y le asigna valores, como se describe en las siguientes secciones. Los registros de opciones por omisión no están disponibles, sin embargo, si accede a MQSeries sin utilizar registros MQ.

Registro de opciones get

Puede crear un registro de opciones get basado en MQGMO (Opciones de mensaje Get) de MQSeries, que es un argumento de las llamadas MQGET de MQSeries. Si no declara un registro de opciones get, EGL crea automáticamente un valor por omisión denominado MQGMO y el programa generado hace lo siguiente:
  • Inicializa el registro de opciones get con los valores indicados al principio de Inicialización de datos
  • Establece OPTIONS en MQGMO_SYNCPOINT o MQGMO_NO_SYNCPOINT, dependiendo de si ha establecido la propiedad de registro MQ Incluir mensaje en transacción

Registro de opciones put

Puede crear un registro de opciones put basado en MQPMO (Opciones de mensaje Put) de MQSeries, que es un argumento de las llamadas MQPUT de MQSeries. Si no declara un registro de opciones put, EGL crea automáticamente un valor por omisión denominado MQPMO y el programa generado hace lo siguiente:
  • Inicializa el registro de opciones put con los valores indicados al principio de Inicialización de datos
  • Establece OPTIONS en MQPMO_SYNCPOINT o MQPMO_NO_SYNCPOINT, dependiendo de si ha establecido la propiedad de registro MQ Incluir mensaje en transacción

Registro de opciones open

El contenido del registro de opciones open determina el valor del parámetro Opciones utilizado en las llamadas al mandato MQSeries MQOPEN o MQCLOSE. El componente de registro de opciones open (MQOO) está disponible, pero si no declara un registro basado en ese componente, EGL crea automáticamente uno por omisión denominado MQOO del siguiente modo:
  • En un MQOPEN que se invoca debido a una sentencia EGL add, el programa generado establece MQOO.OPTIONS en este valor:
      MQOO_OUTPUT + MQOO_FAIL_IF_QUIESCING
  • En un MQOPEN que se invoca debido a una sentencia EGL get next, el programa generado establece MQOO.OPTIONS en el siguiente valor cuando la opción de propiedad de registro de cola de mensajes Abrir cola de entrada para uso exclusivo está en vigor:
      MQOO_INPUT_EXCLUSIVE + MQOO_FAIL_IF_QUIESCING
  • En un MQOPEN que se invoca debido a una sentencia EGL get next, el programa generado establece MQOO.OPTIONS en el siguiente valor cuando la opción de propiedad de registro de cola de mensajes Abrir cola de entrada para uso exclusivo no está en vigor:
      MQOO_INPUT_SHARED + MQOO_FAIL_IF_QUIESCING
  • En un MQCLOSE que se invoca debido a una sentencia EGL close, el programa generado establece MQOO.OPTIONS en este valor:
      MQCO_NONE

Registro descriptor de mensajes

Puede crear un registro descriptor de mensajes basado en MQMD (Descriptor de mensajes) de MQSeries, que es un parámetro de las llamadas MQGET y MQPUT. Si no declara un registro descriptor de mensajes, EGL crea automáticamente un valor por omisión denominado MQMD y lo inicializa con los valores indicados en Inicialización de datos.

Registro descriptor de cola

Puede crear un registro de descriptor de colas basado en MQOD (Descriptor de objeto MQSeries) que es un argumento de las llamadas MQOPEN y MQCLOSE de MQSeries. Si no declara un registro descriptor de cola, EGL crea automáticamente un valor por omisión denominado MQOD y el programa generado hace lo siguiente:
  • Inicializa el registro descriptor de cola con los valores indicados al principio de Inicialización de datos
  • Establece el valor OBJECTTYPE de ese registro en MQOT_Q
  • Establece el valor OBJECTMGRNAME en el nombre de gestor de colas especificado en la palabra de sistema record.resourceAssociation; pero si record.resourceAssociation no hace referencia al nombre del gestor de colas, OBJECTQMGRNAME no tiene ningún valor
  • Establece el valor OBJECTNAME en el nombre de cola de record.resourceAssociation
Comentarios
(C) Copyright IBM Corporation 2000, 2005. Reservados todos los derechos.