プリコンパイル時には数多くの便利なオプションを使用できます。それらを使用して、リソースの使用、エラーの報告、入出力の書式化およびカーソルの管理を制御できます。コンパイラ・オプションを指定するには、次の構文を使用します。
<option_name>=<value>
オプションのvalueは文字列リテラルで、テキスト値または数値を表します。たとえば、次のオプションを指定するとします。
... INAME=my_test
ここでは、値はファイル名を指定する文字列リテラルです。しかし、次のオプションの場合は違います。
... MAXOPENCURSORS=20
この値は数値です。
オプションの中にはブール値をとるものもあり、文字列のYESまたはNO、TRUEまたはFALSE、整数リテラルの1または0を指定できます。たとえば、次のオプションを指定するとします。
... SELECT_ERROR=YES
これは次に相当します。
... SELECT_ERROR=TRUE
または
... SELECT_ERROR=1
オプション名とオプション値の間には必ず等号を入れ、空白により個々のオプションが区切られるため、等号の前後には空白を入れません。たとえば、コマンドラインで次のようにAUTO_CONNECT
オプションを指定するとします。
... AUTO_CONNECT=YES
省略が一義的であるならば、オプション名を省略してもかまいません。たとえば、省略形のMAXは、MAXLITERALまたはMAXOPENCURSORSのいずれの略語とも考えられるので、使用できません。
プリコンパイラのオプションについては、オンラインで便利なリファレンスを利用できます。オンラインの表示を見るには、オペレーティング・システムのプロンプトで、プリコンパイラ・コマンドを引数を指定せずに入力します。オンライン画面には、各オプションの名前および、構文、デフォルト値および用途が表示されます。アスタリスク(*)の付いたオプションは、インラインでもコマンドラインでも指定できます。
多くのオプションにはデフォルト値があり、次の値によって決まります。
プリコンパイラに組み込まれた値
システム構成ファイルで設定された値
ユーザー構成ファイルで設定された値
インライン指定で設定された値セット
たとえば、MAXOPENCURSORSオプションでは、キャッシュ内のオープン・カーソルの最大数を指定します。このオプションのプリコンパイラに組み込まれたデフォルト値は10です。ただし、システム構成ファイルでMAXOPENCURSORS=32と指定されていると、デフォルトは32になります。ユーザー構成ファイルでは、これをさらに別の値に設定でき、これはシステム構成ファイルの値より優先されます。
次に、このオプションがコマンドラインで設定された場合、新しいコマンドライン値が優先されます。最終的には、インライン指定が前述のすべてのデフォルト値よりも優先されます。詳細は、「構成ファイル」を参照してください。
コマンドラインで疑問符(?)を使用すると、複数のオプションのカレント値を対話形式で調べることができます。たとえば、次のPro*COBOLコマンドを発行するとします。
procob ?
すべてのオプションの設定およびそのカレント値が端末に表示されます。この場合、値はプリコンパイラに組み込まれているもので、システム構成ファイルに値があれば、それが優先されます。一方、次のコマンドを発行したとします。
procob CONFIG=my_config_file.cfg ?
これでカレント・ディレクトリにmy_config_file.cfgというファイルがあると、my_config_file.cfgファイルのオプションが、その他のデフォルト値とともに表示されます。不足している値はユーザー構成ファイル内の値によって補われ、これらの値はプリコンパイラに組み込まれている値や、システム構成ファイルで指定されている値に優先します。
オプション名を指定し、その後に次の例のように=?を付ければ、1つのオプションの現在の値を確認できます。
procob MAXOPENCURSORS=?
注意:
一部のオペレーティング・システムでは、疑問符(?)の前にバックスラッシュなどのエスケープ文字を付ける必要がある場合があります。たとえば、Pro*COBOLオプションの設定値を表示するには、「procob ?」のかわりに、「procob \?」を使用する必要があります。
一般に、コマンドライン・オプションの名前および値には、大文字と小文字のどちらも使用できます。しかし、UNIXのように大文字と小文字を区別するオペレーティング・システムの場合、プリコンパイラ実行ファイルの名前を含め、ファイル名の値は大文字と小文字の正しい組合せを使用して指定する必要があります。
構成ファイルは、プリコンパイラ・オプションを格納するテキスト・ファイルです。ファイルのそれぞれのレコード(行)には、1つのオプションおよび対応付けられた値が入ります。たとえば、構成ファイルに次のような行が入っているとします。
FIPS=YES MODE=ANSI
これらにより、FIPS
オプションとMODE
オプションのデフォルト値が設定されます。
システムにはそれぞれ1つの構成ファイルがあります。システム構成ファイルの名前はプリコンパイラ固有で、表6-2に示すとおりです。
表6-2 システム構成ファイル
プリコンパイラ | 構成ファイル |
---|---|
Pro*COBOL |
|
Pro*FORTRAN |
|
システム構成ファイルの位置はオペレーティング・システムによって異なります。ほとんどのUNIXシステムでは、Pro*COBOLの構成ファイルは通常$ORACLE_HOME/procobディレクトリにあり、Pro*FORTRANの構成ファイルは$ORACLE_HOME/proforディレクトリにあります($ORACLE_HOMEはデータベース・ソフトウェアの環境変数です)。
プリコンパイラの各ユーザーは、1つ以上のユーザー構成ファイルを持つことができます。構成ファイルの名前は、CONFIG
コマンドライン・オプションを使用して指定します。詳細は、「現在の値の確認」を参照してください。
注意:
構成ファイルはネストできません。CONFIGは、構成ファイル内では有効なオプションではありません。