Skip to main content

 

アプリケーションの開発

 

Webアプリケーションが対象
OutSystems

多言語Webアプリケーション

モジュールが設計された言語(デフォルト言語)に加え、モジュールを翻訳し実行する他の言語を追加することができます。言語は地域によって異なるため、各言語は第1言語または第1言語および地域で定義されるロケールで指定します。

モジュールの以下の要素を翻訳することができます。

  • 画面内のテキスト
  • 画面タイトル
  • ボタン、プロセス、処理アクティビティのラベル
  • Human Activityの指示
  • リンク内のテキスト
  • Combo Boxウィジェットの特殊リストオプション
  • アプリケーションに埋め込まれている、エンドユーザーに向けて表示されるメッセージ(検証メッセージ、ウィジェットの確認、および空のメッセージ)
  • すべての種類の式に含まれる文字リテラル(エスケープされていない式やJavaScriptを含む)
  • 画像
  • 静的エンティティ(Use Translations拡張プロパティが有効になっていることを確認してください)

翻訳処理の観点から、翻訳できる要素は翻訳可能なリソースとみなされます。

他の言語を追加する

すべてのロケールは、RFC 1766標準フォーマットに従って表現されます。以下に例をいくつか示します。

英語 フランス語 ポルトガル語 スペイン語
en: 英語 fr: フランス語 pt: ポルトガル語 es: スペイン語
en-GB: 英語(イギリス) fr-CA: フランス語(カナダ) pt-BR: ポルトガル語(ブラジル) es-AR: スペイン語(アルゼンチン)
en-US: 英語(アメリカ合衆国) fr-FR: フランス語(フランス) pt-PT: ポルトガル語(ポルトガル) es-ES: スペイン語(スペイン)

言語ロケールを追加するには、以下の手順を実行します。

  1. Date]タブの要素ツリーにあるMultilingual Localesフォルダを右クリックし、[Add Locale...]オプションを選択します。

  2. [Select Locale]ウィンドウから追加する言語ロケールを選択します。

アプリケーションの実行中、言語地域用に定義された翻訳が要素にない場合は、第1言語に定義された翻訳が使用されます。

リソースの翻訳プロセス

モジュールの翻訳は、翻訳可能なリソースを含むファイルを使用して行います。OutSystemsは、翻訳可能なリソースをこれらのファイルにエクスポートします。ファイルは翻訳者に送信され、翻訳後、モジュールにインポートされます。

翻訳のためのリソースのエクスポート

翻訳可能なリソースをエクスポートするには、以下の手順を実行します。

  1. [Module]メニューを開き、[Export]をポイントして[Language Resources To <形式>]オプションのいずれかを選択します。<形式>は以下のいずれかのファイル形式です。

    • Excel

      OutSystemsプラットフォームは、翻訳可能なすべてのリソースを、以下のように行と列にリストされた1つのExcelファイルにエクスポートします。

      Key: 翻訳可能なリソースのキー。これはeSpace内で一意のものであり、変更されません。新しい翻訳可能なリソースには、異なるキーが付与されます。

      Location: 翻訳可能なリソースの、eSpaceでの場所。

      Text to be translated: 翻訳対象のテキスト。

      Locale(s): eSpace内の各言語ロケールの列。ここに翻訳したテキストを設定します。元のテキストをそのまま使用する場合は、翻訳テキストを空白のままにしておきます。

    • .resX(.NETリソース形式)

      OutSystemsは、翻訳可能なすべてのリソースを.resXファイルにエクスポートします。内訳は、モジュールの各言語ロケールにつき1ファイルずつ、さらにモジュールのデフォルト言語が1ファイルです。翻訳可能なリソース情報は、基本的に<name, value>の一組で構成されるXML形式で構成されますが、コメントも追加されます。

      Name: 翻訳可能なリソースの名前(キー)。これはeSpace内で一意のものであり、変更されません。新しい翻訳可能なリソースには、異なる名前が付与されます。

      * Value: 既存のテキストを置き換える翻訳済みテキストを入れるフィールドです。

      Comment: 翻訳可能なリソースの、モジュールでの場所。

      注記: ご利用の.NET Frameworkによっては、翻訳可能なリソースファイルにさらに多くのアトリビュートを含めることができますが、これらの追加のアトリビュートはService Studioでは無視されます。

    この手順を完了するための別の方法として、[Data]タブを開き、Multilingual Localesフォルダを右クリックし、[Export Language Resources]をポイントして、[To <形式>]オプションのいずれかを選択することもできます。
  2. ファイルを保存するフォルダを選択します。

    Service Studioでは、言語の翻訳可能なリソースファイルに対して以下の固定名を使用するため、ファイル名は求められません。

    Excelファイル
    Excelファイルの名前は、次の規則に従います。<eSpace name> + 'Language' + '.'+ <Excel extension>.たとえば、モジュール名が「Recruitment」の場合、言語の翻訳可能なリソースファイル名は「RecruitmentLanguage.xls」となります。
    .resXファイル
    resXファイルの名前は、次の規則に従います。<eSpace name> + 'Language' + '.'+ <Language locale> + '.resX'.たとえば、モジュール名が「Recruitment」で、言語ロケールがフランス語(フランス)(fr-FR)およびフランス語(カナダ)(fr-CA)だとします。この場合、「RecruitmentLanguage.fr-FR.resX」、「RecruitmentLanguage.fr-CA.resX」、および「RecruitmentLanguage.resX'」(デフォルト言語用)という3つのファイルが生成されます。

翻訳用に画像をエクスポートする

画像は、ファイルに保存する方法で手動でエクスポートをする必要があります。翻訳する元の画像を右クリックし、[Save Image As...]オプションを選択して画像を保存します。画像を翻訳する必要がある言語ごとに、この手順を繰り返します。

以下の形式に従って、翻訳した画像に名前を付けます。<image name> + '.'+ <language locale> + '.'+ <image extension>.これにより、翻訳した画像を追加するとき、Service Studioがロケールを自動的に決定できます。

リソースの翻訳をインポートする

翻訳可能なリソースの翻訳を元のモジュールにインポートするには、以下の手順を実行します。

  1. [Module]メニューを開き、[Import]をポイントして[Language Resources]を選択します。

    この手順を完了するための別の方法として、[Data]タブを開き、Multilingual Localesフォルダを右クリックし、[Import Language Resources]を選択することもできます。
  2. インポートするファイルを選択します。

    以下のいずれかの形式のファイルをインポートできます。

    Excelファイル
    インポートの対象となる翻訳可能なリソースの翻訳を含むExcelファイルを選択すると、すべての言語の翻訳が更新されます。
    .resXファイル
    翻訳可能なリソースの翻訳をインポートする言語の.resXファイルを選択すると、インポートされた言語の翻訳のみが更新されます。

翻訳した画像をインポートする

翻訳した画像は、以下の2つの方法のいずれかを使用し、手動でインポートする必要があります。

  • 翻訳した画像がすでにある場合: 翻訳した画像を右クリックし、[Change Localized Image...]オプションを選択して、新しい翻訳済み画像を選択します。

  • 翻訳した画像がない場合: 翻訳した画像を追加します。

特定の言語の画像を追加するには、以下の手順を実行します。

  1. Interface]タブの要素ツリーにあるImagesフォルダに移動します。
  2. 元の画像を右クリックし、[Add Localized Image]オプションを選択します。
  3. 画像を選択して追加します。
  4. 新しく追加されたローカライズ済みの画像を選択し、Localeプロパティに適切な言語ロケールを設定します。

アプリケーション言語を変更する

SetCurrentLocaleシステムアクションを使用して、アプリケーションの実行言語を変更することができます。

例として、このシステムアクションを使用してエンドユーザーがアプリケーションの動作言語を変更できるようにします。

各国旗には、押すと言語ロケールを変更する画面アクションを呼び出すリンクがあります。スペイン国旗の例は以下のとおりです。

スペイン国旗のリンク

ChangeLanguageアクションフロー

SetCurrentLocaleプロパティ

現在の言語をエンドユーザーへ表示する

アプリケーションの現在の言語ロケールは、GetCurrentLocaleビルトイン関数を使用して取得できます。

たとえば、アプリケーションが動作している言語の国旗とロケールコード(RFC 1766形式)をエンドユーザーに表示することができます。

  • Was this article helpful?