Options MQ d'extraction de messages

Les options MQ d'extraction de messages contrôlent l'action de MQGET.

Vous pouvez spécifier une ou plusieurs options décrites ultérieurement, ou aucune. Si vous avez besoin de plusieurs options, les valeurs peuvent être :
  • ajoutées les unes aux autres (n'ajoutez pas la même constante plusieurs fois), ou
  • combinées par le biais de l'opération OR bit à bit (si le langage de programmation prend en charge les opérations par bit).

La valeur initiale de la zone Options est MQGMO_NO_WAIT plus MQGMO_PROPERTIES_AS_Q_DEF.

Options de propriété

Les options suivantes sont liées aux propriétés du message :
MQGMO_PROPERTIES_AS_Q_DEF

Les propriétés du message, à l'exception de celles contenues dans le descripteur du message (ou l'extension) doivent être représentées comme indiqué dans la propriété de file d'attente PropertyControl. Si un MsgHandle est fourni, cette option est ignorée et les propriétés du message sont disponibles via MsgHandle, à moins que la valeur de la propriété de file d'attente PropertyControl soit MQPROP_FORCE_MQRFH2.

Il s'agit de l'action par défaut si aucune option de propriétés n'est spécifiée.

MQGMO_PROPERTIES_IN_HANDLE

Les propriétés du message doivent être mises à disposition à l'aide de MsgHandle. Si aucun descripteur de message n'est fourni, l'appel échoue avec le code anomalie MQRC_HMSG_ERROR.

MQGMO_NO_PROPERTIES

Aucune propriété de message, à l'exception de celles contenues dans le descripteur de message (ou extension) n'est extraite. Si un MsgHandle est fourni, il est ignoré.

MQGMO_PROPERTIES_FORCE_MQRFH2

Les propriétés du message, à l'exception de celles contenues dans le descripteur de message (ou l'extension) doivent être représentées à l'aide d'en-têtes MQRFH2. Cela garantit la compatibilité amont des applications qui doivent extraire des propriétés, mais ne peuvent pas être modifiées pour utiliser les descripteurs de message. Si un MsgHandle est fourni, il est ignoré.

MQGMO_PROPERTIES_COMPATIBILITY
Si le message contient une propriété possédant un préfixe "mcd.", "jms.", "usr." ou "mqext.", toutes les propriétés de message sont livrées à l'application dans un en-tête MQRFH2. Sinon, toutes les propriétés du message, à l'exception de celles du descripteur de message (ou extension), sont supprimées et ne sont plus accessibles à l'application.

Option par défaut

Si aucune des options présentées précédemment n'est requise, l'option suivante peut être utilisée :
MQGMO_NONE
Utilisez cette valeur pour indiquer qu'aucune autre option n'a été spécifiée. Toutes les options sont définies sur leur valeur par défaut. MQGMO_NONE facilite la documentation du programme. Cette option n'est pas conçue pour être combinée à une autre, mais comme sa valeur est zéro, un tel usage est indétectable.