13.3.1 サービスルーチンを呼び出す関数の形式
COBOL入出力サービスルーチンは,すべて次の形式で呼び出します。
- 形式
#include "CBL85fl.h" int サービスルーチン名(CBLCOMFL * com, CBLPARMFL * parm)
- 引数
-
CBLCOMFL * com:管理情報インタフェース領域のアドレス
CBLPARMFL * parm:パラメタインタフェース領域のアドレス
- 戻り値
-
0:正常に終了した場合
-1:エラーが発生した場合
- 注意事項
-
-
管理情報インタフェース領域,およびパラメタインタフェース領域は,ユーザプログラム側で確保する必要があります。
-
各インタフェース領域中のシステムが使用する領域,および予備領域には,最初のCBLOPENサービスルーチンを実行する前にNULL(X'00')を指定して,領域をクリアしておく必要があります。
ただし,一度CBLCLOSEサービスルーチンで入出力を終了したあと,再度同じインタフェース領域を使ってCBLOPENサービスルーチンで入出力を開始する場合は,管理情報インタフェース領域中のシステムが使用する領域,および予備領域をクリアする必要はありません。
-
同じファイルにアクセスするときには,CBLOPENサービスルーチンでファイルを開いてからCBLCLOSEサービスルーチンでファイルを閉じるまで,同じ管理情報インタフェース領域を使用する必要があります。
-
同時に複数のファイルにアクセスする場合は,各ファイルに対して別々の管理情報インタフェース領域を用意する必要があります。
-
管理情報インタフェース領域中のファイル情報は,CBLOPENサービスルーチンを実行したときの設定値が有効となります。ファイルを開いたあとの入出力サービスルーチンでファイル情報を変更しても無効です。ただし,デバッグ情報出力指示の設定は,ファイルを開いたあとでも有効となります。
-