2.4.2 システムで使用する言語種別と文字コードについて検討する
JP1/AJS3で使用する言語種別と文字コードについて説明します。
- 〈この項の構成〉
(1) 使用できる言語種別
JP1/AJS3では,日本語,英語,または中国語を使用できます。運用に合わせて,どの言語を使用するか検討してください。
(2) 使用できる環境変数LANG
UNIXの場合,システムの言語環境を設定するには,環境変数LANGに値を設定します。使用できる環境変数LANGの値を,次の表に示します。この表の中から使用する値を検討してください。この表に示した値を指定しなかった場合の動作は保証できません。
なお,Windowsの場合,システムの言語環境は変更できません。
- 注※1
-
互換用ISAM構成の場合,UTF-8コードは使用できません。
- 注※2
-
Solaris 11の場合は,jaとja_JP.eucJPを使用できます。
Solaris 10の場合は,jaだけ使用できます。
- 注※3
-
SUSE Linuxでだけ使用できます。
- 注意事項
-
JP1/AJS3で使用する文字コードとJP1/Baseで使用する文字コードは,一致させてください。JP1/Baseで使用できる文字コードでも,JP1/AJS3では使用できない場合があります。
(3) 同一装置内の言語設定の混在可否
JP1/AJS3を論理ホストで運用している場合,同一装置内で異なる言語種別のホストが混在できるかどうかは,ホストのOSによって異なります。
- Windowsの場合
-
同一装置内で異なる言語種別のホストは混在できません。すべての論理ホストと物理ホストで,言語種別は統一してください。
- UNIXの場合
-
同一装置内のすべてのホストの言語種別が日本語または英語の場合は,異なる言語種別のホストが混在できます。そのため,論理ホストごとに言語種別を日本語または英語に分けて運用できます。
同一装置内に言語種別が中国語のホストがある場合は,異なる言語種別のホストは混在できません。すべての論理ホストと物理ホストの言語種別を中国語に統一してください。
同一装置内の言語種別の混在の例を次の図に示します。
図2‒45 同一装置内の言語種別の混在の例
また,JP1/AJS3 - Managerの場合,ホストとスケジューラーサービスの文字コードは一致させてください。ホストとスケジューラーサービスで異なる文字コードを混在させることはできません。
ホストとスケジューラーサービスの文字コード混在の例を次の図に示します。
|
(4) システム内の言語設定の混在可否
システム内で異なる言語種別のホストが混在する場合の,JP1/AJS3の組み合わせの可否を次の表に示します。
JP1/AJS - Agent,JP1/AJS - View,またはJP1/AJS - Web Console |
||||
---|---|---|---|---|
日本語 |
英語 |
中国語 |
||
JP1/AJS - Manager |
日本語 |
◎ |
△ |
△ |
英語 |
△ |
◎ |
△ |
|
中国語 |
△ |
△ |
○ |
- (凡例)
-
◎:サポートしています。言語種別が日本語の場合,異なる文字コードのホストを混在させることもできます。
○:サポートしています。文字コードは中国語の文字コードに統一する必要があります。
△:すべての文字・情報を英数字(ASCII)で統一した場合に限り,サポートしています。
- 注意事項
-
表2-29で△に該当する組み合わせは,異なる言語種別のホストが混在する環境です。この場合,ユニット名,ファイル名,ファイル内で使用する文字,実行するジョブ内のメッセージ,イベントジョブの監視条件,および引き継ぎ情報など,すべての文字や情報を英数字(ASCII)に統一してください。ASCII以外の文字を使用すると,次に示す現象が発生するおそれがあります。
-
文字化け
-
標準ジョブおよびHTTP接続ジョブの異常検出終了,誤動作
-
イベントジョブの異常検出終了,検知不能,誤検知
-
プロセスの異常終了
-
(5) 言語種別と文字コードの設定手順の概要
言語種別と文字コードの設定手順の概要について説明します。
(a) JP1/AJS3を新規にインストールする場合
JP1/AJS3 - Manager,JP1/AJS3 - Agent,およびJP1/AJS3 - Viewを新規にインストールする場合,言語種別はインストール時に自動で設定されます。
- Windowsの場合
-
OSの言語種別に応じて,必要な言語設定が自動で実行されます。
- UNIXの場合
-
Hitachi PP Installerを起動したときの環境変数LANGに応じて,必要な言語設定が自動で実行されます。Hitachi PP Installerを起動する前に,必要に応じて環境変数LANGを設定してください。
- 注意事項
-
インストール後に,指定した言語のマルチバイト文字を含むジョブが定義できない,またはジョブが正常に実行できない場合は,インストール時に指定した環境変数LANGが誤っていたおそれがあります。マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照し,言語設定を変更してください。
(b) JP1/AJS3を上書きインストールまたはバージョンアップインストールする場合
JP1/AJS3を上書きインストールまたはバージョンアップインストールする場合,インストール前の言語設定が引き継がれます。
(c) 論理ホストを使用する場合
論理ホストの言語設定は,jajs_setup_clusterコマンドで論理ホストをセットアップしたあとで実行します。jajs_setup_clusterコマンドの詳細は「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド jajs_setup_cluster」を参照してください。
論理ホストをセットアップする場合に必要な言語設定を次に示します。
- JP1/AJS3 - Manager(Windows版)の場合
-
jajs_setup_clusterコマンドによって,物理ホストの言語設定が引き継がれます。Windowsの場合,同一装置内で異なる言語種別のホストは混在できないため,論理ホストの言語設定を変更しないでください。
- JP1/AJS3 - Manager(UNIX版)の場合
-
jajs_setup_clusterコマンドによって,物理ホストの言語設定が引き継がれます。
論理ホストを物理ホストと異なる言語種別で運用する場合は,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照し,jajs_setup_clusterコマンドを実行したあとで論理ホストとスケジューラーサービスの言語設定を変更してください。
- 注意事項
-
jajs_setup_clusterコマンドの-Eオプション(シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるようにするオプション)は,論理ホストの文字コードがUTF-8の場合にだけ指定してください。-Eオプションを指定するとスケジューラーデータベースの文字コードがUTF-8に設定されるため,論理ホストの文字コードもUTF-8に合わせる必要があります。
- JP1/AJS3 - Agentの場合
-
物理ホストの言語設定を引き継ぎます。論理ホストを物理ホストと異なる言語種別で運用する場合は,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照し,jajs_setup_clusterコマンドを実行したあとで論理ホストの言語設定を変更してください。
(d) スケジューラーサービスを追加する場合(JP1/AJS3 - Manager限定)
jajs_setupコマンドを実行してスケジューラーサービスを追加する場合,追加したスケジューラーサービスの文字コード(環境設定パラメーターAJSCHARCODEの値)は,論理ホストの文字コードと一致させてください。
jajs_setupコマンドで追加されるスケジューラーサービスの,デフォルトの文字コードと環境設定パラメーターAJSCHARCODEの値を次の表に示します。
OS |
スケジューラーサービスのデフォルトの文字コード |
環境設定パラメーターAJSCHARCODEの値 |
---|---|---|
Windows |
シフトJISコード |
SJIS |
HP-UX |
シフトJISコード |
SJIS |
Solaris |
EUCコード |
EUC |
AIX |
シフトJISコード |
SJIS |
Linux |
UTF-8コード |
UTF-8 |
文字コードを変更する方法については,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照してください。
- 注意事項
-
jajs_setupコマンドの-Eオプション(シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるようにするオプション)は,論理ホストの文字コードがUTF-8の場合にだけ指定してください。-Eオプションを指定するとスケジューラーデータベースの文字コードがUTF-8に設定されるため,論理ホストの文字コードもUTF-8に合わせる必要があります。
(6) 文字コードの設定個所(UNIX限定)
JP1/AJS3 - ManagerまたはJP1/AJS3 - Agentの文字コードを設定する場合,次の表に示す定義ファイル,環境変数,環境設定パラメーターなどに同一の文字コードを設定する必要があります。設定手順の詳細については,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照してください。
- (凡例)
-
M:JP1/AJS3 - Manager
A:JP1/AJS3 - Agent
- 注※1
-
中国語を使用する場合は「C」を指定してください。
- 注※2
-
ユニットを操作するコマンドについては,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 1.5 コマンド一覧」を参照してください。
- 注※3
-
コマンドの実行対象ユニットが定義されているスケジューラーサービスの環境設定パラメーターAJSCHARCODEの設定と同じ文字コードを設定してください。
中国語を使用する場合は,GB18030コードに対応する値を指定してください。
- 注※4
-
マネージャーホストとエージェントホストで文字コードが異なる場合,文字コード変換のため,環境設定パラメーターAJSQL_CHARCODEの設定が必要です。キューレスジョブの文字コード変換の詳細については,「7.2.2 キューレスジョブ実行環境の環境設定について検討する」を参照してください。
(7) 言語種別に日本語を使用する場合の注意事項
言語種別に日本語を使用する場合の注意事項を次に示します。
(a) 使用できる文字の範囲
JP1/AJS3は,言語種別が日本語の場合,次の範囲の文字を使用できます。
-
ASCII/JISローマ字
-
半角カタカナ
-
JIS X 0208-1990
次に示す文字コード種別では,使用できない文字があります。
-
文字コード種別がSJISコード・EUCコード・UTF-8コードの場合
外字・機種依存文字
-
文字コード種別がEUCコードの場合
JP1/AJS3 - Managerの文字コード種別がEUCコードで運用されている場合,次に示す文字は使用できません。
-
文字コード種別がUTF-8コードの場合
JP1/AJS3 - Managerの文字コード種別がUTF-8コードで運用されている場合,次に示す文字は使用できません。
JIS 2004で追加された第3水準漢字,第4水準漢字は使用できません。
(b) 文字コード種別が混在する場合の注意事項
■ マネージャーホストとエージェントホストで文字コードが異なるときの注意事項
言語種別が日本語,および英語の場合で,マネージャーホストとエージェントホストで文字コードが異なるときは,マネージャーホスト・エージェントホスト間の通信時に,次に示す定義,入力ファイル,および実行結果の文字コードは通信先で使用している文字コードに変換されます。つまり,マネージャーホストからエージェントホストに通信する場合は,エージェントホストで使用している文字コードに,エージェントホストからマネージャーホストに通信する場合は,マネージャーホストで使用している文字コードに変換されます。
- PCジョブ,UNIXジョブ,フレキシブルジョブ,およびQUEUEジョブの場合
-
- 定義
-
-
[実行ファイル名]
-
[コマンド文]
-
[パラメーター]
-
[スクリプトファイル名]
-
[環境変数]
-
[環境変数ファイル名]
-
エージェントプロセス実行時のワークディレクトリ名
-
[標準入力ファイル名]
-
[標準出力ファイル名]
-
[標準エラー出力ファイル名]
-
[転送ファイル名]
-
[ジョブ名](QUEUEジョブの場合)
-
ジョブに定義したマクロ変数の値
-
- 入力ファイル
-
-
転送ファイル1〜4の内容
-
- 実行結果
-
-
標準出力ファイルの内容
-
標準エラー出力ファイルの内容(実行結果詳細)
-
- HTTP接続ジョブの場合
-
- 定義
-
-
[接続設定ファイル名]
-
[送信情報ファイル名]
-
[ステータス格納ファイル名]
-
[受信ヘッダ格納ファイル名]
-
[受信ボディ格納ファイル名]
-
[標準出力ファイル名]
-
[標準エラー出力ファイル名]
-
- 実行結果
-
-
標準出力ファイルの内容
-
標準エラー出力ファイルの内容(実行結果詳細)
-
- アクションジョブ,カスタムジョブの場合
-
- 定義
-
-
ジョブに定義した情報
-
ジョブに定義したマクロ変数の値
-
- 実行結果
-
-
標準エラー出力ファイルの内容(実行結果詳細)
-
- イベントジョブの場合
-
- 定義
-
-
ジョブに定義した情報
-
- 実行結果
-
-
標準エラー出力ファイルの内容(実行結果詳細)
-
引き継ぎ情報(ジョブに定義したマクロ変数の値)
-
中国語の場合は,マネージャーホスト・エージェントホスト間の通信時に文字コードが変換されません。すべてのマネージャーホスト・エージェントホストの文字コードを中国語に統一する必要があります。
■ 日本語の文字コード種別が混在する場合の注意事項
日本語の文字コード種別が混在する場合,次の制限があります。
-
コマンドのリモート実行
コマンドをリモート実行する場合,コマンド実行元の文字コード種別と,コマンド実行先の文字コードを合わせてください。
また,コマンド実行先の文字コードがUTF-8コードの場合,コマンド実行元の文字コードをEUCコードに設定することで,コマンドをリモート実行できます。
コマンドのリモート実行については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 1.1.7 コマンドのリモート実行」を参照してください。
コマンド実行元の文字コード種別とは,コマンド実行時の,環境変数LANGなどのOS上で設定した文字コード種別です。
コマンド実行先の文字コード種別とは,次のことを示します。
-
環境設定パラメーターAJSCHARCODEに指定した文字コード種別
-
JP1/AJS3サービス起動時のOS上の設定
-
-
リモートジョブネット
リモートジョブネットを実行する場合,リモートジョブネット定義元の文字コード種別と,リモートジョブネット実行先の文字コードを合わせてください。
リモートジョブネット定義元の文字コード種別,およびリモートジョブネット定義先の文字コードとは,次のことを示します。
-
それぞれのホストで環境設定パラメーターAJSCHARCODEに指定した文字コード種別
-
JP1/AJS3サービス起動時のOS上の設定
-
-
UNIXジョブ・HTTP接続ジョブ・フレキシブルジョブ・アクションジョブ・イベントジョブ
JP1/AJS3 - Viewやコマンドで,UTF-8環境のエージェントホストで実行するジョブの各項目に日本語を含める場合には,日本語1文字当たり4バイトで見積もり,各項目の制限値以内になるように定義してください。ただし,環境設定パラメーターDEFLENTYPEに「sjis」が設定されている場合,次の項目で指定できる文字数はシフトJIS環境と同じです。
-
ユニット詳細定義のユニット名
-
ユニット詳細定義のコメント
-
スケジュール設定の排他ジョブネット名
マネージャーホストがシフトJISまたはEUC環境,エージェントホストがUTF-8環境のシステム構成で,UNIXジョブ,アクションジョブ,イベントジョブを実行する場合,ジョブに定義した情報サイズは,ジョブを実行時にエージェントホストの文字コードに変換したあとのバイト数でチェックします。その結果,JP1/AJS3 - Viewやコマンドでジョブの各項目に入力できるバイト数以内の定義をした場合でも,ジョブ実行時にエラーが発生する場合があります。
-
-
イベントジョブ
イベントジョブの引き継ぎ情報は,エージェントホスト側で,マクロ変数名と引き継ぎ情報のサイズの合計が4,096バイトを超えた部分の情報を切り捨てます。
UTF-8環境で,日本語を含む情報を引き継ぐ場合は,日本語1文字当たり4バイトで見積もってください。
また,UTF-8環境から発行されたJP1イベントをUTF-8未対応のJP1/AJS3で受信する場合は,JP1/Baseを文字コード互換モードで動作するように設定してください。文字コード互換モードを使用しない場合,JP1イベントを正しく検知できないなどの問題が発生するおそれがあります。
文字コード互換モードについては,マニュアル「JP1/Base 運用ガイド」を参照してください。
-
サブミットジョブの実行に使用するコマンド
シフトJISまたはEUC環境のホストからUTF-8環境のマネージャーホストに対してコマンドを実行した場合,コマンド実行ホスト上ではオプション指定値が制限バイト数を超えていなくても,マネージャーホストでエラーが発生することがあります。これは,コマンド実行ホストからマネージャーホストへデータ転送する際の文字コード変換で,日本語を含むオプション指定値のバイト数が大きくなるためです。
そのため,UTF-8環境のマネージャーホストに対してコマンドを実行する際にオプション指定値に日本語を含める場合は,日本語1文字を4バイトに換算して見積もり,各オプション指定値の制限バイト数以内になるように指定してください。
- 該当コマンド:
-
jpqjobsub,jpqjobcan,jpqjobalt,jpqjobmove,jpqjobget,jpqjobshow,jpqendjobshow,jpqjobdel,jpqqueopen,jpqqueclose,jpqqueshow,jpqqueadd,jpqquedel,jpqquealt,jpqagtlink,jpqagtunlink,jpqagtshow,jpqagtadd,jpqagtdel,jpqagtalt,jpqresshow,jpqresadd,jpqresdel
■ UTF-8コード使用時の注意事項
-
UTF-8コードを使用しているホストからコマンドをリモート実行する際,実行先ホストの文字コード種別(AJSCHARCODE)もUTF-8コードである場合は,環境変数AJSCONVERTUTF8に「no」を指定する必要があります。環境変数AJSCONVERTUTF8を指定しない,または「yes」でコマンドをリモート実行した場合,表示結果に文字化けが発生したり,ユニットに対する処理が正しく行われなかったりします。
環境変数AJSCONVERTUTF8については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 1.4 環境変数一覧」を参照してください。
-
UTF-8環境で使用できる文字は,「(a) 使用できる文字の範囲」を参照してください。
-
UTF-8コードを使用しているマネージャーホストから,UTF-8コードに対応していないエージェントホストにキューレスジョブを実行する場合は,マネージャーホストで環境設定パラメーターQLMANCHARCODEの設定が必要です。QLMANCHARCODEの詳細については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.10 キューレスジョブ実行環境設定」を参照してください。
-
文字コードUTF-8を使用していて,環境設定パラメーターDEFLENTYPEに「sjis」が設定されている場合,次の項目で指定できる文字数はシフトJIS環境と同じ文字数になります。
-
ユニット詳細定義のユニット名
-
ユニット詳細定義のコメント
-
スケジュール設定の排他ジョブネット名
ただし,ユニットの最大ネスト数(最大階層数)は10になります(デフォルトは30)。
-
-
JP1/AJS3 - Viewのバージョンが09-50以前の場合,環境設定パラメーターDEFLENTYPEに「sjis」が設定されていると,スケジューラーサービスおよびその配下のユニットが表示されません。すべてのスケジューラーサービスで環境設定パラメーターDEFLENTYPEに「sjis」が設定されている場合,メッセージKAVV187-Eが出力され,すべてのスケジューラーサービスおよびその配下のユニットが表示されません。また,環境設定パラメーターDEFLENTYPEに「sjis」が設定されているスケジューラーサービスに対して,ajsコマンド,マネージャージョブネットなどからアクセスすると,メッセージKAVV455-Eが出力されて,スケジューラーサービスおよびその配下のユニットが表示されません。
-
互換用ISAM構成の場合は,LinuxだけUTF-8コードを使用できます。
(8) 言語種別に中国語を使用する場合の注意事項
GB18030-2000の2バイト以下の文字だけが使用できます。それ以外の文字が使用された場合の動作は保証できません。
(9) 言語種別共通の注意事項
サポート範囲外の文字をユニット名などの定義項目で使用した場合,次のような現象が発生するおそれがあります。サポート範囲外の文字はスタンドアロン構成の場合も使用できません。
-
文字化け
-
ユニットの新規作成および定義変更でのエラー
-
標準ジョブおよびHTTP接続ジョブの異常検出終了,誤動作
-
イベントジョブの異常検出終了,検知不能,誤検知
-
JP1/AJS3プロセスの異常終了
また,次のデータやファイルにサポート範囲外の文字が入らないようにしてください。サポート範囲外の文字列が含まれている場合,定義項目で使用した場合と同様の現象が発生するおそれがあります。
-
引き継ぎ情報に格納したデータ※1
-
標準エラー出力や標準出力に出力するデータ※2
-
標準入力ファイル,環境変数ファイル,または転送ファイル※3
-
メール送信で指定する本文ファイルやリストファイル※4
- 注※1
-
次の場合の引き継ぎ情報が該当します。
-
イベントジョブ定義時に「引き継ぎ情報」を設定しておき,イベントジョブで受信したイベント情報を後続ジョブまたは後続ジョブネットに引き継ぐ情報
イベントジョブの受信情報の引き継ぎについては,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(業務設計編) 2.4.4(6) イベントジョブの受信情報の引き継ぎ」を参照してください。
-
引き継ぎ情報設定ジョブが設定する引き継ぎ情報
引き継ぎ情報設定ジョブについては,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(業務設計編) 2.4.9 動的に変わる情報を後続ユニットに引き継ぐ(引き継ぎ情報設定ジョブを使ったジョブネットの定義例)」を参照してください。
-
- 注※2
-
PCジョブ,UNIXジョブ,およびフレキシブルジョブで指定したジョブの実行結果に含まれている場合です。標準エラー出力や標準出力については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.4.6 [詳細定義−[UNIX Job]]ダイアログボックス」またはマニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.4.7 [詳細定義−[PC Job]]ダイアログボックス」を参照してください。
- 注※3
-
PCジョブやUNIXジョブで指定する場合です。標準入力ファイル,環境変数ファイル,または転送ファイルについては,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.4.6 [詳細定義−[UNIX Job]]ダイアログボックス」またはマニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.4.7 [詳細定義−[PC Job]]ダイアログボックス」を参照してください。
- 注※4
-
定義項目のプラットフォームがPCの場合です。メール連携については,マニュアル「JP1/Automatic Job Management System 3 連携ガイド 2. メールシステムとの連携」を参照してください。
(10) 運用中の言語設定の変更について
運用中に言語種別と文字コードを変更する場合,JP1/AJS3とOSの組み合わせによっては,JP1/AJS3の再インストールが必要になります。JP1/AJS3とOSの組み合わせ,およびそれぞれの場合の再インストールの必要可否を次に示します。
製品 |
Windows |
UNIX |
---|---|---|
JP1/AJS3 - Manager |
再インストールが必要 |
再インストールが必要 |
JP1/AJS3 - Agent |
再インストールが必要 |
再インストールは不要 |
JP1/AJS3 - View |
再インストールが必要 |
再インストールが必要 |
再インストールが必要な場合,バックアップとリカバリーの手順に従って設定情報を移行します。再インストールが不要な場合,JP1/AJS3サービスを停止してから環境設定を変更して,JP1/AJS3サービスをコールドスタートします。
文字コード種別を変更する手順の詳細については,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 7.9.6 システムの言語環境を変更する」を参照してください。