OpenTP1 メッセージキューイング機能 TP1/Message Queue プログラム作成リファレンス

[目次][索引][前へ][次へ]

付録A.7 MQPUT命令およびMQPUT1命令の引数一覧

MQPUT命令およびMQPUT1命令で指定できる引数の一覧を次の表に示します。

表A-10 MQPUT命令およびMQPUT1命令の引数一覧

引数 データタイプ 向き 内容
Hconn MQHCONN i コネクションハンドル
Hobj1 MQHOBJ i オブジェクトハンドル
ObjDesc2 MQOD i オブジェクト記述子
フィールド StrucId MQCHAR4 i 構造体識別子
Version MQLONG i 構造体バージョン番号
ObjectType MQLONG i オブジェクトタイプ
ObjectName MQCHAR48 i オブジェクト名
ObjectQMgrName MQCHAR48 i オブジェクトキューマネジャ名
DynamicQName MQCHAR48 動的キュー名
AlternateUserId MQCHAR12 i 代替ユーザ識別子
RecsPresent3 MQLONG i オブジェクトレコードの数
KnownDestCount3 MQLONG o ローカルキューの数
UnknownDestCount3 MQLONG o リモートキューの数
InvalidDestCount3 MQLONG o オープンに失敗したキューの数
ObjectRecOffset3 MQLONG i 最初のオブジェクトレコードまでのオフセット
ResponseRecOffset3 MQLONG i 最初の応答レコードまでのオフセット
ObjectRecPtr3 MQPTR i オブジェクトレコードのアドレス
ResponseRecPtr3 MQPTR i 応答レコードのアドレス
AlternateSecurityId4 MQBYTE40 o 代替セキュリティ識別子
ResolvedQName4 MQCHAR48 o 解決したキュー名称
ResolvedQMgrName4 MQCHAR48 o 解決したキューマネジャ名称
MsgDesc MQMD メッセージ記述子
フィールド StrucId MQCHAR4 i 構造体識別子
Version MQLONG i 構造体バージョン番号
Report MQLONG i 報告オプション
MsgType MQLONG i メッセージタイプ
Expiry MQLONG i メッセージ保持時間
Feedback MQLONG i 報告メッセージ返答コード
Encoding MQLONG i マシンコード形式
CodedCharSetId MQLONG i 文字セット識別子
Format MQCHAR8 i フォーマット名
Priority MQLONG i メッセージ優先度
Persistence MQLONG i メッセージ永続性
MsgId MQBYTE24 i/o メッセージ識別子
CorrelId MQBYTE24 i 相関識別子
BackoutCount MQLONG ロールバック回数
ReplyToQ MQCHAR48 i 応答キュー名
ReplyToQMgr MQCHAR48 i 応答キューマネジャ名
UserIdentifier MQCHAR12 o5 ユーザ識別子
AccountingToken MQBYTE32 o5 課金トークン
ApplIdentityData MQCHAR32 o5 アプリケーション識別データ
PutApplType MQLONG o6 登録アプリケーションタイプ
PutApplName MQCHAR28 o6 登録アプリケーション名
PutDate MQCHAR8 o6 登録日付
PutTime MQCHAR8 o6 登録時刻
ApplOriginData MQCHAR4 o6 登録元データ
GroupId3 MQBYTE24 i/o グループ識別子
MsgSeqNumber3 MQLONG i/o メッセージシーケンス番号
Offset3 MQLONG i/o オフセット
MsgFlags3 MQLONG i/o フラグ
OriginalLength3 MQLONG o 登録元メッセージ長
PutMsgOpts MQPMO メッセージ登録オプション
フィールド StrucId MQCHAR4 i 構造体識別子
Version MQLONG i 構造体バージョン番号
Options MQLONG i 登録オプション
Timeout MQLONG 予備
Context MQHOBJ i コンテキスト
KnownDestCount MQLONG o ローカルキューの数
UnknownDestCount MQLONG o リモートキューの数
InvalidDestCount MQLONG o 送信に失敗したキューの数
ResolvedQName MQCHAR48 o 受信キュー名
ResolvedQMgrName MQCHAR48 o 受信キューマネジャ名
RecsPresent3 MQLONG i 登録メッセージレコードまたは応答レコードの数
PutMsgRecFields3 MQLONG i MQPMR構造体の存在
PutMsgRecOffset3 MQLONG i 最初の登録メッセージレコードまでのオフセット
ResponseRecOffset3 MQLONG i 最初の応答レコードまでのオフセット
PutMsgRecPtr3 MQPTR i 登録メッセージレコードのアドレス
ResponseRecPtr3 MQPTR i 応答レコードのアドレス
BufferLength MQLONG i バッファ長
Buffer MQBYTE×
BufferLength
i バッファ
CompCode MQLONG o 完了コード
Reason MQLONG o 理由コード
(凡例)
i:入力用
i/o:入出力用
o:出力用
−:該当しません。
注※1
MQPUT命令で指定してください。
注※2
MQPUT1命令で指定してください。
注※3
Versionフィールドが,MQ*_VERSION_2の場合だけ存在するフィールドです。
注※4
Versionフィールドが,MQ*_VERSION_3の場合だけ存在するフィールドです。
注※5
MQPMO_SET_IDENTITY_CONTEXTまたはMQPMO_SET_ALL_CONTEXTを指定すると,入出力用のフィールドとなります。
注※6
MQPMO_SET_ALL_CONTEXTを指定すると,入出力用のフィールドとなります。

MQPUT命令およびMQPUT1命令の引数に指定できるオプションには,報告オプション(MsgDesc引数のReportフィールド)と登録オプション(PutMsgOpts引数のOptionsフィールド)の2種類があります。

それぞれのフィールドで指定できる報告オプションと登録オプションの一覧を次の各表に示します。

表A-11 報告オプション一覧(MQPUT命令およびMQPUT1命令のMsgDesc引数のReportフィールド)

オプション 指定方法 オープン時に必要なオプション
MQRO_EXCEPTION 必要時にどれか一つだけ指定 MQOO_OUTPUT1
MQRO_EXCEPTION_WITH_DATA
MQRO_EXCEPTION_WITH_FULL_DATA
MQRO_EXPIRATION 必要時にどれか一つだけ指定
MQRO_EXPIRATION_WITH_DATA
MQRO_EXPIRATION_WITH_FULL_DATA
MQRO_COA 必要時にどれか一つだけ指定
MQRO_COA_WITH_DATA
MQRO_COA_WITH_FULL_DATA
MQRO_COD 必要時にどれか一つだけ指定
MQRO_COD_WITH_DATA
MQRO_COD_WITH_FULL_DATA
MQRO_PAN
  • 必要時にどれか一つだけ指定
  • 省略可
MQRO_NAN
MQRO_NEW_MSG_ID(省略時解釈値)
MQRO_PASS_MSG_ID
MQRO_COPY_MSG_ID_TO_CORREL_ID(省略時解釈値)
MQRO_PASS_CORREL_ID
MQRO_DEAD_LETTER_Q
  • 必要時にどちらか一つだけ指定
  • 省略可
MQRO_DISCARD_MSG2
MQRO_NONE 報告を要求しない場合に指定
注※1
MQPUT1命令の場合,キューをオープンしておく必要がないため,この欄は該当しません。
注※2
TP1/Message Queueでは,指定しても動作に影響がありません。

表A-12 登録オプション一覧(MQPUT命令およびMQPUT1命令のPutMsgOpts引数のOptionsフィールド)

オプション 指定方法 オープン時に必要なオプション
MQPMO_SYNCPOINT
  • どちらか一つだけ指定
  • 省略可1
MQOO_OUTPUT2
MQPMO_NO_SYNCPOINT
MQPMO_NEW_MSG_ID 必要時に指定
MQPMO_NEW_CORREL_ID
MQPMO_LOGICAL_ORDER
MQPMO_NO_CONTEXT
  • どれか一つだけ指定
  • 省略可
MQPMO_DEFAULT_CONTEXT
(省略時解釈値)
MQPMO_PASS_IDENTITY_CONTEXT3
  • MQOO_OUTPUT2
  • MQOO_PASS_*2
MQPMO_PASS_ALL_CONTEXT3
  • MQOO_OUTPUT2
  • MQOO_PASS_ALL_CONTEXT2
MQPMO_SET_IDENTITY_CONTEXT
  • MQOO_OUTPUT2
  • MQOO_SET_*2
MQPMO_SET_ALL_CONTEXT
  • MQOO_OUTPUT2
  • MQOO_SET_ALL_CONTEXT2
MQPMO_ALTERNATE_USER_AUTHORITY 必要時に指定(MQPUT1命令の場合) なし
MQPMO_FAIL_IF_QUIESCING4 必要時に指定 MQOO_OUTPUT2
MQPMO_NONE ほかの登録オプションを指定しない場合に指定
注※1
省略時解釈値は環境に依存します。TP1/Message Queueでは,トランザクションの範囲内から呼び出したかどうかで決まります。ほかのWebSphere MQの製品では,省略時解釈値が異なる場合があります。
注※2
MQPUT1命令の場合,キューをオープンしておく必要がないため,この欄は該当しません。
注※3
MQOO_INPUT_*およびMQOO_SAVE_ALL_CONTEXTでオープンした,キューのハンドル(すでにメッセージを取り出したもの)が必要です。
注※4
TP1/Message Queueでは,指定しても動作に影響がありません。