Opzioni di ricezione messaggi MQ

Le opzioni di ricezione messaggi MQ controllano l'azione di MQGET.

È possibile specificare zero, una o più delle opzioni descritte di seguito. Se è necessaria più di una opzione, i valori possono essere:
  • aggiunti (non aggiungere più volte la stessa costante) o
  • combinati utilizzando l'operatore a bit OR (se il linguaggio di programmazione supporta le operazioni a bit).

Il valore iniziale del campo Options è MQGMO_NO_WAIT plus MQGMO_PROPERTIES_AS_Q_DEF.

Opzioni proprietà

Le seguenti opzioni sono correlate alle proprietà del messaggio:
MQGMO_PROPERTIES_AS_Q_DEF

Le proprietà del messaggio, eccetto quelle contenute nel descrittore del messaggio (o estensione) devono essere rappresentate come definito nella proprietà della coda PropertyControl. Se viene fornito MsgHandle, questa opzione viene ignorata e le proprietà del messaggio sono disponibili attraverso MsgHandle, a meno che il valore della proprietà della coda PropertyControl non sia MQPROP_FORCE_MQRFH2.

Questa è l'azione predefinita se non vengono specificate opzioni della proprietà.

MQGMO_PROPERTIES_IN_HANDLE

Le proprietà del messaggio devono essere rese disponibili attraverso MsgHandle. Se non viene fornita alcuna gestione messaggio, la chiamata non riesce con codice d'errore MQRC_HMSG_ERROR.

MQGMO_NO_PROPERTIES

Non verrà richiamata alcuna proprietà del messaggio, eccetto quelle contenute nel descrittore del messaggio (o estensione). Se è stato fornito un MsgHandle, verrà ignorato.

MQGMO_PROPERTIES_FORCE_MQRFH2

Le proprietà del messaggio, eccetto quelle contenute nel descrittore del messaggio (o estensione), devono essere rappresentate utilizzando intestazioni MQRFH2. Questo garantisce la compatibilità con le versioni precedenti delle applicazioni che richiedono di richiamare le proprietà ma non supportano modifiche per l'utilizzo di handle del messaggio. Se è stato fornito un MsgHandle, verrà ignorato.

MQGMO_PROPERTIES_COMPATIBILITY
Se il messaggio contiene una proprietà con un prefisso "mcd.", "jms.", "usr." o "mqext.", tutte le proprietà del messaggio vengono fornite all'applicazione in un'intestazione MQRFH2. Altrimenti, tutte le proprietà del messaggio, eccetto quelle contenute nel descrittore del messaggio (o estensione), vengono scartate e non sono più accessibili all'applicazione.

Opzione predefinita

Se nessuna delle opzioni descritte in precedenza è necessaria, può essere utilizzata la seguente opzione:
MQGMO_NONE
Utilizzare questo valore per indicare che non sono state specificate altre opzioni; tutte le opzioni assumono i propri valori predefiniti. MQGMO_NONE aiuta la documentazione del programma; questa opzione non è studiata per essere utilizzata con altre funzioni, ma essendo il suo valore pari a zero, un simile uso non può essere rilevato.