Hitachi

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


dc_dam_release

〈このページの構成〉

名称

論理ファイルの閉塞の解除

形式

ANSI C ,C++の形式

#include <dcdam.h>
int  dc_dam_release(char *lfname,DCLONG flags)

K&R版 C の形式

#include <dcdam.h>
int  dc_dam_release(lfname,flags)
char     *lfname;
DCLONG   flags;

機能

dc_dam_hold関数で論理閉塞された論理ファイル,および障害閉塞されている論理ファイルの閉塞を解除します。

UAPで値を設定する引数

●lfname

閉塞を解除するファイルの論理ファイル名を,1〜8バイトの名称で設定します。

●flags

閉塞解除の種別を設定します。

DCDAM_LOGICAL_RELEASE…論理閉塞を解除します。

DCDAM_OBSTACLE_RELEASE…障害閉塞を解除します。

リターン値

リターン値

リターン値(数値)

意味

DC_OK

0

lfnameに設定した論理ファイルの閉塞を正常に解除しました。

DCDAMER_PROTO

-1600

dc_rpc_open関数を呼び出していません。

ユーザサービス定義のatomic_updateオペランドの指定が'N'になっています(回復対象のDAMファイルにアクセスした場合だけリターンされます)。

dc_dam_start関数を呼び出していません(回復対象外のDAMファイルにアクセスした場合だけリターンされます)。

次に示すように,UAPを正しくリンケージしていません。

  • DAMサービスの関数でTAMファイルにアクセスする場合に使うライブラリ(-ltdam)を,不当にリンケージしています。

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

DCDAMER_UNDEF

-1601

lfnameに設定した論理ファイルは定義されていません。

DCDAMER_NOMEM

-1607

メモリが不足しました。

DCDAMER_PARAM_LFNAME

-1610

lfnameに設定した論理ファイル名が間違っています。

DCDAMER_PARAM_FLAGS

-1611

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

DCDAMER_VERSION

-1618

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

DCDAMER_NOEXIST

-1619

lfnameで指定した論理ファイルに対応する物理ファイルがありません。

DCDAMER_IOER

-1620

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

DCDAMER_NOLHOLD

-1623

lfnameに設定した論理ファイルは,論理閉塞されていません。

DCDAMER_NOOHOLD

-1624

lfnameに設定した論理ファイルは,障害閉塞されていません。

DCDAMER_OPENNUM

-1627

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

DCDAMER_ACCESS

-1628

キャラクタ型スペシャルファイルにはアクセス権がありません。

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

DCDAMER_LFNMER

-1632

物理ファイルがキャラクタ型スペシャルファイルではありません。または,指定したスペシャルファイルに対応する装置がありません。

DCDAMER_LNOINT

-1633

lfnameで指定した論理ファイルに対応する物理ファイルが,OpenTP1ファイルシステムとして初期化されていません。

DCDAMER_ACCESSF

-1638

lfnameで指定した論理ファイルに対応する物理ファイルに対するアクセス権がありません。

DCDAMER_NO_ACL

-1646

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