CBLEETRN('GETINFO ')
- 〈このページの構成〉
形式
PROCEDURE DIVISIONの指定
CALL 'CBLEETRN' USING 一意名1
DATA DIVISIONの指定
01 一意名1. 02 データ名A PIC X(8) VALUE 'GETINFO '. 02 データ名B PIC X(5). 02 FILLER PIC X(3). 02 データ名Z PIC S9(9) COMP VALUE ZERO. 02 データ名C PIC S9(9) COMP. 02 データ名D PIC 9(9) COMP-X. 02 データ名E PIC S9(9) COMP. 02 データ名F PIC S9(9) COMP. 02 データ名G PIC S9(9) COMP. 02 データ名H PIC X(36). 02 データ名I PIC S9(9) COMP. 02 データ名J PIC X(256). 02 データ名K PIC S9(9) COMP. 02 データ名L PIC X(256). 02 FILLER PIC X(1024).
機能
実行中のトランザクションのトランザクション識別情報をリソースマネジャごとに取得します。ステータスコードが「00000」(次のリソースマネジャ情報なし)になるまで,CBLEETRN('GETINFO ')を連続して呼び出すことによって,接続中のすべてのリソースマネジャの情報を取得できます。ステータスコードが「00000」の状態でCBLEETRN('GETINFO ')を呼び出した場合は,最初からトランザクション識別情報を取得します。
UAPで値を設定するデータ領域
●データ名A
現在のトランザクション識別情報の取得を示す要求コードを「VALUE 'GETINFO△'」と設定します。
●データ名Z
0を設定します。
TP1/EEから値が返されるデータ領域
●データ名B
ステータスコードが,5けたの数字で返されます。
●データ名C
プロセスIDが返されます。
●データ名D
該当するトランザクションの中央処理通番が返されます。
●データ名E
リソースマネジャとの接続状態が返されます。
- 0
-
リソースマネジャ接続正常
- 1
-
リソースマネジャ接続失敗によるトランザクション縮退起動
●データ名F
リソースマネジャIDが返されます。
●データ名G
リソースマネジャ名(リソースマネジャ拡張子を含む)の長さが返されます(単位:バイト)。
●データ名H
リソースマネジャ名(リソースマネジャ拡張子を含む)が返されます。
●データ名I
xa_open関数用文字列の長さが返されます(単位:バイト)。
●データ名J
xa_open関数用文字列が返されます。
●データ名K
XIDの長さが返されます(単位:バイト)。
●データ名L
XIDが返されます。
ステータスコード
ステータスコード |
意味 |
---|---|
00000 |
正常に終了しました。(次のリソースマネジャ情報なし) |
00001 |
TP1/EEの環境下にありません。 |
00003 |
正常に終了しました。(次のリソースマネジャ情報あり) |
00004 |
UOCから発行しているため,この機能は使用できません。 |
00005 |
オフラインバッチプロセスから発行しているため,この機能は使用できません。 |
00901 |
データ名に設定した値が間違っています。要求コード(データ名A)が間違っている場合も含みます。 |
指定例
01 MISC. 02 CMD-CODE PIC X(8). 02 STATUS-CODE PIC X(5). 02 FILLER PIC X(3). 02 FLAGS PIC S9(9) COMP VALUE ZERO. 02 PROCESSID PIC S9(9) COMP. 02 CTRANID PIC 9(9) COMP-X. 02 RESUME PIC S9(9) COMP. 02 RMID PIC S9(9) COMP. 02 SIZE PIC S9(9) COMP. 02 NAME PIC X(36) COMP. 02 OPENSIZE PIC S9(9) COMP. 02 OPENNAME PIC X(256). 02 XIDSIZE PIC S9(9) COMP. 02 XID PIC X(256). : MOVE 'GETINFO ' TO CMD-CODE OF MISC. : MOVE '00003' TO STATUS-CODE OF MISC. PERFORM UNTIL STATUS-CODE OF MISC NOT = '00003' CALL 'CBLEETRN' USING MISC IF STATUS-CODE OF MISC EQUAL TO '00000' THEN DISPLAY PROCESSID OF MISC DISPLAY CTRANID OF MISC : ELSE IF STATUS-CODE OF MISC EQUAL TO '00003' THEN DISPLAY PROCESSID OF MISC DISPLAY CTRANID OF MISC : ELSE DISPLAY 'CANNOT GET TRANSACTION INFORMATION' : END-IF END-IF END-PERFORM.
注意事項
リソースマネジャがない場合はリソースマネジャ情報以外の値が設定され,ステータスコード「00000」(次のリソースマネジャ情報なし)でリターンします。