Inicio del cambio

Mandato mqsichangeflowuserexit

Sistemas operativos soportados

  • Windows
  • Sistemas Linux y UNIX
  • z/OS

Finalidad

Utilice el mandato mqsichangeflowuserexit para establecer la lista de rutinas de salida de usuario activas o inactivas. Hay una lista de rutinas de salida de usuario activas y una de rutinas inactivas para cada grupo de ejecución y flujo de mensajes. El estado efectivo de las rutinas de salida de usuario de un flujo determinado se decide al iniciar el flujo. Se decide teniendo en cuenta la lista de rutinas de salida de usuario activas e inactivas para el flujo y su grupo de ejecución.

El orden de prioridad es el flujo de mensajes, el grupo de ejecución y a continuación el intermediario predeterminado. La lista de rutinas activas tiene preferencia sobre la lista de rutinas inactivas en los valores del flujo de mensajes y el grupo de ejecución.

Si el estado de una rutina de salida de usuario no está establecida para el flujo de mensajes, entonces se toma el estado del valor del grupo de ejecución. Si el estado no está establecido para el flujo de mensajes ni el grupo de ejecución, entonces toma el estado predeterminado que es implícitamente inactivo o que puede definirse explícitamente como activo mediante la propiedad de intermediario activeUserExits, con el mandato mqsichangebroker.

Si un nombre de rutina de salida de usuario determinada está presente en la lista de rutinas activas y la de rutinas inactivas para un flujo de mensajes o grupo de ejecución, la lista de rutinas activas tiene preferencia y la rutina de salida de usuario está activa para ese nivel. Por tanto, si desea cambiar una rutina de salida de usuario de activa a inactiva, debe especificar la como parte de la lista de rutinas inactivas utilizando el distintivo -i y además eliminarla de la lista de rutinas activas especificando otra vez una lista de rutinas activas nueva utilizando el distintivo -a.

Cuando varias rutinas de salida están activas para un flujo determinado, se invocan en un orden definido. Las rutinas de salida de la lista de rutinas activas del flujo de mensajes se invocan primero en el orden en el que se especificaron en el distintivo -a.

Después de éstas, se invocan las rutinas de salida de la lista de rutinas activas del grupo de ejecución (que no estaban en la lista de rutinas activas ni en la de rutinas inactivas del flujo de mensajes). Se invocan en el orden en el que se especificaron en el distintivo -a.

Todas las rutinas de salida de usuario que no se mencionan en la lista de rutinas activas o en la de rutinas inactivas del flujo de mensajes o del grupo de ejecución, pero que están en la lista de rutinas activas del intermediario, se invocan en el orden en el que se especificaron cuando se estableció la propiedad de intermediario activeUserExits.

Si alguna de las rutinas de salida de usuario especificadas en la lista de rutinas activas o de rutinas inactivas no está registrada para el grupo de ejecución de destino, se produce el error BIP8858 en el mandato.

Si cualquiera de las rutinas de salida de usuario especificadas se convierte en no válida después de la terminación correcta del mandato, se efectuará lo siguiente en función de en qué lista aparecía la rutina de salida de usuario:
  • Si la rutina de salida de usuario estaba especificada en la lista de rutinas activas o rutinas inactivas del flujo de mensajes, el flujo no puede iniciarse y se escribe un mensaje BIP2315 a las anotaciones del sistema.
  • Si la rutina de salida de usuario estaba especificada en la lista de rutinas activas o rutinas inactivas del grupo de ejecución, el grupo de ejecución no puede iniciarse y se escribe un mensaje BIP2314 a las anotaciones del sistema.
Esto podría pasar por una de las tres razones siguientes:
  • El intermediario o grupo de ejecución se reinicia después de cambiar la variable MQSI_USER_EXIT_PATH mediante la eliminación del directorio que contiene la biblioteca de rutinas de salida de usuario.
  • El intermediario o grupo de ejecución se reinicia después de cambiar la propiedad de intermediario userExitPath mediante la eliminación del directorio que contiene la biblioteca de rutinas de salida de usuario.
  • La biblioteca de rutinas de salida de usuario (o una de sus dependencias) se ha eliminado o el intermediario no puede cargarla.

Sintaxis

Parámetros

nombreIntermediario
(Necesario). El nombre del intermediario.
-e egName
(Necesario). El nombre del grupo de ejecución.
-f messageflow
(Opcional). El nombre del flujo de mensajes. Si se proporciona, la rutina de salida de usuario se cambia por ese flujo de mensajes. Si no se proporciona, la rutina de salida de usuario se establece en el nivel de grupo de ejecución.
-a activeUserExitNames
(Opcional). Una lista de nombres, separados por signos de dos puntos, de las rutinas de salida de usuario activas. Estos son los nombre que registraron las rutinas de salida de usuario cuando se cargaron. Si cualquiera de las rutinas de salida de usuario listadas no están registradas para el grupo de ejecución de destino, entonces se produce el error BIP8858 en el mandato.
-i inactiveUserExitNames
(Opcional).

Una lista de nombres, separados por signos de dos puntos, de las rutinas de salida de usuario inactivas. Estos son los nombre que registraron las rutinas de salida de usuario cuando se cargaron. Si cualquiera de las rutinas de salida de usuario listadas no están registradas para el grupo de ejecución de destino, entonces se produce el error BIP8858 en el mandato.

Autorización

El ID de usuario que se utiliza para invocar este mandato debe tener autoridad de grupo mqbrkrs.

Respuestas

Este mandato devuelve las siguientes respuestas:
  • BIP8852 Sentencia de utilización
  • BIP80711 El mandato ha finalizado correctamente.
  • BIP8858 Nombres de rutina de salida de usuario &1 no válidos (donde &1 es el nombre de las rutinas de salida de usuario que se especificaron en este mandato pero que no son válidos porque no han sido registrados en el grupo de ejecución de destino).

Ejemplos

Establecer rutinas de salida activas en el nivel de flujo
mqsichangeflowuserexit WBRK_BROKER -e default -f myFlow -a exit2
BIP8071I: El mandato ha finalizado correctamente
Establecer rutinas de salida inactivas en el nivel de flujo
mqsichangeflowuserexit WBRK_BROKER -e default -f myFlow -i exit1
BIP8071I: El mandato ha finalizado correctamente
Establecer rutinas de salida activas en el nivel de grupo de ejecución
mqsichangeflowuserexit WBRK_BROKER -e default -a exit3,exit1
BIP8071I: El mandato ha finalizado correctamente
Establecer rutinas de salida inactivas en el nivel de grupo de ejecución
mqsichangeflowuserexit WBRK_BROKER -e default -1 exit2
BIP8071I: El mandato ha finalizado correctamente
Cambiar la rutina de salida exit1 a inactiva y dejar la rutina de salida activa en el nivel del flujo (Previamente se había emitido un mandato con "-a exit1:exit2" para establecer las dos como activas)
mqsichangeflowuserexit WBRK_BROKER -e default -f myFlow -i exit1 -a exit2
BIP8071I: El mandato ha finalizado correctamente
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Su opinión
Copyright IBM Corporation 1999, 2006 Última actualización: 04/05/2006
an35900_


Fin del cambio