ローカリゼーションの操作

このトピックでは、プレゼンテーション・オブジェクトのローカライズについて説明します。

個々のローカリゼーション・キーおよび変数の変更または削除

セマンティック・モデラーによって、すべてのサブジェクト領域とプレゼンテーション・オブジェクトについてローカリゼーション・キーおよび名前の変数が自動的に作成されます。これらのキーおよび変数を変更または削除できます。説明の変数を手動で追加することもできます。

ローカリゼーション・キーは、プレゼンテーション・オブジェクトの作成時に割り当てられます。外部化され、文字列の翻訳に使用される場合、ローカリゼーション・キーは、オブジェクトの名前をその翻訳済値にマップする役割を果たします。ローカリゼーション・キーを変更すると、このマッピングが壊れる可能性があるため、注意してください。
変数を変更するか、手動で追加する場合は、名前の変数にVALUEOF(NQ_SESSION.CN)を含め(例: VALUEOF(NQ_SESSION.CN_A_-_Sample_Sales_Offices))、説明の変数にVALUEOF(NQ_SESSION.CD)を含める(例: VALUEOF(NQ_SESSION.CD_A_-_Sample_Sales_Offices))必要があります。
ローカリゼーション・キーおよび変数がファイナライズされると、サブジェクト領域の文字列を外部化できます。「サブジェクト領域の文字列の外部化」を参照してください。
  1. ホーム・ページで、「ナビゲータ」「セマンティック・モデル」の順にクリックします。
  2. 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
  3. 「プレゼンテーション・レイヤー」プレゼンテーション・レイヤー・アイコンをクリックします。
  4. 「プレゼンテーション・レイヤー」ペインで、キーおよび変数を変更するサブジェクト領域またはプレゼンテーション表を見つけてダブルクリックします。
  5. サブジェクト領域またはプレゼンテーション表のページで、「ローカリゼーション」タブをクリックします。
  6. オプション: ローカリゼーション・キーを更新するには、次のいずれかを行います:
    • サブジェクト領域については、「ローカリゼーション・キー」フィールドをクリックし、その値を削除または変更します。
    • プレゼンテーション表については、オブジェクトを見つけて、その表の行をダブルクリックします。オブジェクトの「ローカリゼーション・キー」フィールドをクリックし、その値を削除または変更します。
  7. オプション: 説明の値を更新するには、次のいずれかを行います:
    • サブジェクト領域については、「名前の変数」または「説明の変数」フィールドをクリックし、その値を削除または変更します。
    • プレゼンテーション表については、オブジェクトを見つけて、その表の行をダブルクリックします。オブジェクトの「ローカリゼーション・キー」フィールドまたは「説明の変数」をクリックし、その値を変更または削除します。
  8. 「保存」をクリックします。

すべての名前および説明の変数のクリア

サブジェクト領域のみ、サブジェクト領域とそのすべての子オブジェクト、またはプレゼンテーション表とそのすべてのオブジェクトについて名前および説明の変数をクリアできます。

  1. ホーム・ページで、「ナビゲータ」「セマンティック・モデル」の順にクリックします。
  2. 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
  3. 「プレゼンテーション・レイヤー」プレゼンテーション・レイヤー・アイコンをクリックします。
  4. 「プレゼンテーション・レイヤー」ペインで、変数をクリアするサブジェクト領域またはプレゼンテーション表を見つけてダブルクリックします。
  5. サブジェクト領域またはプレゼンテーション表で、「ローカリゼーション」タブをクリックします。
  6. 変数をクリアするには、次のいずれかを行います:
    • サブジェクト領域については、「変数のクリア」をクリックし、クリアする変数を選択した後、サブジェクト領域オブジェクトのみについて変数をクリアするか、サブジェクト領域とそのすべての子オブジェクトについて変数をクリアするかを指定します。
    • プレゼンテーション表については、「変数のクリア」をクリックし、クリアする変数を選択します。
  7. 「クリア」をクリックします。
  8. 「保存」をクリックします。

ローカリゼーション・キーと名前および説明の変数の生成

サブジェクト領域のみ、サブジェクト領域とそのすべての子オブジェクト、またはプレゼンテーション表とそのすべてのオブジェクトについてローカリゼーション・キーと名前および説明の変数を生成できます。

  1. ホーム・ページで、「ナビゲータ」「セマンティック・モデル」の順にクリックします。
  2. 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
  3. 「プレゼンテーション・レイヤー」プレゼンテーション・レイヤー・アイコンをクリックします。
  4. 「プレゼンテーション・レイヤー」ペインで、ローカリゼーション・キーおよび変数を生成するサブジェクト領域またはプレゼンテーション表を見つけてダブルクリックします。
  5. サブジェクト領域またはプレゼンテーション表で、「ローカリゼーション」タブをクリックします。
  6. 変数を生成するには、次のいずれかを行います:
    • サブジェクト領域については、「変数の生成」をクリックし、生成する変数を選択した後、サブジェクト領域オブジェクトのみについて変数を生成するか、サブジェクト領域とそのすべての子オブジェクトについて変数を生成するかを指定します。
    • プレゼンテーション表については、「変数のクリア」をクリックし、生成する変数を選択します。
  7. 「生成」をクリックします。
  8. 「保存」をクリックします。

サブジェクト領域の文字列の外部化

サブジェクト領域、そのプレゼンテーション表、階層、列およびそれらの説明の文字列を外部化できます。サブジェクト領域の文字列を外部化すると、CSVファイルが出力されます。

サブジェクト領域とそのオブジェクトの文字列を外部化した後、結果のファイルを使用して文字列を翻訳します。「文字列の翻訳」を参照してください。
  1. ホーム・ページで、「ナビゲータ」「セマンティック・モデル」の順にクリックします。
  2. 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
  3. 「プレゼンテーション・レイヤー」プレゼンテーション・レイヤー・アイコンをクリックします。
  4. 「プレゼンテーション・レイヤー」ペインで、文字列を外部化するサブジェクト領域を見つけて右クリックします。
  5. 「文字列の外部化」をクリックします。
  6. 「名前」フィールドに、出力されたCSVファイルの名前を入力します。
  7. 「外部化」をクリックします。

すべてのサブジェクト領域の文字列の外部化

プレゼンテーション・レイヤーのすべてのサブジェクト領域、それらのプレゼンテーション表、階層、列およびそれらの説明の文字列を外部化できます。すべてのサブジェクト領域の文字列を外部化すると、CSVファイルが出力されます。

サブジェクト領域とそのオブジェクトの文字列を外部化した後、結果のファイルを使用して文字列を翻訳します。「文字列の翻訳」を参照してください。
  1. ホーム・ページで、「ナビゲータ」「セマンティック・モデル」の順にクリックします。
  2. 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
  3. 「プレゼンテーション・レイヤー」プレゼンテーション・レイヤー・アイコンをクリックします。
  4. ヘッダーで、「ページ・メニュー」をクリックし、「文字列の外部化」をクリックします。
  5. 「名前」フィールドに、出力されたCSVファイルの名前を入力します。
  6. 「外部化」をクリックします。

文字列の翻訳

変換キーおよび文字列を外部化した後、結果のファイルを使用してプレゼンテーション・オブジェクトの文字列を翻訳できます。

出力ファイルの内容を確認してください:
  • 最初の列には、実際のセマンティック・モデル・オブジェクト名とそのオブジェクト・タイプを示す接頭辞が含まれています。

  • 2列目には、各オブジェクトの名前または説明に対応するセッション変数が記述されています。これらには、カスタム名を示すデフォルト接頭辞のCN_、またはカスタム説明を示すデフォルト接頭辞のCD_が含まれます。

  • 3番目の列には、それぞれのオブジェクト名に対応する変換キーが含まれています。

  1. 各文字列ファイルを開きます。Languageという4番目の列を追加します。この列で、deなど、名前が翻訳された言語のコードを指定します。
  2. 文字列ファイルをデータベース表にロードします。
  3. セマンティック・モデラーで、表を物理レイヤーにインポートします。
  4. 行単位の初期化ブロックを使用して、翻訳済の文字列をロードします。初期化ブロックのターゲットが「行単位の初期化」に設定されていること、および実行優先順位が正しく設定されていることを確認します。たとえば:
    1. 次のようなSQL文を使用して、データベースからのデータ・ソースを含むセッション初期化ブロックを作成します。
      SELECT 'VALUEOF(NQ_SESSION.WEBLANGUAGE)' FROM DUAL
      
    2. 設定言語の「セッション変数初期化ブロック」ダイアログ・ボックスで、「変数ターゲット」にLOCALEセッション変数を指定します。この仕様により、ユーザーがサインインするときは常に、WEBLANGUAGEセッション変数が設定されるようになります。その後、この変数によって、LOCALE変数が初期化ブロックを使用して設定されます。
    3. セッション変数初期化ブロックのデータ・ソース・ダイアログ・ボックスで、次のようなデータベース固有のSQL文を使用して、一連のセッション変数を作成する別のセッション初期化ブロックを作成します:
      select SESSION_VARIABLE, TRANSLATION from external where LANGUAGE =
      'VALUEOF(NQ_SESSION.LOCALE)'
      
      このブロックで作成されるすべての変数の言語は、サインイン時にユーザーが指定した言語に一致します。
    4. セッション変数初期化ブロックの変数ターゲット・ダイアログ・ボックスで、初期化ブロックのターゲットを「行単位の初期化」に設定します。
    5. 「セッション変数初期化ブロック」ダイアログ・ボックスの「実行優先度」領域で、前に作成した初期化ブロックを指定して、最初に作成したブロックが最初に実行されるようにします。
  5. 「保存」をクリックします。