9.6.2 配布リストへのメッセージ登録
配布リストにメッセージを登録するには,MQPUT命令またはMQPUT1命令を使用できます。入力として,次に示す項目を設定してください。
-
コネクションハンドル
-
オブジェクトハンドル
配布リストをMQOPEN命令でオープンした場合は,Hobjパラメタは配布リストへの登録だけを許可します。
-
メッセージ記述子(MQMD構造体)
-
メッセージ登録オプション(MQPMO構造体)の制御情報
-
登録メッセージレコード(MQPMR構造体)の制御情報
-
メッセージ中のデータ長(MQLONG)
-
メッセージデータ本体
出力を次に示します。
-
完了コード
-
理由コード
-
応答レコード(オプション)
- 〈この項の構成〉
(1) MQPMR構造体の使用
この構造体は必要に応じて使用します。MQMD構造体に定義済みの情報とは異なる情報を,あて先固有の情報としてフィールドに設定します。
各レコードの内容は,MQPMO構造体のPutMsgRecFieldsフィールドによって決定されます。
指定例を次に示します。
typedef struct { MQBYTE24 MsgId; MQBYTE24 CorrelId; } PutMsgRec; /****************** PMO.PutMsgRecFields = MQPMRF_MSG_ID | MQPMRF_CORREL_ID;
ここでは,MsgIdおよびCorrelIdフィールドが配布リストの各あて先に設定されます。登録メッセージレコードは配列で指定されます。
C言語での配布リストへの登録について,次の図に示します。
|
COBOL言語での配布リストへの登録について,次の図に示します。
|
(2) MQPUT1命令の使用
MQPUT1命令を使用する場合は,次に示す項目について注意してください。
-
ResponseRecOffsetおよびResponseRecPtrフィールドはヌルまたは0にしてください。
-
応答レコードが必要な場合は,MQOD構造体からの位置を指定してください。