バッチ・シーケンスの各プログラムのコンパイラー・オプションは、プログラムの実行前またはコンパイラーの起動時に CBL または PROCESS ステートメントを使用して指定することができます。
CBL または PROCESS ステートメントが現行プログラムに指定されていると、コンパイラーは、最初のプログラムの前に有効なオプションと一緒に CBL または PROCESS ステートメントを解決します。現行プログラムに CBL または PROCESS ステートメントが含まれていない場合は、コンパイラーは、前のプログラムで有効であったオプションの設定を使用します。
特定のコンパイラー・オプションは、バッチ・シーケンスの中の各プログラムのコンパイラー・オプション設定の優先順位に影響を及ぼすことに注意してください。 コンパイラー・オプションは、以下の優先順位 (高位から下位) で、認識されます。
バッチ・シーケンス内のいずれかのプログラムで BUF、LIB、OUTDD、SIZE、または SQL オプションが必要な場合は、バッチ・シーケンス内の最初のプログラムでそのオプションを有効にする必要があります。(BASIS、COPY、または REPLACE ステートメントを処理するとき、コンパイラーは、バッチ処理のすべてのプログラムを 1 つの入力ファイルとして処理します。)
バッチで LIB オプションを指定する場合は、バッチ・コンパイル時に NUMBER および SEQUENCE オプションを変更することはできません。コンパイラーは、LIB オプションのもとで NUMBER および SEQUENCE を処理するとき、バッチ内のすべてのプログラムを 1 つの入力ファイルとして扱います。このため、入力ファイル全体のシーケンス番号が昇順になっていなければなりません。
コンパイラーが CBL または PROCESS ステートメントの LANGUAGE オプションをエラーと診断すると、言語選択は、コンパイラーが最初の CBL または PROCESS ステートメントを検出する前に有効であった状態に戻します。バッチ・コンパイル時に有効な言語は、その環境での CBL または PROCESS ステートメントの処理規則に従います。