Hitachi

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


dc_tam_get_inf

〈このページの構成〉

名称

TAMテーブルの状態の取得

形式

ANSI C ,C++の形式

#include <dctam.h>
int  dc_tam_get_inf(char *tblname,DCLONG flags)

K&R版 C の形式

#include <dctam.h>
int dc_tam_get_inf(tblname,flags)
char      *tblname;
DCLONG    flags;

機能

TAMテーブルの状態を取得します。取得するTAMテーブルの状態を次に示します。

dc_tam_get_inf関数は,トランザクション内でもトランザクション外でも呼び出せます。

dc_tam_get_inf関数を呼び出したプロセスでdc_tam_open関数を呼び出していなくても,設定したTAMテーブルにほかのプロセスでdc_tam_open関数を呼び出している場合は,TAMテーブルはオープン状態としてリターンします。

UAPで値を設定する引数

●tblname

状態を取得するTAMテーブル名のアドレスを設定します。TAMテーブル名は32文字以内で設定して,文字列の最後にはヌル文字を付けてください。

●flags

DCNOFLAGSを設定します。

リターン値

リターン値が正の値のとき(TAMテーブルの状態を示します)

リターン値

リターン値(数値)

意味

DCTAM_STS_OPN

1

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

DCTAM_STS_CLS

2

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

DCTAM_STS_LHLD

3

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

DCTAM_STS_OHLD

4

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

リターン値が負の値のとき(エラーが起こったことを示します)

リターン値

リターン値(数値)

意味

DCTAMER_PARAM_TBL

-1701

tblnameに設定した値が間違っています。

DCTAMER_PARAM_FLG

-1708

flagsに設定した値が間違っています。

DCTAMER_UNDEF

-1710

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

DCTAMER_TAMEND

-1720

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

DCTAMER_PROTO

-1721

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

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

または,UAPにトランザクション制御用オブジェクトファイルをリンケージしていません。

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

DOTAMER_TAMVR

-1762

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

DCTAMER_NO_ACL

-1772

アクセスしようとしたTAMファイルは,セキュリティ機能で保護されています。該当するファイルに対するACLがありません。

DCTAMER_ACCESS

-1773

アクセスしようとしたTAMファイルは,セキュリティ機能で保護されています。dc_tam_get_inf関数を呼び出したUAPには,アクセス権限がありません。