Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


ランタイム環境変数

COBOL ランタイム・ライブラリーでは、次の環境変数を使用します。 大/小文字にはこだわりません。

assignment-name
ASSIGN 文節で指定する COBOL ファイルです。この assignment-name の用法は、COBOL ワードの規則に従います。以下に、その例を示します。

SET OUTPUTFILE=d:\january\results.car

すべての assignment-name を設定する必要があります。

環境変数として設定されていないユーザー定義語に対して割り当てを行う場合は、ユーザー定義語のリテラル名を持つファイル (下記の例では OUTPUTFILE) に対して割り当てが行われます。割り当てが有効であれば、このファイルが現行ディレクトリーに書き込まれます。

assignment-name を設定したら、この環境変数を COBOL ユーザー定義語として ASSIGN 文節で使用することができます。

前の SET ステートメントに基づいて、COBOL ソース・プログラムには次の SELECT および ASSIGN 文節が含まれます。

SELECT CARPOOL ASSIGN TO OUTPUTFILE

OUTPUTFILE は環境変数で定義されているため、上記のステートメントにより、ファイル d:¥january¥results.car へデータが書き込まれます。

ASSIGN を使用して、標準言語ファイル・システム (STL)、レコード順次区切りファイル・システム (RSD)、Btrieve ファイル・システムなどの代替ファイル・システムに格納されるファイルを指定することができます。

CLASSPATH
オブジェクト指向アプリケーションに必要な Java™ .class ファイルのディレクトリー・パスを指定します。
COBJVMINITOPTIONS
COBOL が JVM を初期化するときに使用される Java 仮想マシン (JVM) オプションを指定します。
COBMSGS
ランタイム・エラー・メッセージの書き込み先ファイルの名前を指定します。

ランタイム・エラー・メッセージをファイルに取り込むには、SET コマンドを使用して COBMSGS をファイル名に設定します。アプリケーションを強制終了させるランタイム・エラーがプログラム内で発生した場合は、COBMSGS の値として設定されたファイルに、強制終了の理由を示すエラー・メッセージが入ります。

COBMSGS が設定されていない場合は、エラー・メッセージが端末に出力されます。

COBPATH
COBOL ランタイムが .DLL (ダイナミック・リンク・ライブラリー) ファイルなどの動的にアクセスされるプログラムを探すためのディレクトリー・パスを指定します。

動的ロードが必要なプログラムを実行するには、この変数を設定する必要があります。以下に、その例を示します。

SET COBPATH=C:\pgmpath\pgmdll
COBRTOPT
COBOL ランタイム・オプションを指定します。

ランタイム・オプションが複数ある場合は、コンマまたはコロンで区切ります。サブオプションの区切り文字には、括弧または等号 (=) を使用します。オプションは大/小文字の区別をしません。例えば、次の 2 つのコマンドは同じです。

SET COBRTOPT=TRAP=ON,errcount
SET COBRTOPT=trap(on):ERRCOUNT

各ランタイム・オプションにはデフォルトが適用されます。詳細については、 ランタイム・オプションに関する下記の関連参照をご覧ください。

EBCDIC_CODEPAGE
CHAR(EBCDIC) または CHAR(S390) コンパイラー・オプションを使用してコンパイルされるプログラムが処理する EBCDIC データに適用できる EBCDIC コード・ページを指定します。

EBCDIC コード・ページを設定するには、次のコマンドを発行します。この場合、codepage には使用するコード・ページの名前が入ります。

SET EBCDIC_CODEPAGE=codepage

EBCDIC_CODEPAGE が設定されていない場合は、 サポートされるロケールとコード・ページに関する下記の関連参照に示されているように、 現在のロケールに基づいてデフォルトの EBCDIC コード・ページが選択されます。 CHAR(EBCDIC) コンパイラー・オプションが有効で、 有効なロケールに対して複数の EBCDIC コード・ページを適用できる場合は、 ロケールのデフォルト EBCDIC コード・ページが受け入れ可能でなければ、 EBCDIC_CODEPAGE 環境変数を設定する必要があります。

LANG
ロケールを指定します (環境変数を使用たてロケールの指定に関する関連タスクを参照)。 後述のように、LANG は NLSPATH 環境変数の値にも影響を与えます。

例えば、次のコマンドは言語ロケール名を米国英語に設定します。

SET LANG=en_US
LC_ALL
ロケールを指定します。LC_ALL を使用するロケール設定は、LANG またはその他の LC_xx 環境変数を使用する設定よりも優先されます (環境変数を使用したロケールの指定に関する関連タスクを参照)。
LC_COLLATE
ロケールの照合動作を指定します。LC_ALL が指定されている場合は、この設定がオーバーライドされます。
LC_CTYPE
ロケールのコード・ページを指定します。LC_ALL が指定されている場合は、この設定がオーバーライドされます。
LC_MESSAGES
ロケールのメッセージの言語を指定します。LC_ALL が指定されている場合は、この設定がオーバーライドされます。
LC_TIME
日時情報の形式に使用するロケールを決定します。LC_ALL が指定されている場合は、この設定がオーバーライドされます。
LOCPATH
ロケール情報データベース用の検索パスを指定します。パスは、ディレクトリー名を示すセミコロン区切りのリストです。

LOCPATH は、英数字データ項目のロケール・ベースの比較など、ロケールを参照するすべての操作に使用されます。

NLSPATH
メッセージ・カタログおよびヘルプ・ファイルの絶対パス名を指定します。NLSPATH の設定は必須です。インストール時には初期値が設定されます。

NLSPATH を設定する際には、値を置き換えるのではなく NLSPATH に値を追加してください。この環境変数は、他のプログラムが使用する可能性があります。以下に、その例を示します。

SET NLSPATH=C:\cobolpath\MESSAGES\%L\%N;%NLSPATH%

%L および %N は大文字でなければなりません。%L には、LANG 環境変数で指定された値が代入されます。 %N には、COBOL で使用されるメッセージ・カタログ名が代入されます。

この製品には、次の言語によるメッセージが組み込まれています。

cs_CZ
チェコ語
de_DE
ドイツ語
en_US
英語
es_ES
スペイン語
fr_FR
フランス語
hu_HU
ハンガリー語
ja_JP
日本語
ko_KR
韓国語
pl_PL
ポーランド語
pt_BR
ブラジル・ポルトガル語
ru_RU
ロシア語
zh_CN
中国語 (簡体字) (中華人民共和国)
zh_TW
中国語 (繁体字) (台湾)

メッセージの言語とロケール設定の言語は別に指定することができます。例えば、環境変数 LANG を en_US に設定し、環境変数 LC_ALL をja_JP.IBM-943 に設定することが可能です。この例では、COBOL コンパイラー・メッセージまたはランタイム・メッセージはすべて英語で処理され、プログラム内のネイティブ ASCII (DISPLAY または DISPLAY-1) データはコード・ページ IBM-943 (ASCII 日本語コード・ページ) のエンコードとして処理されます。

コンパイラーは、NLSPATH および LANG 環境変数の値の組み合わせを使用して、 メッセージ・カタログにアクセスします。NLSPATH が正しく設定されているが、LANG が上記のロケール値のいずれかに設定されていない場合は、警告メッセージが 生成され、コンパイラーは en_US メッセージ・カタログをデフォルトに設定します。 NLSPATH 値が無効の場合、終了エラー・メッセージが生成されます。

ランタイム・ライブラリーも NLSPATH を使用してメッセージ・カタログにアクセスします。NLSPATH を正しく設定しないと、ランタイム・メッセージが短縮形で戻されます。

 
PATH
実行可能プログラムのディレクトリー・パスを指定します。
SYSIN、SYSIPT、SYSOUT、SYSLIST、SYSLST、CONSOLE、SYSPUNCH、 SYSPCH
これらの COBOL 環境名は、ACCEPT および DISPLAY ステートメントで使用される簡略名に対応する環境変数名として使用されます。これらは、既存のディレクトリー名ではなくファイルに対して設定します。

環境変数を設定しない場合、デフォルトでは、SYSIN および SYSIPT が論理入力装置 (キーボード) に割り当てられます。 SYSOUT、SYSLIST、 SYSLST、CONSOLE は、システムの論理出力装置 (画面) に割り当てられます。SYSPUNCH および SYSPCH には、デフォルトでは値が割り当てられません。これらは明示的に定義しない限り無効です。

例えば、次のコマンドは CONSOLE を定義します。

SET CONSOLE=c:\mypath\terminal.txt

CONSOLE は、次のソース・コードとともに使用される場合があります。

SPECIAL-NAMES.
    CONSOLE IS terminal
    . . .
    DISPLAY 'Hello World' UPON terminal
TMP
SORT および MERGE 関数の一時作業ファイル (必要な場合) の場所を指定します。デフォルトは不定で、ソート・ユーティリティー・インストール・プログラムによって設定されます。

以下に、その例を示します。

SET TMP=c:\shared\temp
TZ
ロケールによって使用される時間帯情報を記述します。 TZ の形式は次のとおりです。

SET TZ=SSS[+|-]nDDD[,sm,sw,sd,st,em,ew,ed,et,shift]

デフォルトは、現行のロケールによって異なります。

TZ がない場合は、デフォルトのロケール値として EST5EDT が使用されます。標準時間帯しか指定しない場合は、n (GMT からの時間差) のデフォルト値が 5 ではなく 0 になります。

smswsdstemewedetshift のうち 1 つでも値を指定する場合は、これらすべての値を指定する必要があります。これらの値のうち 1 つでも無効な場合は、ステートメント全体が無効と見なされ、時間帯情報は変更されません。

以下に、その例を示します。

SET TZ=CST6CDT

上記のステートメントは、標準時間帯を CST、夏時間調整を CDT、CST と UTC の時間差を 6 時間に設定します。夏時間調整の開始値と終了値は設定されません。

これ以外に考えられる値としては、Pacific United States を表す PST8PDT や、Mountain United States を表す MST7MDT があります。

関連タスク
環境変数を使用したロケールの指定
ファイルの識別

関連参照
サポートされるロケールおよびコード・ページ
TZ 環境パラメーター変数
CHAR
ランタイム・オプション


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)