機能説明
メッセージキュー内のメッセージを参照します。
記述形式
CALL "MQDPEEKMSG" USING メッセージキューアドレス格納域名, 参照モード格納域名, メッセージヘッダ域名, メッセージ本体域名, 領域長格納域名, カーソル情報格納域名, 復帰情報域名, 復帰値格納域名
パラメタ
MQDCONNECTQプログラムから通知されたメッセージキューアドレスをそのまま指定します。
メッセージがない場合の対処を指定します。
メッセージがない場合には、すぐに復帰します。
メッセージが到着するまで待ちます。
メッセージヘッダを入れる領域を指定します。領域は発行元が用意します。メッセージヘッダの詳細については、“8.2.29 パラメタの詳細説明”を参照してください。
メッセージ本体を入れる領域を指定します。領域は発行元が用意します。メッセージ本体の詳細については、“8.2.29 パラメタの詳細説明”を参照してください。
メッセージ本体域の領域の長さを指定します。
メッセージを参照した後のカーソルの位置づけを指定します。
メッセージを参照した後カーソルを次のユニットの先頭メッセージに位置づけます。
メッセージを参照した後カーソルを動かしません。
メッセージを参照した後カーソルを次のメッセージに位置づけます。
例外処理のための復帰情報が通知されます。エラー詳細コードには以下の値(10進数)が返されます。復帰情報の詳細については、“8.4 復帰情報の説明”を参照してください。
16 (SYNTAX)
18 (NOSYSTEM)
19 (NOCONNECT)
21 (INVALIDAPI)
22 (NOCONNECTQUE)
25 (DOWNRCV)
29 (DEADLOCK)
30 (BACKOUT)
32 (IO)
33 (NOMEMORY)
36 (PROCESSOVER)
38 (BUFFERLACK)
39 (TRANFILE)
40 (MSGFILE)
51 (UNITMSGOVER)
52 (UNITSUMOVER)
66 (NOQUE)
68 (NOMSG)
70 (QUEEND)
73 (QUERINHIBIT)
74 (PURGEMSG)
135 (MSGBODYLENGTH)
146 (PEEKMODE)
147 (CURSORMODE)
31 (OTHERTHR)
本プログラムの処理結果が通知されます。詳細は復帰値の説明を参照してください。
復帰値
本プログラムの処理結果が、復帰値格納域と特殊レジスタ“PROGRAM-STATUS”で以下のように通知されます。
正常時:0
異常時: -1
注意事項
正しく参照されなかった場合には、カーソル位置は保証されません。カーソルをメッセージキューの先頭メッセージに移動するためには、MQDSEEKMSGを使用してください。
直前のトランザクションを取り消した場合には、カーソルを先頭メッセージに位置付けてから本プログラムを実行してください。
複数のアプリケーションが、同じメッセージキューから受信と参照を同時に行うことは避けてください。1ユニット複数メッセージの場合は、処理結果が保証されません。
エラー詳細コード“29”は、メッセージ格納ファイルとしてデータベースを使用している場合に限り通知されます。
エラー詳細コード“31”は、MQDCONNECTRDBプログラムを使用してMQDに接続している場合に限り通知されます。