CBLEESCD('MSGRLBK ')【XTC限定】
- 〈このページの構成〉
形式
PROCEDURE DIVISIONの指定
CALL 'CBLEESCD' USING 一意名1 一意名2
DATA DIVISIONの指定
01 一意名1. 02 データ名A PIC X(8) VALUE 'MSGRLBK '. 02 データ名B PIC X(5). 02 FILLER PIC X(3). 02 データ名Z PIC S9(9) COMP VALUE ZERO. 01 一意名2. 02 データ名C PIC 9(9) COMP VALUE ZERO.
機能
トランザクションの終了状態に関係なく,滞留メッセージの受信関数(CBLEESCD('MSGRECV ')関数)で読み出したメッセージを差し戻します(ロールバックさせます)。
UAPで値を設定するデータ領域
●データ名A
受信メッセージ差し戻しを示す要求コードを「VALUE 'MSGRLBK△'」と設定します。
●データ名C
差し戻しを行いたいメッセージのメッセージ通番を設定します。
●データ名Z
0を設定します。
TP1/EEから値が返されるデータ領域
●データ名B
ステータスコードが,5けたの数字で返されます。
ステータスコード
ステータスコード |
意味 |
---|---|
00000 |
正常に終了しました。 |
00001 |
TP1/EEの環境下にありません。 |
00004 |
UOCから発行しているため,この機能は使用できません。 |
00005 |
オフラインバッチプロセスから発行しているため,この機能は使用できません。 |
00801 |
引数に設定した値が間違っています。 |
00804 |
発行条件が不正です(プロセス関連定義のxtc_useオペランドにNを指定してこの関数を発行)。 |
00871 |
指定したメッセージ通番が不正です(通番範囲外,またはCBLEESCD('MSGRECV ')関数未発行)。 |
00875 |
この関数を発行できるサービスではありません(サービス属性定義でservice_attr -e serialを指定していないサービスでこの関数を発行)。または,トランザクション種別がMNもしくはTMではありません。 |
00876 |
トランザクション起動時のメッセージが滞留メッセージ読み出し対象メッセージではありません。 |
注意事項
-
この関数は,トランザクション実行中に複数回発行できますが,最後に発行した関数で指定したメッセージ通番だけが有効となります。
-
CBLEESCD('MSGRECV ')関数を複数回発行した場合,この関数で指定したメッセージ通番以降の全メッセージが差し戻されます。
-
トランザクション起動時に渡されたメッセージはこの関数で差し戻すことはできません。差し戻しを行いたい場合はトランザクションをロールバックさせてください。