CBLDCDMB('DGET')
- 〈このページの構成〉
形式
PROCEDURE DIVISIONの指定
CALL 'CBLDCDMB' USING 一意名1 一意名2 一意名3
DATA DIVISIONの指定
01 一意名1. 02 データ名A PIC X(8) VALUE 'DCDAMINT'. 02 データ名B PIC X(5). 02 FILLER PIC X(1). 02 データ名C PIC X(63). 02 FILLER PIC X(3). 02 データ名H PIC S9(9) COMP. 02 データ名E PIC S9(9) COMP. 02 データ名G PIC S9(9) COMP. 02 データ名I PIC S9(9) COMP. 01 一意名2. 02 データ名D PIC X(4) VALUE 'DGET'. 02 FILLER PIC X(1). 02 FILLER PIC X(1). 02 FILLER PIC X(1). 02 FILLER PIC X(1). 02 データ名Z PIC S9(9) COMP VALUE ZERO. 01 一意名3. 02 データ名F PIC X(n).
機能
物理ファイルから,設定した相対ブロック番号に該当するブロックを入力します。CBLDCDMB('DGET')は,物理ファイルを再作成出力要求でオープンしてから呼び出してください。
ブロック長がバッファ長よりも小さい場合は,ブロックを入力してそのブロック長をデータ名Hに返します。ブロック長がバッファ長よりも大きい場合は,CBLDCDMB('DGET')はエラーリターンします。
物理ファイルからブロックを直接入力するときは,CBLDCDMB('OPEN')で返されたファイル記述子を設定します。
UAPで値を設定するデータ領域
●データ名A
DAMファイルとのインタフェースコードを「VALUE 'DCDAMINT'」と設定します。
●データ名C
物理ファイル名を,(スペシャルファイル名+14文字)以内で設定します。63文字に満たない場合は,後ろを空白で埋めてください。
●データ名E
ファイル記述子を設定します。
●データ名G
入力バッファ長を設定します。
●データ名I
入力するブロックの相対ブロック番号を設定します。
●データ名D
物理ファイルからブロックの直接入力を示す要求コードを「VALUE 'DGET'」と設定します。
●データ名F
入力バッファを設定します。
●データ名Z
0を設定します。
OpenTP1から値が返されるデータ領域
●データ名B
ステータスコードが,5けたの数字で返されます。
●データ名H
検索したブロックのブロック長が返されます。
ステータスコード
ステータスコード |
意味 |
---|---|
00000 |
入力ブロック長がデータ名Hに正常に設定されました。 |
01603 |
データ名Eに設定したファイル記述子は,DAMファイルを正常にオープンして得られた記述子ではありません。 |
DAMファイルをオープンしていません。 |
|
01604 |
データ名Gに,ブロック長よりも小さいバッファ長を設定しています。 |
01605 |
DAMファイルにアクセスする順序が間違っています。 |
01606 |
相対ブロック番号が間違っています。 |
01620 |
入力エラーが起こりました。 |
01628 |
アクセスしようとしたDAMファイルは,セキュリティ機能で保護されています。物理ファイルのブロックを入力しようとしたUAPには,アクセス権限がありません。 |
01646 |
アクセスしようとしたDAMファイルは,セキュリティ機能で保護されています。該当するファイルに対するACLがありません。 |
01690 |
インタフェースコード(データ名A)が間違っています。 |
01691 |
要求コード(データ名D)が間違っています。 |