Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス COBOL言語編


CBLDCRTS('RTSPUT ')

〈このページの構成〉

名称

任意区間でのリアルタイム統計情報の取得

形式

PROCEDURE DIVISIONの指定

CALL  'CBLDCRTS'  USING  一意名1  一意名2

DATA DIVISIONの指定

01 一意名1.
   02 データ名A  PIC X(8) VALUE 'RTSPUT  '.
   02 データ名B  PIC X(5).
   02 FILLER     PIC X(3).
   02 データ名Z  PIC S9(9) COMP VALUE ZERO.
 
01 一意名2.
   02 データ名C  PIC S9(9) COMP.
   02 データ名D  PIC X(1).
   02 FILLER     PIC X(3).

機能

UAP内の任意の区間で,データ名Cに設定した項目の実行時間および実行回数を,リアルタイム統計情報として取得します。

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

●データ名A

コマンドの実行を示す要求コードを「VALUE 'RTSPUT△△'」と設定します。

●データ名C

取得するリアルタイム統計情報の項目IDを設定します。

IDに使用できる値は,1000000〜2147483647です。

●データ名D

実行する処理を設定します。

VALUE 'S'

データ名Cに設定した項目IDの実行時間の計測を開始します。

VALUE'S'を設定してCBLDCRTS('RTSPUT ')を呼び出した時点では,リアルタイム統計情報を取得しません。

VALUE 'E'

データ名Cに設定した項目IDの実行時間を取得して,計測を終了します。

VALUE '△'

データ名Cに設定した項目IDの実行回数だけを取得します。実行時間は0秒となります。

●データ名Z

0を設定します。

OpenTP1から値が返されるデータ領域

●データ名B

ステータスコードが,5けたの数字で返されます。

ステータスコード

ステータスコード

意味

00000

正常に終了しました。

07801

要求コード(データ名A)が間違っています。

07802

データ名に設定した値が間違っています。

07803

CBLDCRPC('OPEN ')を呼び出していません。

すでに実行時間の計測を開始している項目IDをデータ名Cに設定して,データ名Dに'S'を設定したCBLDCRTS('RTSPUT ')を呼び出しました。

実行時間の計測を開始していない項目IDをデータ名Cに設定して,データ名Dに'E'を設定したCBLDCRTS('RTSPUT ')を呼び出しました。

07804

取得項目の数がリアルタイム統計情報サービス定義のrts_item_maxオペランドの指定値を超えるため,情報を取得できません。

07805

サーバ単位の取得項目の数が,リアルタイム統計情報サービス定義のrts_item_maxオペランドの指定値を超えるため,情報を取得できません。このステータスコードでリターンした場合,サービス単位またはサービス以外の処理の統計情報は取得しています。

07806

サービス単位またはサービス以外の処理での取得項目の数が,リアルタイム統計情報サービス定義のrts_item_maxオペランドの指定値を超えるため,情報を取得できません。このステータスコードでリターンした場合,サーバ単位の統計情報は取得しています。

07807

プロセスメモリが不足したため,処理を実行できません。

07808

リアルタイム統計情報サービスが開始していません。

07809

CBLDCRTS('RTSPUT ')の呼び出し元が,サーバ単位およびサービス単位のどちらもリアルタイム統計情報の取得対象に登録されていません。

07810

UAPが,現在稼働しているリアルタイム統計情報サービスでは稼働できないバージョンのライブラリと結合しています。

注意事項

  1. CBLDCRTS('RTSPUT ')では,システム全体のリアルタイム統計情報は取得できません。

  2. マルチサーバを使用しているUAPでは,同じ呼び出し元サービスおよび同じデータ名を設定したCBLDCRTS('RTSPUT ')を複数プロセスから同時に呼び出した場合,プロセスによっては統計情報が取得されないことがあります。これは,統計情報の取得処理では排他制御がされないため,書き込み処理が同時に行われることが要因です。

  3. XATMIインタフェースを使用しているUAPでは,サービス単位のリアルタイム統計情報は取得できません。すべてサービス以外の処理の統計情報として取得されます。

  4. CBLDCRTS('RTSPUT ')は,UAPトレースを取得しません。

  5. データ名Dに'S'を指定したCBLDCRTS('RTSPUT ')が,ステータスコード「07808」または「07809」でリターンしたあとで,同じデータ名Cでデータ名Dに'E'を指定したCBLDCRTS('RTSPUT ')を呼び出すまでに,リアルタイム統計情報サービスを開始して呼び出し元のUAPを取得対象に追加した場合,CBLDCRTS('RTSPUT ')はステータスコード「07803」でリターンします。