COBSQL プリプロセッサとコンパイラ指令のオプション設定

COBSQL プリプロセッサとその指令は、次のいずれかの方法を使用して指定できます。
注: ファイルまたはプロジェクトのプロパティの [SQL] ページに [Oracle Pro*COBOL (COBSQL)] プリプロセッサを追加すると、[SQL] プロパティ ページのプリプロセッサ リストの一番上に読み取り専用のエントリが自動的に追加されます。プリプロセッサ リストに複数のプリプロセッサがある場合は、リストのプリプロセッサを上下に移動して実行順序を変更できます。詳細については、「Additional Preprocessors」を参照してください。
Enterprise Developer のプロジェクトのプロパティ
Enterprise Developer 内からコンパイルする前に、次を実行します。

Oracle Pro*COBOL の場合は、COBSQL プリプロセッサとコンパイラ指令をプロジェクトのプロパティの [SQL] タブから設定できます。

  1. ソリューション エクスプローラーでプロジェクトのプロパティを開き、[SQL] タブをクリックします。
  2. [ESQL Preprocessor] リストで [Oracle Pro*COBOL(COBSQL)] を選択します。
  3. [追加] をクリックし、[Available Directives] リストで指令を選択して、[OK] をクリックします。選択した指令が [Directives] リストに配置されます。
  4. 指令の詳細を変更する場合は、[Directives] リストで指令を選択して、[Directive Details] のフィールドおよびコントロールを変更します。
  5. 前の 2 つの手順を繰り返して、指令をさらに追加します。
    注: この方法を使用する場合は、データベース プリコンパイラに渡す Pro*COBOL 指令を指定することもできます。その場合は、それらの指令を直接 [Additional Directives] フィールドに入力します。
  6. [適用] をクリックしてから、[OK] をクリックします。
Enterprise Developer のファイルのプロパティ
プロジェクト内のファイルは、プロジェクト レベルで指定されている設定をデフォルトで継承します。プロジェクト内の個々のファイルのために、プロジェクト レベルでの SQL プリプロセッサ設定とは異なる COBSQL プリプロセッサを指定する手順は、次のとおりです。

Oracle Pro*COBOL の場合は、COBSQL プリプロセッサとコンパイラ指令をファイルのプロパティの [SQL] タブから設定できます。

  1. ソリューション エクスプローラーでファイルのプロパティを開き、[SQL] タブをクリックします。
  2. [ESQL Preprocessor] リストで [Oracle Pro*COBOL(COBSQL)] を選択します。
  3. [追加] をクリックし、[Available Directives] リストで指令を選択して、[OK] をクリックします。選択した指令が [Directives] リストに配置されます。
  4. 指令の詳細を変更する場合は、[Directives] リストで指令を選択して、[Directive Details] のフィールドおよびコントロールを変更します。
  5. 前の 2 つの手順を繰り返して、指令をさらに追加します。
    注: この方法を使用する場合は、データベース プリコンパイラに渡す Pro*COBOL 指令を指定することもできます。その場合は、それらの指令を直接 [Additional Directives] フィールドに入力します。
  6. [適用] をクリックしてから、[OK] をクリックします。
コマンド ライン
この方法は、Enterprise Developer command promptからコンパイルする場合に使用します。詳細については、「PREPROCESS(cobsql)」および「COBSQL Compiler Directives」を参照してください。
指令ファイル
COBSQL 指令を、cobsql.dir ファイル、cobol.dir というシステム全体の指令ファイル、またはユーザー指令ファイルに含めることができます。COBSQL アプリケーションでは、指令を次のいずれかのファイルにのみ含めることをお勧めします。
cobsql.dir ファイル
COBSQL で必ず cobsql.dir ファイルからコンパイラ指令が取得されるようにするには、プロジェクトのプロパティまたはコマンド ラインで COBSQL プリプロセッサを (追加の指令を含めずに) 指定する必要があります。これにより、COBSQL で最初に cobsql.dir が検索されるようになります。cobsql.dir ファイルは、現在のディレクトリか、COBDIR 環境変数で指定されたディレクトリに置かれている必要があります。COBSQL は現在のディレクトリ、COBDIR で指定されたディレクトリの順序で cobsql.dir ファイルを検索します。最初に見つかった cobsql.dir ファイルが使用されます。cobsql.dir ファイルの内容を作成する際には、任意のテキスト エディターを使用して、次のルールに従って作成してください。
  • cobsql.dir に COBOL コンパイラ指令を含めないでください。cobsql.dir ファイルは COBOL コンパイラで処理されません。
  • ファイルの各行に 1 つ以上の COBSQL 指令を指定できます。
  • 1 つの指令を複数行に分けて記述しないでください。
  • END-C、END、または END-COBSQL が検出されると、同じ行の残りの部分はデータベース プリコンパイラに渡されます。
  • データベース プリコンパイラに渡すオプションは、すべて cobsql.dir の単一行に記述してください。
cobol.dir ファイルおよびユーザー指令ファイル
  • PREPROCESS 指令が検出されると、同じ行の残りの部分 (ENDP まで) は COBSQL に渡されます。
  • PREPROCESS 指令と、それ以降の endp までの全オプションは単一のコンパイラ指令として処理されます。そのため、PREPROCESS 指令とそのすべてのオプションを単一行に記述する必要があります。
詳細については、「システム指令ファイル cobol.dir」、「PREPROCESS(cobsql)」、「COBSQL Compiler Directives」、および「ユーザー指令ファイル」を参照してください。
プログラムへの埋め込み
プログラム自体に $SET 文を埋め込むことにより、COBSQL プリプロセッサとその指令をプログラム レベルで指定することもできます。
  • 固定長ソース形式 (デフォルトの SOURCEFORMAT"FIXED") を使用している場合は、$SET 文をプログラムの最初の行の列 7 に配置します。
  • $SET 文に続けて、適切な PREPROCESS(cobsql) コマンド ライン構文を記述します。
重要: この方法は、アプリケーション内の他のプログラムとは異なるプリプロセッサをプログラムで使用する場合にのみ使用します。

詳細については、「PREPROCESS(cobsql)」および「COBSQL Compiler Directives」を参照してください。