21.1 アプリケーション翻訳およびグローバリゼーション・サポートの理解
1つのOracle DatabaseインスタンスとOracle Application Expressで、異なる言語をサポートするようにカスタマイズされた複数のデータベース・セッションをサポートできます。
アプリケーション・ビルダーで、同時に異なる言語で実行可能なアプリケーションを開発できます。
- 翻訳プロセスについて
アプリケーション・ビルダーで構築したアプリケーションの翻訳について学習します。 - 言語の指定について
アプリケーションの作成後、言語プリファレンスを指定します。次に、プライマリ・アプリケーションの言語を選択し、Application Expressエンジンによるアプリケーション言語の決定方法を決定します。アプリケーションのプライマリ言語は静的にすることも、Webブラウザ言語から導出したり、ユーザー・プリファレンスやアイテムから特定することもできます。 - データベース・アプリケーションの翻訳ルールについて
データベース・アプリケーションの翻訳ルールについて学習します。 - 翻訳済アプリケーションのレンダリング方法
Oracle Application Expressがアプリケーションの言語を決定した後、Application Expressエンジンは、特定のページ・リクエストに対してデータベース言語を変更します。その後、適切な言語に翻訳されたアプリケーションを検索します。Application Expressエンジンはその言語を検出すると、その定義を使用してアプリケーションをレンダリングします。それ以外の場合は、ベース(プライマリ)のアプリケーション言語でアプリケーションをレンダリングします。 - アプリケーション属性を翻訳可能に指定
アプリケーション内のアプリケーション属性を翻訳可能にするベスト・プラクティスについて学習します。
親トピック: アプリケーションのグローバリゼーションの管理
21.1.1 翻訳プロセスについて
アプリケーション・ビルダーで構築したアプリケーションの翻訳について学習します。
一般的に、アプリケーション・ビルダーで構築したアプリケーションの翻訳は、次のようなステップになります。
-
プライマリおよびターゲットのアプリケーションIDをマップします
-
翻訳用のファイルにテキストをシードおよびエクスポートします
-
ファイルのテキストを翻訳します
-
翻訳済ファイルを適用します
-
翻訳済ファイルを公開します
関連項目:
21.1.2 言語の指定について
アプリケーションの作成後、言語プリファレンスを指定します。次に、プライマリ・アプリケーションの言語を選択し、Application Expressエンジンによるアプリケーション言語の決定方法を決定します。アプリケーションのプライマリ言語は静的にすることも、Webブラウザ言語から導出したり、ユーザー・プリファレンスやアイテムから特定することもできます。
関連項目:
21.1.3 データベース・アプリケーションの翻訳ルールについて
データベース・アプリケーションの翻訳ルールについて学習します。
次のルールを使用して、使用する翻訳のバージョンを決定します。
-
ユーザーの言語プリファレンスに完全一致する言語コードの翻訳済アプリケーションを検索します。
-
部分一致を検索します。つまり、言語およびロケールが存在するかどうかを確認します。たとえば、ユーザーの言語プリファレンスが
en-us
で、en-us
の翻訳済バージョンが存在しない場合は、言語コードがen
の翻訳済アプリケーションを検索します。 -
アプリケーションのプライマリ言語を使用します。
たとえば、プライマリ言語がドイツ語(de
)のアプリケーションを作成し、言語コードがen-us
の翻訳バージョンを作成すると想定します。ユーザーがブラウザ言語en-us
を使用してこのアプリケーションにアクセスすると、英語(en-us
)バージョンのアプリケーションが実行されます。ユーザーがブラウザ言語en-gb
を使用してこのアプリケーションにアクセスすると、アプリケーションがプライマリ言語(つまりドイツ語)で表示されます。この例では、en
のすべてのバリエーションに対応するために、言語コードen
を使用して英語の翻訳バージョンを作成する必要があります。
21.1.4 翻訳済アプリケーションのレンダリング方法
Oracle Application Expressがアプリケーションの言語を決定した後、Application Expressエンジンは、特定のページ・リクエストに対してデータベース言語を変更します。その後、適切な言語に翻訳されたアプリケーションを検索します。Application Expressエンジンはその言語を検出すると、その定義を使用してアプリケーションをレンダリングします。それ以外の場合は、ベース(プライマリ)のアプリケーション言語でアプリケーションをレンダリングします。
アプリケーション内に表示されるテキストは、すぐには翻訳されないことに注意してください。Oracle Application Expressは、ベース言語アプリケーション定義または代替アプリケーション定義のいずれかから動的にページ属性を収集します。
関連項目:
21.1.5 アプリケーション属性を翻訳可能に指定
アプリケーション内のアプリケーション属性を翻訳可能にするベスト・プラクティスについて学習します。
アプリケーション・ビルダーでアプリケーションを作成する際、フィールド・ラベル、リージョン・ヘッダー、ページ・ヘッダー・テキストなど、多数の宣言的な属性を定義します。
21.1.5.1 メッセージの言語変換をサポートするショートカットについて
アプリケーション・ビルダーには、翻訳可能なメッセージを参照できる2つのタイプのショートカットがあります。
-
メッセージ。このショートカットを使用して、実行時に変換可能なメッセージを参照します。ショートカット名は、対応するメッセージ名と一致させる必要があります。実行時、ショートカット名は、現在の言語に翻訳可能なメッセージのテキストに展開されます。
-
JavaScriptにより一重引用符がエスケープされたメッセージ:このショートカットを使用し、JavaScriptリテラル文字列内部のショートカットを参照し、実行時に翻訳可能なメッセージを参照します。このショートカットは、テキスト文字列を定義します。ショートカットが参照されると、JavaScriptに必要な一重引用符がエスケープされます。
関連項目:
親トピック: アプリケーション属性を翻訳可能に指定
21.1.5.2 メッセージについて
アプリケーションにPL/SQLリージョンまたはPL/SQLプロセスが含まれている場合には、生成されるHTMLまたはテキストを翻訳する必要があります。また、Oracle Application Expressが翻訳されている10の言語以外の言語をアプリケーションで使用する場合、レポートで使用されるメッセージの翻訳が必要な場合もあります。
関連項目:
親トピック: アプリケーション属性を翻訳可能に指定
21.1.5.3 テキスト文字列の動的翻訳について
動的翻訳は、実行時に翻訳する必要があるデータベース・データに使用します。たとえば、動的翻訳を使用して、データベース問合せに基づくLOVを翻訳する場合があります。動的翻訳は、翻訳元の言語文字列、言語コードおよび翻訳先の文字列で構成されています。また、APEX_LANG.LANG
APIを使用して、動的翻訳をプログラム的に取得できます。
関連項目:
親トピック: アプリケーション属性を翻訳可能に指定
21.1.5.5 翻訳テンプレートについて
デフォルトでは、テンプレートは翻訳可能ではないため、生成された翻訳ファイルには含まれません。通常、テンプレートには翻訳可能なテキストを含めません。ただし、テンプレートを翻訳可能として指定する必要がある場合は、ページ・テンプレートの編集ページで、「翻訳可能」チェック・ボックスを選択します。
テンプレートを翻訳可能として指定するには:
-
ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
-
アプリケーションを選択します。
-
アプリケーションのホームページで、「共有コンポーネント」をクリックします。
-
「ユーザー・インタフェース」で、「テンプレート」を選択します。
テンプレート・ページが表示されます。
-
編集するテンプレートを検索して、テンプレート名を選択します。
-
「名前」の下で「翻訳可能」を選択します。
静的置換文字列を使用して翻訳可能なテキストを定義することで、翻訳可能なテキストをアプリケーション・レベルで含めることができます。アプリケーション・レベル属性は翻訳されるため、静的置換文字列として定義された任意のテキストは、生成された翻訳ファイルに含まれます。
関連項目:
親トピック: アプリケーション属性を翻訳可能に指定