各国言語サポート (NLS) の構成
各国語ロケールはすべてのテキスト・データが InterSystems IRIS® データ・プラットフォームによりエンコードされる文字セットを定義します。文字セットは 16 ビット Unicode UCS-16 です。
各ロケールには、テキスト表示、データ照合 ("照合" を参照)、大文字および小文字間の変換、パターン照合などに InterSystems IRIS が使用する多くの文字テーブルがあります。各ロケールはこれらの目的のそれぞれに使用されるテーブルを定義するだけでなく、日付、時間、数字形式など、その他の詳細も定義します。
各 InterSystems IRIS インスタンスは、単一の現在のロケールを使用します。これはインスタンスのインストール時に決定されますが、いつでも変更可能です。現在のロケールを変更すると、InterSystems IRIS により使用されるロケール・テーブルの一部またはすべてが変更されます。
新しいロケールのインストールによって、データが変換されることはありませんが、データの表現方法は変わります。
新しいロケールのインストールの目的は、主にアップグレード・オプションや、インストールの選択を修正する手段であり、頻繁な実行はお勧めできません。データ変換が必要になる場合があり、グローバル・サブスクリプトには特別な注意を払う必要があることを忘れないようにしてください。
InterSystems IRIS により提供されたシステム・ロケールを変更することはできません。これらは、インスタンスのアップグレード時に上書きされます。
管理ポータルの NLS ページの使用法
[各国言語の設定] ページ ([システム管理]→[構成]→[各国言語の設定]) では、既存のロケールとテーブルの参照だけでなく、カスタム・ロケールの作成もできます。管理ポータルを使用して、新しい現在のロケールのインストール、メモリへの新規テーブルの読み込みなどが可能です。[システム管理]→[構成]→[各国言語の設定] を選択すると、右側の列で次のオプションが利用可能になります。
構成済み既定値
[構成済み既定値] ページ ([システム管理]→[構成]→[各国言語の設定]→[構成済み既定値]) では、InterSystems IRIS 内で各目的のために既定で現在使用されているロケール・テーブルが表示されます。ObjectScript コードを記述する場合、またはいくつかのユーティリティを使用する場合、特定の目的のために特定のテーブルを指定することができます。テーブルが指定されない場合、既定のテーブルが使用されます。
各テーブル名は、設定がインストール時に現在のロケールから継承されたのか、または NLS クラス・パッケージ ("各国言語サポートのシステム・クラスの使用法" で説明) を使用して指定されたのかを示すために色分けされます。
構成既定値は、ロケールのプロパティではなく、インスタンスのプロパティです。したがって、インスタンスのアップグレード時には既定の選択が保持されます。
ロケール定義
[ロケール定義] ページから ([システム管理]→[構成]→[各国言語の設定]→[ロケール定義])、[ロケール選択] ドロップダウンでロケールを選択し、いくつかのアクションを実行できます。このページが最初に表示されるとき、ドロップダウンは常に現在のロケールに設定されます。
-
[[現在のロケール] の日付/時間/数字形式を使用する] ドロップダウンを使用して、現在のロケールによって指定されている日付、時間、および数字形式を使用するかどうかを示します。これは常に現在のロケールに適用されます。[ロケール選択] ドロップダウンで選択したがインストールされていないロケールではないので注意してください。
-
選択したロケールの詳細を表示するには、[プロパティ] をクリックします。次のページには、カテゴリにグループ分けされたロケールのプロパティが表示されます。追加したロケールの場合、フィールドを編集して [保存] をクリックすることでこれらの変更を保存できます。InterSystems IRIS により提供されたシステム・ロケールの編集はできません。プロパティは次のとおりです。
-
基本のプロパティ
-
日付、時刻、および数値の形式
-
内部テーブル — 内部テーブルを編集するときには次の 2 つのオプションがあります。
-
テーブルの編集 — 項目をダブル・クリックすることにより、リスト・ボックスからテーブルを選択または削除できます。または、項目を選択してから [>] または [<] ボタンをクリックすることにより、該当するリストからその項目を移動させることもできます。
1 つ以上のエントリが必要なテーブルには、アスタリスク (*) が付いています。その他のテーブルは空のままにしておけます。
-
デフォルト編集 — [内部テーブル] カテゴリの [テーブル編集] 機能に入力する値から既定の値を選択できます。
-
-
入力/出力テーブル — このカテゴリの編集を選択すると、テーブルの編集、追加、および削除を実行できます。
-
テーブルを編集するには、最初のリストからテーブルをクリックします。下のボックスにテーブル名が表示されます。値を変更して、[保存] をクリックします。
-
テーブルを削除するには、最初のリストからテーブルをクリックします。下のボックスにテーブル名が表示されます。[削除] をクリックします。削除に対して [キャンセル] または [OK] を選択できる確認ボックスが表示されます。
-
テーブルを追加するには、[追加] をクリックします。下のボックスの [テーブル] フィールドが有効になり、[削除] オプションが無効になります。テーブル名を入力して、[出力先] フィールドと [入力元] フィールドに入力します。
更新をすべて完了したら、[保存] をクリックします。正常に保存されると、更新したリストが表示されます。正常に保存されなかった場合は、該当するエラー・メッセージが表示されます。
-
-
入出力既定値
-
文字列
-
-
高度な操作をするには、次のボタンをクリックします。
-
検証 — 選択されたロケールを検証します。ロケールを検証できなかった場合は、エラー・メッセージを表示します。これはカスタム・ロケールを作成する場合に役立ちます。
-
コピー — 選択されたロケールのコピーを作成します。これにより、コピーをカスタマイズできます。コピーの名前には、y で始まり、8 または w で終わる 4 文字を使用する必要があります。既定の説明は、Copy of %locale です。ここで %locale は、選択したロケール名です。コピーが作成されると、[ロケール選択] ドロップダウンに追加されます。
-
エクスポート — ロケールを .xml ファイルにエクスポートします。例えば、作成したカスタム・ロケールをエクスポートし、[ロケールのインポート] ページを使用して別のインスタンスにインポートします。既定の名前は、loc_%locale.xml です。ここで %locale は、選択したロケールです。さらに、エクスポート・ファイルのパスを組み込むことができます。パスを指定しない場合、既定の場所は install-dir\mgr です。
-
インストール — 選択されたロケールをインスタンスの現在のロケールとしてインストールします。最初の検証が実行され、失敗した場合、エラー・メッセージが表示されます。それ以外はインストールを続行できます。
-
テーブル読み込み — 選択したロケール (現在のロケールまたは別のロケール) からディスクのメモリにテーブルを読み込むことができます。テーブル・タイプを選択します。次に、タイプ選択後に生成されたリストからテーブル名を選択します。[OK] をクリックすると、テーブルが読み込まれます。[キャンセル] をクリックすると、ダイアログ・ボックスが閉じられ、[ロケール定義] ページに戻ります。
-
削除 — ロケールを削除します。削除できるのは、カスタム・ロケールのみです。システム・ロケールが選択された場合、ボタンは無効化されます。カスタム・ロケールでも現在のロケールは削除できません。続行するにはロケールの削除を確定する必要があります。
-
ロケールのインポート
[ロケールのインポート] ページで ([システム管理]→[構成]→[各国言語の設定]→[ロケールまたはテーブルのインポート])、ロケールまたはテーブルをインポートできます。例えば、(前のセクションで説明したように) 別のインスタンスからエクスポートされたカスタム・ロケールをインポートできます。
-
[インポートタイプ] を選択します。[ロケール] が既定値です。
-
ファイル名を入力して、[インポート] をクリックします。有効なファイル拡張子は、.xml と .goq のみです。
-
インポートしたロケール数、テーブル数、サブテーブル数を示すメッセージが表示されます。
NLS クラス・パッケージの使用法
"各国言語サポートのシステム・クラス" では、%SYS.NLS クラス・パッケージと Config.NLS クラス・パッケージの使用法を詳しく説明しています。
"%SYS.NLS クラス" のセクションには、次のクラスの使用法の詳細が示されています。
-
%SYS.NLS.DeviceOpens in a new tab — 現在のデバイスのプロパティ
-
%SYS.NLS.FormatOpens in a new tab — 日付、時刻、および数値の形式
-
%SYS.NLS.LocaleOpens in a new tab — 現在のロケールの基本のプロパティ (読み取り専用)
-
%SYS.NLS.TableOpens in a new tab — システムとプロセスのテーブル (入出力および内部)
"Config.NLS クラス" のセクションには、次のクラスの使用法の詳細が示されています。
これらのクラスそれぞれの詳細は、"インターシステムズ・クラス・リファレンス" を参照してください。