dc_dam_hold
- 〈このページの構成〉
形式
ANSI C ,C++の形式
#include <dcdam.h> int dc_dam_hold(char *lfname,DCLONG flags)
K&R版 C の形式
#include <dcdam.h> int dc_dam_hold(lfname,flags) char *lfname; DCLONG flags;
機能
論理ファイルを閉塞します。dc_dam_hold関数を呼び出したあとには,指定した論理ファイルに対するほかのUAPからのアクセス要求は,すべて論理閉塞エラーでリターンします。
-
回復対象のDAMファイルの場合
dc_dam_hold関数を呼び出した場合に,指定した論理ファイルがほかのトランザクション処理で同期点処理中のときは,同期点処理が終了したあとに閉塞します。ただし,同期点処理が完了していなくても,dc_dam_hold関数はアクセスしたUAPにリターンします。
UAPで値を設定する引数
●lfname
閉塞するファイルの論理ファイル名を,1〜8バイトの名称で設定します。
●flags
DCNOFLAGSを設定します。
リターン値
リターン値 |
リターン値(数値) |
意味 |
---|---|---|
DC_OK |
0 |
lfnameに設定した論理ファイルは正常に閉塞しました。 |
DCDAMER_PROTO |
-1600 |
dc_rpc_open関数を呼び出していません。 |
ユーザサービス定義のatomic_updateオペランドの指定が'N'になっています(回復対象のDAMファイルにアクセスした場合だけリターンされます)。 |
||
dc_dam_start関数を呼び出していません(回復対象外のDAMファイルにアクセスした場合だけリターンされます)。 |
||
次に示すように,UAPを正しくリンケージしていません。
|
||
DCDAMER_UNDEF |
-1601 |
設定した論理ファイル名は定義されていません。 |
DCDAMER_NOMEM |
-1607 |
メモリが不足しました。 |
DCDAMER_PARAM_LFNAME |
-1610 |
lfnameに設定した論理ファイル名が間違っています。 |
DCDAMER_PARAM_FLAGS |
-1611 |
flagsに設定した値が間違っています。 |
DCDAMER_VERSION |
-1618 |
UAPが,現在稼働しているDAMサービスでは動作できないバージョンのDAMライブラリと結合されています。 |
DCDAMER_LHOLDED |
-1625 |
lfnameに設定した論理ファイル名は,すでに論理閉塞しています。 |
DCDAMER_OHOLDED |
-1626 |
lfnameに設定した論理ファイル名は,すでに障害閉塞しています。 |
DCDAMER_ACCESS |
-1628 |
閉塞しようとしたDAMファイルは,セキュリティ機能で保護されています。dc_dam_hold関数を呼び出したUAPには,アクセス権限がありません。 |
DCDAMER_NO_ACL |
-1646 |
閉塞しようとしたDAMファイルは,セキュリティ機能で保護されています。該当するファイルに対するACLがありません。 |