分散トランザクション処理機能 OpenTP1 クライアント使用の手引 TP1/Client/W,TP1/Client/P編

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

6.5.7 CBLDCCLS('GETTRNID')現在のトランザクションに関する識別子の取得

<この項の構成>
(1) 形式
(2) 機能
(3) UAPで値を設定するデータ領域
(4) 値が返されるデータ領域
(5) ステータスコード

(1) 形式

(a) マルチスレッド環境の場合
●PROCEDURE DIVISIONの指定
 
CALL 'CBLDCCLS' USING 一意名1
 
●DATA DIVISIONの指定
 
01 一意名1.
   02 データ名A  PIC X(8) VALUE 'GETTRNID'.
   02 データ名B  PIC X(5).
   02 FILLER    PIC X(3).
   02 データ名C  PIC X(17).
   02 データ名D  PIC X(17).
   02 FILLER    PIC X(2).
   02 データ名E  PIC 9(9) COMP.
 
(b) シングルスレッド環境の場合
●PROCEDURE DIVISIONの指定
 
CALL 'CBLDCCLT' USING 一意名1
 
●DATA DIVISIONの指定
 
01 一意名1.
   02 データ名A  PIC X(8) VALUE 'GETTRNID'.
   02 データ名B  PIC X(5).
   02 FILLER    PIC X(3).
   02 データ名C  PIC X(17).
   02 データ名D  PIC X(17).
   02 データ名E  PIC 9(9)COMP.
 

(2) 機能

現在のトランザクショングローバル識別子,およびトランザクションブランチ識別子を取得します。

この識別子は,次に示すプログラムを発行してトランザクションが起動されたときに,OpenTP1が割り当てたものです。

(3) UAPで値を設定するデータ領域

(4) 値が返されるデータ領域

(5) ステータスコード

ステータスコード 意味
00000 正常終了しました。
02501 データ名に指定した値が間違っています。要求コード(データ名A)が間違っている場合も含みます。
02502 誤ったコンテクストからプログラムを呼び出しています。
02504 メモリ不足が発生しました。
02544 データ名Eに指定したクライアントIDはCBLDCCLS('CLTIN '),またはCBLDCCLS('EXCLTIN ')で受け取ったクライアントIDと異なっています。