Opcje pobierania komunikatów MQ
Opcje pobierania komunikatów MQ sterują działaniami elementu MQGET.
- Zsumowane (nie należy dodawać tej samej stałej więcej niż raz) lub
- Złożone przy użyciu bitowej operacji OR (jeśli język programowania obsługuje operacje bitowe).
Wartość początkowa pola
Opcje
to
MQGMO_NO_WAIT plus MQGMO_PROPERTIES_AS_Q_DEF.
Opcje właściwości
- MQGMO_PROPERTIES_AS_Q_DEF
-
Właściwości komunikatu, z wyjątkiem właściwości, które są zawarte w deskryptorze lub rozszerzeniu komunikatu, muszą być przedstawione jako zdefiniowane przez właściwość kolejki PropertyControl. Jeśli udostępniono element
MsgHandle
, ta opcja jest ignorowana, a właściwości komunikatu są dostępne za pomocą elementuMsgHandle
, z wyjątkiem sytuacji, gdy wartość właściwości kolejki PropertyControl wynosiMQPROP_FORCE_MQRFH2
.Jest to działanie domyślne w sytuacji, gdy nie są określone opcje właściwości.
- MQGMO_PROPERTIES_IN_HANDLE
-
Właściwości komunikatu muszą być udostępnione za pomocą elementu
MsgHandle
. Jeśli nie udostępniono uchwytu komunikatu, wywołanie zakończy się niepowodzeniem z następującej przyczyny: MQRC_HMSG_ERROR. - MQGMO_NO_PROPERTIES
-
Nie zostaną pobrane żadne właściwości komunikatu, z wyjątkiem właściwości zawartych w deskryptorze lub rozszerzeniu komunikatu. Jeśli udostępniony zostanie element
MsgHandle
, zostanie on zignorowany. - MQGMO_PROPERTIES_FORCE_MQRFH2
-
Właściwości komunikatu, z wyjątkiem właściwości, które są zawarte w deskryptorze lub rozszerzeniu komunikatu, muszą być przedstawione przy użyciu nagłówków MQRFH2. Zapewni to kompatybilność z wcześniejszymi wersjami na potrzeby aplikacji oczekujących na pobranie właściwości, jednak nie umożliwiają wprowadzenia zmian pozwalających na użycie uchwytów komunikatów. Jeśli udostępniony zostanie element
MsgHandle
, zostanie on zignorowany. - MQGMO_PROPERTIES_COMPATIBILITY
- Jeśli komunikat zawiera właściwość z przedrostkiem mcd., jms., usr. lub mqext., wszystkie właściwości komunikatu są dostarczane do aplikacji w nagłówku MQRFH2. W przeciwnym razie wszystkie właściwości komunikatu, z wyjątkiem właściwości, które są zawarte w deskryptorze komunikatu lub w rozszerzeniu, są usuwane i nie są już dostępne dla aplikacji.
Opcja domyślna
- MQGMO_NONE
- Wartość ta wskazuje, że nie określono innych opcji. Wszystkie opcje przyjmują wówczas wartości domyślne. Opcja MQGMO_NONE stanowi rozszerzenie dokumentacji programu. Opcja ta nie jest przeznaczona do użytku wraz z jakąkolwiek inną opcją, ponieważ jednak jej wartość wynosi zero, takie użycie nie zostanie wykryte.