Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引


CBLEESCD('CLRRBCNT')【XTC限定】

〈このページの構成〉

名称

ロールバックリトライ回数のクリア

形式

PROCEDURE DIVISIONの指定

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

DATA DIVISIONの指定

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

機能

ロールバックリトライ回数を0にクリアします。

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

●データ名A

サービスの要求を示す要求コードを「VALUE 'CLRRBCNT'」と設定します。

●データ名Z

0を設定します。

●データ名C

サービス名を,31バイト以内のアスキー文字列で設定します。文字列の最後には空白を設定してください。この空白は文字列の長さに数えません。

TP1/EEから値が返されるデータ領域

●データ名B

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

ステータスコード

ステータスコード

意味

00000

正常に終了しました。

00001

TP1/EEの環境下にありません。

00004

UOCから発行しているため,この機能は使用できません。

00005

オフラインバッチプロセスから発行しているため,この機能は使用できません。

00801

データ名に設定した値が間違っています。要求コード(データ名A)が間違っている場合も含みます。

00802

データ名Cに設定したサービス名は,定義されていません。

00804

発行条件が不正です(プロセス関連定義のxtc_useオペランドにNを指定してこの関数を発行)。

00881

この関数を発行できる状態ではありません。

CBLEESCD('CLRRBCNT')がエラーになる場合

CBLEESCD('CLRRBCNT')がエラーリターンする場合について説明します。

プロセス関連定義のxtc_useオペランドにYを指定していない場合

CBLEESCD('CLRRBCNT')は「00804」でエラーリターンします。

serviceに設定したサービスのサービス属性定義に,service_attr -e serialを指定していない場合

CBLEESCD('CLRRBCNT')は「00804」でエラーリターンします。

この関数を発行したサービスとserviceに設定したサービスが異なり,他スレッドでserviceに設定したサービスのトランザクションが実行中の場合

CBLEESCD('CLRRBCNT')は「00881」でエラーリターンします。

注意事項

  1. この関数を発行したサービスとデータ名Cに設定したサービスが同じで,トランザクションがロールバック決着した場合,ロールバックリトライ回数はカウントしないで,0になります。XTCのロールバックリトライ回数監視によるサービス閉塞は行いません。

  2. この関数を発行したサービスとデータ名Cに設定したサービスが異なる場合,またはこの関数を発行したトランザクションがエラートランザクションの場合は,処理キュー全体の排他を取ります。そのため,この関数を頻繁に使用するとスループットが悪くなるおそれがあります。