CBLEERPC('R-SEND ')
- 〈このページの構成〉
形式
PROCEDURE DIVISIONの指定
CALL 'CBLEERPC' USING 一意名1 一意名2 一意名3
DATA DIVISIONの指定
01 一意名1. 02 データ名A PIC X(8) VALUE 'R-SEND '. 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-X. 01 一意名3 02 データ名D PIC 9(9) COMP. 02 データ名E PIC X(n).
機能
CBLEERPC('R-SPEND ')で抑止していたRPC応答メッセージを送信します。
【TP1/FSP限定】RPC関連定義のrpc_output_messageオペランドが設定されている場合,またはユーザサービス関連定義のservice_attr定義コマンドが設定されている場合に,送信データをUAP履歴情報のデータ種別「OJ(出力メッセージ)」として取得します。
オペランドについては,TP1/FSPの関連ドキュメントを参照してください。
UAPで値を設定するデータ領域
●データ名A
抑止していたRPC応答メッセージの送信を示す要求コードを「VALUE 'R-SEND△△'」と設定します。
●データ名Z
次の値を設定します。
- 0
-
このAPIの延長でRPC応答メッセージを送信します。
- 1
-
このAPIを発行したトランザクションがコミット決着した時点でRPC応答メッセージを送信します。トランザクションがロールバック決着した場合はRPC応答メッセージを送信せずに破棄します。
- 2
-
このAPIを発行したトランザクションがコミット決着した時点でRPC応答メッセージを送信します。トランザクションがロールバック決着した場合は,RPCエラー応答メッセージ(EERPCER_TRNCHK_EXTEND)を送信します。
●データ名C
抑止識別子を設定します。CBLEERPC('R-SPEND ')で割り当てた抑止識別子を設定してください。
●データ名D
サービスプログラムからの応答を設定します。
●データ名E
サービスプログラムからの,実際の応答の長さを設定します(単位:バイト)。クライアントUAPから渡されたサービスの応答の長さ以下の数値を設定してください。
TP1/EEから値が返されるデータ領域
●データ名B
ステータスコードが,5けたの数字で返されます。
ステータスコード
ステータスコード |
意味 |
---|---|
00000 |
正常に終了しました。 |
00001 |
TP1/EEの環境下にありません。 |
00004 |
UOCから発行しているため,この機能は使用できません。 |
00005 |
オフラインバッチプロセスから発行しているため,この機能は使用できません。 |
00301 |
データ名に設定した値が間違っています。 |
00304 |
メモリが不足しました。 |
00305 |
コネクションの取得に失敗しました。 |
00306 |
ネットワークに障害が起こりました。 |
00318 |
システムエラーが起こりました。 |
00336 |
データ名Dに設定した値が間違っています。 |
00338 |
関数の呼び出し条件が不正です。 |
00339 |
サービスを要求されたSPPのメッセージ格納領域に十分な空きがないため,サービス要求を受け付けられません。 |
00341 |
データ名Cに設定した値は未登録か,すでにタイムアウトなどで応答が返されています。 |
注意事項
-
一つの抑止識別子で複数のRPC応答メッセージの送信を抑止している場合,一度のCBLEERPC('R-SEND ')で複数のRPC応答メッセージが送信されます。
-
【TP1/FSP限定】次のステータスコードの場合,出力メッセージ(OJ)は取得されません。
00001,00004,00005,00301,00336
-
CBLEERPC('R-SEND ')のデータ名Zに1を指定し,かつ,そのトランザクションがロールバック決着した場合,RPC応答メッセージは送信されません。そのため,RPC要求元のクライアントUAPは,応答待ち時間を指定している場合は応答待ちタイムアウト,応答待ち時間を指定していない場合は応答待ちを無限に続けます。
-
CBLEERPC('R-SEND ')のデータ名Zに1または2を指定し,かつ,そのトランザクションがリラン後にコミット決着した場合,RPCエラー応答メッセージ(EERPCER_NO_BUFS_AT_SERVER)を送信します。ロールバック決着した場合,データ名Zに1を指定したときはRPC応答メッセージを破棄し,データ名Zに2を指定したときはRPCエラー応答メッセージ(EERPCER_TRNCHK_EXTEND)を送信します。
-
CBLEETRN('ROLLMARK’)発行済みの状態で,CBLEERPC('R-SEND')のデータ名Zに1または2を指定しても,CBLEERPC('R-SEND')は正常に終了します。その後,トランザクションがロールバック決着した時点で,データ名Zに1を指定したときはRPC応答メッセージを破棄し,データ名Zに2を指定したときはRPCエラー応答メッセージ(EERPCER_TRNCHK_EXTEND)を送信します。