Rocket® Enterprise Developer (formerly a product of Micro Focus or formerly a product of Open Text) documentation, created before Rocket Software acquired certain products from OpenText, may include outdated references to "Micro Focus" or "OpenText", both of which are trademarks of OpenText or its affiliates. Rocket Software is not affiliated with Micro Focus or OpenText and has since rebranded these products as Rocket® products. You may also encounter outdated links in this documentation. If you do, please contact Rocket Support (support@rocketsoftware.com) for assistance.
文字セット変換をカスタマイズするには
注: カスタマイズされた文字セット変換を作成する場合、作業場所節の直後に局所記憶節宣言が記述されていない限り、結果として生成されるプログラムはスレッド セーフではなくなります。
コード セット モジュールは、DIALECT"MF" を使用してコンパイルする必要があります。また、NOCANCEL 指令も指定する必要があり、そうしない場合、エンタープライズ サーバー リージョンでの実行時にモジュールが最初に呼び出された際に RTS114 の異常終了が発生することがあります。
インストール ディレクトリの src\codeset サブディレクトリに用意されているサンプル プログラム CSnnnn.cbl には、必要な節、宣言、および指令が含まれています。
- (Windows のみ) Enterprise Developer コマンド プロンプトを起動します。手順については、「Enterprise Developer コマンド プロンプトを起動するには」を参照してください。
- (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\Enterprise Developer\src\codeset\csnnnn.cbl" csnnnn.cbl
UNIX:
cp $COBDIR/src/codeset/csnnnn.cbl csnnnn.cbl
注: 32 ビットの Windows では、%ProgramFiles(x86)% は %ProgramFiles% になります。%ProgramFiles(x86)%\Micro Focus\Enterprise Developer はインストール ディレクトリで、nnnn はカスタマイズ コード セット モジュールを指す 2000 から 9999 の番号 (9122 を除く) です。
- 次のように入力します。
Windows:
cbllink -d csnnnn.cblUNIX:
cob -z csnnnn.cbl - 生成された実行可能モジュール CSnnnn.dll (Windows) または CSnnnn.so (UNIX) を、PATH (Windows) または $LD_LIBRARY_PATH (UNIX) で指定されているディレクトリにコピーします。