NetCOBOL 技術情報:ノウハウ情報
NetCOBOL
Windows x86
Q
入出力ファイルの存在を調べることはできますか。
A
NetCOBOLには、ファイルの存在を調査する機能はありません。代替手段としては、ファイルの存在を調べるC言語アプリケーションを作成して、NetCOBOLから呼び出すなどの方法があります。
NetCOBOLの「プログラム間連絡機能」は、COBOLアプリケーションやC言語アプリケーションを呼び出すことができます。ファイルの存在を確認する機能をC言語アプリケーションで作成し、ファイル名や結果をパラメータで受け渡します。「プログラム間連絡機能」の詳細については、 以下のマニュアルを参照してください。
NetCOBOL使用手引書
- 第10章 サブプログラムを呼び出す~プログラム間連絡機能~
なお、SELECT句にOPTIONALを指定しないでINPUT指定のOPEN文を実行し、誤り処理手続き
またはFILE STATUS句でエラー内容を判断することも可能です。
ただし、メッセージ抑止の環境変数を設定しない場合、OPEN時にエラーメッセージが表示されます。
メッセージを抑止することもできますが、
必要なエラー情報が表示されないことがありますので、使用の際は注意してください。
SELECT句やOPEN文等の仕様および使用方法については、NetCOBOL使用手引書および文法書を
参照してください。
また、バッチファイルでは、IF文でファイルの有無を調べることもできます。
例)「ファイル名」に指定したファイルが存在しない場合、「コマンド」を実行する。
:
IF NOT EXIST ファイル名 コマンド
SET COBOLINPUT=ファイル名
START /WAIT COBOLアプリケーション実行ファイル名
:
