注: カスタマイズされた文字セット変換を作成する場合、作業場所節の直後に局所記憶節宣言が記述されていない限り、結果として生成されるプログラムはスレッド セーフではなくなります。
コードセット モジュールは、DIALECT"MF" を使用してコンパイルする必要があります。また、NOCANCEL 指令も指定する必要があり、そうしない場合、エンタープライズ サーバー リージョンでの実行時にモジュールが最初に呼び出された際に RTS114 の異常終了が発生することがあります。
インストール ディレクトリの src\codeset サブディレクトリに用意されているサンプル プログラム CSnnnn.cbl には、必要なセクション、宣言、および指令が含まれています。
- (Windows のみ) Visual COBOL command promptを起動します。手順については、「Visual COBOL command promptを起動するには」を参照してください。
- (UNIX のみ) シェル プロンプトを起動し、COBOL 環境が正しく構成されていることを確認します (たとえば、COBDIR がインストール ディレクトリを指しており、COBMODE が正しく設定されていることを確認します)。
- 一時ファイルの格納先として新しいディレクトリを作成し、そのディレクトリに移動します。次に例を示します。
Windows:
md mylang
cd mylang
UNIX:
mkdir mylang
cd mylang
- プロンプトで、次のように入力します。
Windows:
set mfcodeset=nnnn
UNIX:
export MFCODESET=nnnn
nnnn には、カスタマイズに適した文字セット変換テーブルに対応する MFCODESET 値 (「サポートされている国別コード」トピックに記載) を指定します。
- 次のように入力します。
codecomp /p mapfile.a2e mapfile.e2a
mapfile.a2e ファイルおよび mapfile.e2a ファイルが現在のディレクトリに作成されます。
- マップファイル内の変換テーブルを必要に応じて編集します。mapfile.a2e には ASCII から EBCDIC への変換テーブルが含まれ、mapfile.e2a には対応する EBCDIC から ASCII への変換テーブルが含まれています。
- 次のように入力します。
codecomp mapfile.a2e mapfile.e2a
codeset.cpy ファイルが現在のディレクトリに作成されます。
- 次のように入力します。
Windows:
copy "%ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\codeset\csnnnn.cbl" csnnnn.cbl
UNIX:
cp $COBDIR/src/codeset/csnnnn.cbl csnnnn.cbl
注: 32 ビットの Windows では、
%ProgramFiles(x86)% は
%ProgramFiles% になります。
%ProgramFiles(x86)%\Micro Focus\Visual COBOL はインストール ディレクトリで、nnnn はカスタマイズ コードセット モジュールを指す 2000 から 9999 の番号 (9122 を除く) です。
- 次のように入力します。
Windows:
cbllink -d csnnnn.cbl
UNIX:
cob -z csnnnn.cbl
- 生成された実行可能モジュール CSnnnn.dll (Windows) または CSnnnn.so (UNIX) を、PATH (Windows) または $LD_LIBRARY_PATH (UNIX) で指定されているディレクトリにコピーします。