Hitachi

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


CBLDCTAM('INFO')

〈このページの構成〉

名称

TAMテーブルの情報の取得

形式

PROCEDURE DIVISIONの指定

CALL  'CBLDCTAM'  USING  一意名1  一意名2  一意名3

DATA DIVISIONの指定

01 一意名1.
   02 データ名A  PIC X(4).
   02 データ名B  PIC X(5).
   02 FILLER    PIC X(103).
   02 データ名C  PIC S9(4) COMP.
   02 FILLER    PIC X(398).
01 一意名2.
   02 データ名D  PIC X(4).
   02 FILLER    PIC X(4).
01 一意名3.
   02 一意名4.
      03 データ名E  PIC X(32).
      03 データ名F  PIC X(2).
      03 データ名G  PIC X(64).
      03 FILLER    PIC X(2).
      03 データ名H  PIC S9(9) COMP.
      03 データ名I  PIC S9(9) COMP.
      03 データ名J  PIC X(1).
      03 データ名K  PIC X(1).
      03 データ名L  PIC X(1).
      03 FILLER    PIC X(1).
      03 データ名M  PIC S9(9) COMP.
      03 データ名N  PIC S9(9) COMP.
      03 データ名O  PIC S9(9) COMP.
      03 データ名P  PIC X(1).
      03 FILLER    PIC X(3).
             :
             :
             :
   02 一意名n.
      03 データ名E  PIC X(32).
      03 データ名F  PIC X(2).
             :
      03 データ名P  PIC X(1).
      03 FILLER    PIC X(3).

機能

TAMテーブルの情報をリターンします。リターンする値を次に示します。

TAMテーブルの情報は,トランザクション内でもトランザクション外でも取得できます。

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

●データ名A

TAMの識別子を設定します。ただし,TAMサービスではこの値を参照しません。

●データ名C

TAMテーブルの情報領域長(一意名3の長さ)を設定します。

●データ名D

TAMテーブルの情報を取得することを示す要求コードを「VALUE 'INFO'」と設定します。

●データ名E

情報を取得するテーブルのTAMテーブル名を,32文字以内で設定します。32文字未満の場合は,後ろを空白で埋めます。

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

●データ名B

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

●データ名F

TAMテーブルの状態が,次に示す値のどれかで設定されます。

VALUE 'RO' … オープン状態であることを示します。

VALUE 'RC' … クローズ状態であることを示します。

VALUE 'HL' … 論理閉塞状態であることを示します。

VALUE 'HB' … 障害閉塞状態であることを示します。

●データ名G

TAMテーブルのTAMファイル名が返されます。

●データ名H

TAMテーブルで現在使っているレコードの数が設定されます。ただし,CBLDCTAM('INFO')を呼び出したあとでレコードの追加や削除があった場合は,値を保証しません。

●データ名I

TAMテーブルの最大レコード数が設定されます。

●データ名J

TAMテーブルのインデクス種別が,次に示す値のどれかで設定されます。

VALUE 'H' … ハッシュ形式であることを示します。

VALUE 'T' … ツリー形式であることを示します。

●データ名K

TAMテーブルのアクセス形態が,次に示す値のどれかで設定されます。

VALUE 'R' … 参照型であることを示します。

VALUE 'W' … 追加・削除できない更新型であることを示します。

VALUE 'A' … 追加・削除できる更新型であることを示します。

VALUE 'L' … テーブル排他を確保しない,追加・削除できる更新型であることを示します。

●データ名L

TAMテーブルのローディング契機が,次に示す値のどれかで設定されます。

VALUE 'S' … TAMサービスの開始時であることを示します。

VALUE 'L' … dc_tam_open関数でTAMテーブルをオープンしたときであることを示します。

VALUE 'C' … tamloadコマンドを実行したときであることを示します。

●データ名M

TAMテーブルのレコード長が設定されます。

●データ名N

TAMテーブルのキー長が設定されます。

●データ名O

TAMテーブルのデータ内のキー開始位置が設定されます。

●データ名P

TAMサービス定義で指定したTAMテーブルのセキュリティ属性が,次に示す値のどれかで設定されます。

VALUE 'N' … セキュリティの指定がないことを示します。

VALUE 'S' … セキュリティの指定があることを示します。

ステータスコード

ステータスコード

意味

00000

TAMテーブルの情報を正常に取得しました。

01701

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

01705

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

01708

データ名D(要求コード)に設定した値が間違っています。

01709

データ名Eに設定した名称は,TAMテーブルではありません。

01710

TAMテーブルが定義されていません。

01720

TAMサービスが終了中です。

01721

TAMテーブルへアクセスする順序が間違っています。

UAPにリンケージしているトランザクション制御用オブジェクトファイルのリソースマネジャ登録が間違っています。または,UAPにトランザクション制御用オブジェクトファイルをリンケージしていません。

CBLDCTAMを呼び出したUAPのユーザサービス定義に,トランザクション属性なし(atomic_update=N)を指定しています。

01760

UAPが,現在稼働しているTAMテーブルでは動作できないバージョンのTAMライブラリと結合されています。

01762

UAPが,現在稼働しているTAMサービスでは動作できないバージョンのTAMライブラリと結合されています。

01766

キャラクタ型スペシャルファイルのオープン数の制限値を超えました。

01767

スペシャルファイルに対するアクセス権がありません。

01769

メモリが不足しました。

01770

入出力エラーが起こりました。

01772

情報を取得しようとしたTAMテーブルは,セキュリティ機能で保護されています。該当するTAMテーブルに対するACLがありません。

01773

情報を取得しようとしたTAMテーブルは,セキュリティ機能で保護されています。CBLDCTAM('INFO')を呼び出したUAPには,アクセス権限がありません。