ページの先頭行へ戻る
Interstage Job Workload Server バッチ開発ガイド
FUJITSU Software

2.4.2 ファイルの割当て機能

バッチジョブ定義の設定にもとづいて、ジョブステップ開始時にファイルの割当てを行い、ジョブステップ終了時にファイルの割当てを解除します。ファイルの割当て解除方法は、ジョブステップが正常終了した場合と異常終了した場合のそれぞれについて設定できます。


ポイント

ファイルのパスは、資源名とファイルの物理的なパスの対応関係を資源名の環境変数に設定します。バッチアプリケーションが資源を使用する場合は、資源名の環境変数に設定されているファイルパスを使用します。

注意

NetCOBOL EE V10.0以降で動作するCOBOLアプリケーションの場合、資源名(ファイル識別名)は環境変数を介さずにCOBOLランタイムシステムから通知されますが、ファイル管理機能が同時に資源名の環境変数にファイルパスを設定します。

なお、ファイル連結機能を使用する場合、以下の2つの方法でファイルパスが通知されます。

  • COBOLランタイムシステムから通知される資源名(ファイル識別名)
    連結ファイルを1つのファイルとして扱うことができます。

  • ファイルパスが1つずつ設定された、連結するファイルの数の環境変数(資源名_通し番号)
    連結ファイルを1つずつ扱う必要があります。

2.4.2.1 ファイル管理機能が割り当てるファイルの種類

ファイル管理機能は、一時ファイルと非一時ファイルを割り当てます。
一時ファイルは、ジョブ開始時にファイル管理機能により、ファイル名を決定して作成されます。また、一時ファイルには、割り当て時にファイルに設定するデータを事前に定義することができます(インラインファイル機能)。
非一時ファイルは、バッチジョブ定義のジョブステップ定義に利用者が設定したファイル名で割り当てられます。


ポイント

  • プロシジャ定義外のジョブステップ定義の一時ファイルのファイル名は、以下の命名規約にしたがって、ファイル管理機能が自動的にファイル名を決定します。

    命名規約:  btfwtemp.ジョブ名.ジョブ番号.ジョブステップ名.通し番号
  • プロシジャ定義内のジョブステップ定義の一時ファイルのファイル名は、以下の命名規約にしたがって、ファイル管理機能が自動的にファイル名を決定します。

    命名規約:  btfwtemp.ジョブ名.ジョブ番号.プロシジャ呼出しステップ名.ジョブステップ名.通し番号

注意

  • 一時ファイルは、ジョブ内に閉じて使用するファイルであるため、ファイルの排他制御は行いません。

  • 一時ファイルは、複数のジョブ間でデータを引き継ぐファイルとして、使用できません。

  • 非一時ファイルのファイル名には、一時ファイルのファイル名との重複防止のため、“btfwtemp”で始まるファイル名を使用しないでください。

  • 一時ファイルと非一時ファイルのパスは、最大255バイトです。このため、“2.2.2.4 資源定義”では、ディレクトリ名の長さとファイル名の長さの合計が、255バイトになるように設定してください。
    ファイル管理機能がジョブ実行時に、ディレクトリ名の長さとファイル名の長さの合計の確認を行います。

  • 一時ファイルのファイル名の長さは、最大215バイトになります。ファイル管理機能で管理できるファイルのパスは、最大255バイトであるため、ディレクトリ名と一時ファイル名の長さの合計が255バイトを超えないように、ディレクトリ名を設定してください。

  • ファイル管理機能は、業務用データベースへの割当てを行いません。

  • インラインファイルを使用する場合、[資源の作成・使用方法]は、[既存のファイルを参照する]になります。

  • COBOLアプリケーションで[一時ファイルを使用する]、かつ、[インラインファイルとして使用する]を選択した場合、割り当てるファイルは行順ファイルになります。メインフレームからの移行の場合(SYSINカードを利用しているアプリケーション)、小入出力機能を利用したACCEPT文によるアクセスになります。

  • C言語アプリケーション、またはユーティリティで、[一時ファイルを使用する]、かつ、[インラインファイルとして使用する]を選択した場合、割り当てるファイルは、テキストファイルとなります。

2.4.2.2 ファイルの割当てと解除

ファイルの割当てと解除について説明します。

ファイルの割当て

ファイル管理機能は、バッチジョブ定義の設定にもとづいて、ジョブステップ開始時にバッチジョブ定義に指定されたディレクトリにファイルを割り当てます。


ファイルの割当て解除

ファイル管理機能は、バッチジョブ定義に指定した[資源の後処理]にもとづいて、ジョブステップの終了時にジョブで使用したファイルの割当てを解除します。
ファイル管理機能の解除は、不要ファイルの残存による後続ジョブの誤動作を防止するために、以下の処理を行います。

ファイルの割当て方法

ファイルの割当て方法には以下があります。

注意

  • ファイル割当て方法に新規を指定し、かつ、指定したディレクトリが存在しない場合、ディレクトリも作成されます。

  • 資源定義のファイル割当て方法に新規を指定した場合、作成されるファイルの権限は、以下のとおりとなります。

    • バッチワークユニットを起動したユーザの権限

    • ファイルを作成する上位のディレクトリの権限

    詳細は、“Interstage Job Workload Server セットアップガイド”の“アプリケーションでのセキュリティ強化”を参照してください。

  • “既存のファイルを参照する”で定義したファイルに対しては、読込み以外の操作を行わないでください。対象のファイルに対して書込みを行い、ファイル容量に変化があった場合は、ジョブログおよびシステムログに警告メッセージが出力されます。

ファイルの割当て解除方法

ファイルの割当て解除方法は、ジョブステップが正常終了した場合とジョブステップが異常終了した場合について、それぞれ指定できます。割当て解除方法には以下があります。

ジョブステップ正常終了時
  • 削除
    ジョブステップ終了時にファイルの割当てを解除し、ファイルを削除する場合に使用します。

  • 保持
    ジョブステップ終了時にファイルの割当てを解除しますが、ファイルは削除しない場合に使用します。
    一時ファイルの場合は、本解除方法は指定できません。

  • 後続ステップへ渡す
    ジョブステップ終了時にファイルの割当てを解除せずに、後続ジョブステップにファイルの割当てを引き継ぐ場合に使用します。
    後続ジョブステップは、以下のいずれかで引き継ぐファイルを指定します。

    • 引き継ぐファイル名を直接指定

    • 引継ぎ元のジョブステップ名および資源名を指定


ジョブステップ異常終了時
  • 削除
    ジョブステップ終了時にファイルの割当てを解除し、ファイルを削除する場合に使用します。

  • 保持
    ジョブステップ終了時にファイルの割当ては解除しますが、ファイルは削除しない場合に使用します。一時ファイルの場合は、本解除方法は指定できません。


ファイルの割当て方法および解除方法の指定できるパターンを以下に示します。

ファイルの種類

ファイルの割当ておよび解除の指定

割当て方法

ジョブステップ終了時の解除の方法

正常終了

異常終了

非一時ファイル

新規にファイルを作成する(ファイルが存在した場合はエラー)

削除

削除

保持

保持

削除

保持

後続ステップへ渡す

削除

保持

新規にファイルを作成する(ファイルが存在した場合はそのまま使用する)

削除

削除

保持

保持

削除

保持

後続ステップへ渡す

削除

保持

新規にファイルを作成する(アプリケーションでファイルを作成する)

削除

削除

保持

保持

削除

保持

後続ステップへ渡す

削除

保持

既存のファイルを更新する

削除

削除

保持

保持

削除

保持

後続ステップへ渡す

削除

保持

既存のファイルを参照する(ファイルを排他的に使用する)

削除

削除

保持

保持

削除

保持

後続ステップへ渡す

削除

保持

既存のファイルを参照する

保持

保持

後続ステップへ渡す

保持

一時ファイル

新規

削除

削除

後続ステップへ渡す

削除

既存(先行ステップの資源を引き継いだ場合)

削除

削除

後続ステップへ渡す

削除


ポイント

ジョブステップ正常終了時はファイルを保持し、ジョブステップ異常終了時はファイルを削除するような使用ができます。

ファイルの割当ておよび解除の流れ

以下にファイル管理機能の、ファイルの割当ておよび解除の流れを示します。

2.4.2.3 ファイルの割当ての有効範囲

ファイル管理機能は、バッチジョブ定義にもとづいてファイルを割り当てます。ファイルは、ジョブステップ開始時にファイルを割り当て、ジョブステップ終了時に割当てを解除します。以下に、ジョブステップ終了時のファイルの扱いを示します。

ファイルの種類

割当ておよび解除の指定

ジョブステップ終了時のファイルの扱い

割当て方法

ジョブステップ終了時の解除の方法

正常終了時

異常終了時

正常終了

異常終了

ファイルの割当て

ファイル

ファイルの割当て

ファイル

非一時ファイル

新規にファイルを作成する(ファイルが存在した場合はエラー)

削除

削除

解除

削除

解除

削除

保持

解除

削除

解除

保持

保持

削除

解除

保持

解除

削除

保持

解除

保持

解除

保持

後続ステップへ渡す
(*2)

削除

引継ぎ

保持

解除

削除

保持

引継ぎ

保持

解除

保持

新規にファイルを作成する(ファイルが存在した場合はそのまま使用する)

削除

削除

解除

削除

解除

削除

保持

解除

削除

解除

保持

保持

削除

解除

保持

解除

削除

保持

解除

保持

解除

保持

後続ステップへ渡す
(*3)

削除

引継ぎ

保持

解除

削除

保持

引継ぎ

保持

解除

保持

新規にファイルを作成する(アプリケーションでファイルを作成する)

削除

削除

解除

削除

解除

削除

保持

解除

削除

解除

保持

保持

削除

解除

保持

解除

削除

保持

解除

保持

解除

保持

後続ステップへ渡す
(*3)

削除

引継ぎ

保持

解除

削除

保持

引継ぎ

保持

解除

保持

既存のファイルを更新する

削除

削除

解除

削除

解除

削除

保持

解除

削除

解除

保持

保持

削除

解除

保持

解除

削除

保持

解除

保持

解除

保持

後続ステップへ渡す
(*1)

削除

引継ぎ

保持

解除

削除

保持

引継ぎ

保持

解除

保持

既存のファイルを参照する(ファイルを排他的に使用する)

削除

削除

解除

削除

解除

削除

保持

解除

削除

解除

保持

保持

削除

解除

保持

解除

削除

保持

解除

保持

解除

保持

後続ステップへ渡す
(*1)

削除

引継ぎ

保持

解除

削除

保持

引継ぎ

保持

解除

保持

既存のファイルを参照する

保持

保持

解除

保持

解除

保持

後続ステップへ渡す
(*1)

保持

引継ぎ

保持

解除

保持

一時ファイル

新規

削除

削除

解除

削除

解除

削除

後続ステップへ渡す
(*2)

削除

引継ぎ

保持

解除

削除

既存(先行ステップの資源を引き継いだ場合)

削除

削除

解除

削除

解除

削除

後続ステップへ渡す
(*2)

削除

引継ぎ

保持

解除

削除

インラインファイル

既存のファイルを参照する

削除

削除

解除

削除

解除

削除

後続ステップへ渡す
(*2)

削除

引継ぎ

保持

解除

削除

既存(先行ステップの資源を引き継いだ場合)

削除

削除

解除

削除

解除

削除

後続ステップへ渡す
(*2)

削除

引継ぎ

保持

解除

削除

*1:引き継ぐ後続ジョブステップが存在しない場合は、ジョブ終了までファイルの割当てを引き継ぎ、ファイルは保持します。
*2:引き継ぐ後続ジョブステップが存在しない場合は、ジョブ終了までファイルの割当てを引き継ぎ、ジョブ終了時にファイルを削除します。
*3:引き継ぐ後続ジョブステップが存在しない場合は、ファイルを以下のように扱います。
・ファイルを新規に割り当てた場合
    ジョブ終了までファイルの割当てを引き継ぎ、ジョブ終了時にファイルを削除します。
・既存ファイルを割り当てた場合
    ジョブ終了までファイルの割当てを引き継ぎし、ファイルを保持します。


ファイルをジョブステップ間で引き継ぐ方法

ファイルをジョブステップ間で引き継ぐ方法は、以下の一時ファイルを使用した方法です。

なお、非一時ファイルを使用した方法でも、ファイルをジョブステップ間で引き継ぐことができます。

以下に、ファイルをジョブステップ間で引き継ぐ指定の概要を示します。