MQDLTMH - メッセージ・ハンドルの削除

MQDLTMH 呼び出しは、メッセージ・ハンドルを削除するので、MQCRTMH 呼び出しの逆です。

構文

MQDLTMH(HconnHmsgDltMsgHOptsCompCodeReason)

パラメーター

Hconn
タイプ: MQHCONN - 入力

このハンドルは、キュー・マネージャーに対する接続を表します。

この値は、 Hmsg パラメーターで指定されたメッセージ・ハンドルの作成に使用された接続ハンドルと一致している必要があります。

MQHC_UNASSOCIATED_HCONN を使用してメッセージ・ハンドルが作成された場合は、メッセージ・ハンドルを削除するスレッド上で有効な接続を確立しなければなりません。確立しないと、呼び出しは MQRC_CONNECTION_BROKEN で失敗します。

Hmsg
タイプ: MQHMSG - 入出力

これは削除されるメッセージ・ハンドルです。 値は、前の MQCRTMH 呼び出しで戻されたものです。

呼び出しが正常に完了すると、ハンドルは環境に対して無効な値に設定されます。 値は、以下のとおりです。
MQHM_UNUSABLE_HMSG
使用できないメッセージ・ハンドル。
同じメッセージ・ハンドルを渡された別の IBM® MQ 呼び出しが進行中の場合は、メッセージ・ハンドルを削除できません。
DltMsgHOpts
タイプ: MQDMHO - 入力

詳しくは、 MQDMHO を参照してください。

CompCode
タイプ: MQLONG - 出力
完了コード。以下のいずれかです。
MQCC_OK
正常終了。
MQCC_FAILED
呼び出し失敗。
理由
タイプ: MQLONG - 出力
CompCodeが MQCC_OK の場合:
MQRC_NONE
(0, X'000') レポートする理由コードはありません。
CompCode が MQCC_FAILED の場合、次のようになります。
MQRC_ADAPTER_NOT_AVAILABLE
(2204, X'089C') アダプターが利用できません。
MQRC_ADAPTER_SERV_LOAD_ERROR
(2130, X'852') アダプター・サービス・モジュールをロードできません。
MQRC_ASID_MISMATCH
(2157, X'86D') 1 次 ASID とホーム ASID が異なっています。
MQRC_CALL_IN_PROGRESS
(2219, X'08AB') 前の呼び出しが完了する前に MQI 呼び出しが入力された。
MQRC_CONNECTION_BROKEN
(2009, X'07D9') キュー・マネージャーとの接続が失われました。
MQRC_DMHO_ERROR
(2462, X'099E') メッセージ・ハンドル削除オプションの構造が無効である。
MQRC_HMSG_ERROR
(2460, X'099C') メッセージ・ハンドル・ポインターが無効。
MQRC_MSG_HANDLE_IN_USE
(2499, X'09C3') メッセージ・ハンドルがすでに使用中。
MQRC_OPTIONS_ERROR
(2046, X'07FE') オプションが無効であるか、矛盾しています。
MQRC_STORAGE_NOT_AVAILABLE
(2071, X'817') ストレージが不足しています。
MQRC_UNEXPECTED_ERROR
(2195, X'893') 予期しないエラーが発生しました。

これらのコードについて詳しくは、 メッセージおよび理由コードを参照してください。

C 言語での呼び出し

MQDLTMH (Hconn, &Hmsg, &DltMsgHOpts, &CompCode, &Reason);
パラメーターを次のように宣言します。
MQHCONN  Hconn;       /* Connection handle */
MQHMSG   Hmsg;        /* Message handle */
MQDMHO   DltMsgHOpts; /* Options that control the action of MQDLTMH */
MQLONG   CompCode;    /* Completion code */
MQLONG   Reason;      /* Reason code qualifying CompCode */

COBOL での呼び出し

CALL 'MQDLTMH' USING HCONN, HMSG, DLTMSGHOPTS, COMPCODE, REASON.
パラメーターを次のように宣言します。
**  Connection handle
01   HCONN   PIC S9(9) BINARY.

**  Options that control the action of MQDLTMH
01   DLTMSGHOPTS.
COPY CMQDMHOL.

**  Completion code
01  COMPCODE   PIC S9(9) BINARY.

** Reason code qualifying COMPCODE
01   REASON      PIC S9(9) BINARY.

PL/I での呼び出し

call MQDLTMH (Hconn, Hmsg, DltMsgHOpts, CompCode, Reason);
パラメーターを次のように宣言します。
dcl Hconn          /* Connection handle */
dcl Hmsg           /* Message handle */
dcl DltMsgHOpts like MQDMHO;    /* Options that control the action of MQDLTMH */
dcl CompCode       /* Completion code */
dcl Reason         /* Reason code qualifying CompCode */

高水準アセンブラー呼び出し

CALL MQDLTMH,(HCONN,HMSG,DLTMSGHOPTS,COMPCODE,REASON)
パラメーターを次のように宣言します。
HCONN          DS        F  Connection handle
HMSG           DS        D  Message handle
DLTMSGHOPTS    CMQDMHOA  ,  Options that control the action of MQDLTMH
COMPCODE       DS        F  Completion code
REASON         DS        F  Reason code qualifying COMPCODE