Volby získávání zpráv MQ

Volby získávání zpráv MQ řídí akci MQGET.

Můžete zadat jednu nebo více voleb popsaných dále v této části, nebo nemusíte zadat žádnou volbu. Chcete-li více než jednu volbu, jsou k dispozici tyto hodnoty:
  • sečíst (žádnou konstantu nepřičítejte vícekrát než jednou) nebo
  • zkombinovat pomocí bitové operace OR (jestliže programovací jazyk podporuje bitové operace).

Počáteční hodnota pole Volby je MQGMO_NO_WAIT plus MQGMO_PROPERTIES_AS_Q_DEF.

Volby vlastností

Následující volby se týkají vlastností zprávy:
MQGMO_PROPERTIES_AS_Q_DEF

Vlastnosti zprávy s výjimkou těch vlastností, které jsou obsaženy v deskriptoru zprávy (nebo v rozšíření), musí být vyjádřeny v souladu s definicí určenou vlastností fronty PropertyControl. Je-li zadána volba MsgHandle, tato volba je ignorována a vlastnosti zprávy jsou dostupné prostřednictvím volby MsgHandle, pokud nemá vlastnost fronty PropertyControl hodnotu MQPROP_FORCE_MQRFH2.

Tato akce je výchozí, jestliže nejsou zadány žádné volby vlastností.

MQGMO_PROPERTIES_IN_HANDLE

Vlastnosti zprávy musí být zpřístupněny prostřednictvím volby MsgHandle. Není-li k dispozici žádný manipulátor zprávy, volání se nezdaří s příčinou MQRC_HMSG_ERROR.

MQGMO_NO_PROPERTIES

Nebudou načteny žádné vlastnosti zprávy s výjimkou těch vlastností, které jsou obsaženy v deskriptoru (nebo rozšíření) zprávy. Je-li zadána volba MsgHandle, je ignorována.

MQGMO_PROPERTIES_FORCE_MQRFH2

Vlastnosti zprávy s výjimkou těch vlastností, které jsou obsaženy v deskriptoru (nebo rozšíření) zprávy, musí být vyjádřeny pomocí záhlaví MQRFH2. Tato volba poskytuje kompatibilitu se staršími verzemi aplikací, které vyžadují načtení vlastnosti, ale nelze je přepracovat tak, aby využívaly manipulátory zpráv. Je-li zadána volba MsgHandle, je ignorována.

MQGMO_PROPERTIES_COMPATIBILITY
Pokud zpráva obsahuje vlastnost s předponou "mcd.", "jms.", "usr." nebo "mqext.", budou všechny vlastnosti zprávy předány aplikaci v záhlaví MQRFH2. Jinak budou všechny vlastnosti zprávy kromě vlastností obsažených v deskriptoru (či rozšíření) zprávy zahozeny a nebudou nadále pro aplikaci přístupné.

Výchozí volba

Není-li zapotřebí žádná z výše uvedených voleb, lze použít tuto volbu:
MQGMO_NONE
Tuto hodnotu použijte, chcete-li vyjádřit, že nebyly zadány žádné jiné volby. Všem volbám budou přiřazeny jejich výchozí hodnoty. Volba MQGMO_NONE slouží jako pomůcka pro dokumentaci programů; s kombinováním této volby s jinými se nepočítá, avšak vzhledem k tomu, že její hodnota je nulová, nelze takové použití zjistit.