dc_ist_read
- 〈このページの構成〉
形式
ANSI C ,C++の形式
#include <dcist.h> int dc_ist_read(int istid,struct DC_ISTKEY *keyptr,int keyno, char *bufadr,int bufsize,DCLONG flags)
K&R版 C の形式
#include <dcist.h> int dc_ist_read(istid,keyptr,keyno,bufadr,bufsize,flags) int istid; struct DC_ISTKEY *keyptr; int keyno; char *bufadr; int bufsize; DCLONG flags;
機能
指定したISTテーブルから指定した範囲のレコードを,参照の目的で入力します。複数のレコードを一括して指定した場合に,指定したレコードのうち一つでもエラーが起こると,入力バッファにはレコードを入力しないでdc_ist_read関数はエラーリターンします。
ISTテーブルからレコードを入力するときは,dc_ist_open関数で返されたリターン値のテーブル記述子を設定します。
UAPで値を設定する引数
●istid
アクセスするISTテーブルの,テーブル記述子を設定します。
●keyptr
参照するレコードの相対レコード番号の範囲を示す構造体(ISTキー)のアドレスを設定します。構造体には,レコードの範囲を先頭と最後の相対ブロック番号で設定します。構造体の形式は次のとおりです。
struct DC_ISTKEY { int fstrecno; int endrecno; };
-
fstrecno
アクセスするレコードの,先頭の相対レコード番号を設定します。
-
endrecno
アクセスするレコードの,最後の相対レコード番号を設定します。0を設定した場合は,fstrecnoで設定した相対レコード番号のレコードだけを入力します。
●keyno
keyptrで設定する構造体の数(構造体の配列数)を設定します。
●bufadr
入力バッファのアドレスを設定します。
●bufsize
入力バッファ長を設定します。入力バッファ長には,(入力レコード長 × 入力レコード数)以上の値を設定してください。
●flags
DCNOFLAGSを設定します。
リターン値
リターン値 |
リターン値(数値) |
意味 |
---|---|---|
DC_OK |
0 |
指定したレコードは,すべて正常に入力しました。 |
DCISTER_PROTO |
-3800 |
ISTテーブルへアクセスする関数を呼び出す順序が間違っています。 |
DCISTER_BADID |
-3803 |
istidに設定したテーブル記述子は正常にオープンして得られたテーブル記述子ではありません。 |
ISTテーブルをオープンしていません。 |
||
DCISTER_BUFER |
-3804 |
すべてのレコードを入力するには,bufsizeに設定した入力バッファ長が足りません。 |
DCISTER_RNOER |
-3806 |
相対レコード番号が間違っています。 |
DCISTER_NOMEM |
-3807 |
メモリが不足しました。 |
DCISTER_PARAM_KEYNO |
-3809 |
keynoに設定した値が,1未満です。 |
DCISTER_PARAM_FLAGS |
-3811 |
flagsに設定した値が間違っています。 |