Hitachi

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


CBLDCDMB('PUT ')

〈このページの構成〉

名称

物理ファイルへブロックの出力

形式

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 FILLER    PIC S9(9) COMP.
   02 データ名E  PIC S9(9) COMP.
   02 データ名G  PIC S9(9) COMP.
   02 FILLER    PIC X(4).
01 一意名2.
   02 データ名D  PIC X(4) VALUE 'PUT '.
   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).

機能

OpenTP1ファイルシステム上に作成した物理ファイルにブロック単位でデータを順に出力します。データ長がブロック長よりも小さい場合は,データの後ろを空白で埋めます。大きい場合は,エラーリターンします。

物理ファイルにブロックを出力するときは,物理ファイル名と,CBLDCDMB('OPEN'),またはCBLDCDMB('CRAT')で返されたファイル記述子を設定します。

UAPで値を設定するデータ領域

●データ名A

DAMファイルとのインタフェースコードを「VALUE 'DCDAMINT'」と設定します。

●データ名C

物理ファイル名を(スペシャルファイル名+14文字)以内のパス名で設定します。63文字に満たない名称を設定するときは,後ろを空白で埋めてください。

●データ名E

ファイル記述子を設定します。

●データ名G

出力するデータの長さを設定します。

●データ名D

物理ファイルにブロック出力を示す要求コードを「VALUE 'PUT△'」と設定します。

●データ名F

出力するデータを設定します。

●データ名Z

0を設定します。

OpenTP1から値が返されるデータ領域

●データ名B

ステータスコードが,5けたの数字で返されます。

ステータスコード

ステータスコード

意味

00000

データ名Fに設定したデータを正常に出力しました。

01603

設定したファイル記述子は,DAMファイルを正常にオープンして得られた記述子ではありません。

DAMファイルをオープンしていません。

01604

データ長にブロック長よりも大きい値を設定しています。

01605

DAMファイルにアクセスする順序が間違っています。

01620

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

01628

アクセスしようとしたDAMファイルは,セキュリティ機能で保護されています。物理ファイルへブロックを出力しようとしたUAPには,アクセス権限がありません。

01637

ファイルの終わりに達しました。

01646

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

01690

インタフェースコード(データ名A)が間違っています。

01691

要求コード(データ名D)が間違っています。