分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス C言語編
名称
形式
ANSI C ,C++の形式
#include <dcdami.h>
int dc_dam_dput(int fno,char *datadr,int datalen,int blkno,
DCLONG flags)
K&R版 C の形式
#include <dcdami.h> int dc_dam_dput(fno,datadr,datalen,blkno,flags) int fno; char *datadr; int datalen; int blkno; DCLONG flags;
機能
物理ファイルへ,設定した相対ブロック番号に該当するブロックを出力します。dc_dam_dput関数は,再作成出力要求のdc_dam_iopen関数を呼び出してから使ってください。
出力データ長がブロック長よりも小さい場合は,ブロックへ出力して残りの領域をヌル文字で埋めます。出力データ長がブロック長よりも大きい場合は,dc_dam_dput関数はエラーリターンします。
物理ファイルへブロックを直接出力するときは,dc_dam_iopen関数で返されたリターン値のファイル記述子を設定します。
UAPで値を設定する引数
●fno
ブロックを直接出力するファイルの,ファイル記述子を設定します。
●datadr
出力データのアドレスを設定します。
●datalen
出力データの長さを設定します。
●blkno
出力先ブロックの,相対ブロック番号を設定します。
●flags
DCNOFLAGSを設定します。
リターン値
| リターン値 | リターン値(数値) | 意味 |
|---|---|---|
| 正の整数 | 正の整数は,出力ブロック長を示します。 | |
| DCDAMER_BADF | -1603 | fnoに設定したファイル記述子は,正常にオープンして得られた記述子ではありません。 |
| DAMファイルをオープンしていません。 | ||
| DCDAMER_BUFER | -1604 | 出力データ長に,ブロック長よりも大きい値を設定しています。 |
| DCDAMER_SEQER | -1605 | DAMファイルにアクセスする関数を呼び出す順序が間違っています。 |
| DCDAMER_BNOER | -1606 | 相対ブロック番号が間違っています。 |
| DCDAMER_PARAM_FLAGS | -1611 | flagsに設定した値が間違っています。 |
| DCDAMER_IOER | -1620 | 出力エラーが起こりました。 |
| DCDAMER_ACCESS | -1628 | アクセスしようとしたDAMファイルは,セキュリティ機能で保護されています。dc_dam_dput関数を呼び出したUAPには,アクセス権限がありません。 |
| DCDAMER_NO_ACL | -1646 | アクセスしようとしたDAMファイルは,セキュリティ機能で保護されています。該当するファイルに対するACLがありません。 |
All Rights Reserved. Copyright (C) 2006, 2012, Hitachi, Ltd.