ページの先頭行へ戻る
NetCOBOL V12.0 CBLサブルーチン ユーザーズガイド
FUJITSU Software

4.13 CBL_LOCATE_FILE

ファイル指定に環境変数を含む場合、環境変数を展開したファイル名を返却します。

指定方法

呼出しの記述
CALL "CBL_LOCATE_FILE"    USING 利用者ファイル指定
                                利用者モード
                                実ファイル指定
                                存在フラグ
                                パスフラグ
                          RETURNING 状態コード.
パラメタのデータ定義
       01  利用者ファイル指定   PIC  X(n).
       01  利用者モード         PIC  9(4) BINARY.
       01  実ファイル指定.
           02  バッファ長       PIC  9(4) BINARY.
           02  バッファ         PIC  X(n).
       01  存在フラグ           PIC  9(4) BINARY.
       01  パスフラグ           PIC  9(4) BINARY.
       01  状態コード           PIC S9(4) COMP-5.
利用者ファイル指定

利用者ファイルを指定します。利用者ファイル名はスペースまたはNULLで終わるようにしてください。 指定する内容は以下のとおりです。

標準ファイル名を指定する場合:

装置名\ファイル名.拡張子

埋め込み環境変数を指定する場合:

$environment\ファイル名.拡張子

ファイル名の長さの最大値は255バイトです。

利用者モード

利用者ファイル指定の扱い方を指定します。指定するモードは以下のとおりです。

  • 0: ファイルが別のディスクに存在するかチェックする。 環境変数を含んでいる場合は、環境変数で指定されたパスで順次検索していき、そのファイルが存在すれば、 出力値の実ファイル指定に展開したファイルパス名を格納する。 ファイルが存在しない場合は、環境変数の最初のパスで展開した結果を実ファイル指定に格納する。

  • 1: 環境変数を含んでいる場合、ファイルの検索をしないで、 最初のパスで展開した結果を実ファイル指定に格納する。

  • 2: 環境変数を含んでいる場合、ファイルの検索をしないで、 次のパスで展開した結果を実ファイル指定に格納する。

実ファイル指定

バッファ長には、次に続くバッファのサイズを指定します。 バッファには展開されたファイルパス名を格納する領域を指定します。

存在フラグ

存在フラグを格納する領域を指定します。設定される情報は以下のとおりです。

利用者モードが0の場合:

  • 0: ファイルが存在しない。

  • 3: 別のディスクファイルとしたファイルが見つかった。

利用者モードが0以外の場合:

  • 0が返却される。

パスフラグ

パスフラグを格納する領域を指定します。設定される情報は以下のとおりです。

  • 0: 実ファイル指定は展開された環境変数を含みません。

  • 1: 実ファイル指定は展開された環境変数を含みます。

復帰コード

復帰コードは、RETURNINGに指定した状態コードに設定されます。

状態コード
  • 0: 成功

  • 1: 環境変数が存在しません

  • 2: 次のパスが存在しません

  • 3: 展開したパス名長がバッファ長より長い

  • 255: その他のエラー

注意

このCBLルーチンで使用する環境変数は、右辺に最大255バイトまで指定できます。 環境変数に複数パスを指定する場合は、以下のように指定してください。

Set 環境変数名=パス1;パス2;...