開発Blog

多言語対応について

投稿日:

最近、日英中以外の言語を増やしたいというお問い合わせを受けることが多くなってきましたので、その方法等をまとめさせて頂きます。

intra-martにおける多言語対応とは?

intra-mart Ver5.0以降、ログインユーザごとに使用する言語を切り替えることができます。(管理者での指定もユーザ自身での変更も可能。)
言語を切り替えるとメニュー項目、表示項目、メッセージがユーザの指定した言語(ロケール)に切り替わります。
1.png

多言語化に対応している項目は以下のものになります。

  • メニュー表示名
  • 標準提供画面の各種項目名、キャプション
  • ロール表示名
  • カレンダ表示名
  • グループ(会社・組織・パブリックグループ)
    • 組織名、会社名、パブリックグループ名称
    • 組織名、会社名、パブリックグループのカナ名称(日本語ロケールのみで利用)
    • 組織名、会社名、パブリックグループの英字名称
    • 住所
  • ユーザ
    • ユーザー名
    • ユーザー名カナ(日本語ロケールのみで利用)
    • ユーザー名英字
    • 住所
  • 役職名
  • メッセージ

画面イメージ:ログイン管理者・英語ロケール

2.png

画面イメージ:ログイン管理者・中国語ロケール

3.png

各業務画面での対応について

intra-martの多言語化でサポートしているのは、メッセージ、表示項目のロケールによる変更する機能の提供のみです。

基本的なメッセージの切り替えだけであれば、各ロケール単位で、画面を作成する必要はありませんが、ほとんどの場合、ロケール単位で表示レイアウトを微調整する必要があり、それ以外でも処理を変更したり、メッセージの表示内容を修正する必要があるので、ロケール単位で画面を作成する必要があります。

対応言語の増やし方

intra-martから提供している英語、中国語(簡体字)以外に対応言語を増やす場合、以下の作業が必要です。

  1. 各言語用メッセージファイルの準備(=翻訳)
  2. マスタデータ用のSQLファイル,XMLファイルの準備(=翻訳)
  3. その他ファイルの準備(=翻訳)
  4. system.xmlへのロケール情報の追加
  5. 画面上、各項目のサイズ調整(必要に応じて)
  6. 追加した言語を利用するユーザでロケール設定を行う。

追加言語用メッセージファイルの準備(=翻訳)

追加する言語用のメッセージプロパティファイルを用意します。
iWP v7.2アドバンスド版英語コンテンツでの例

  • conf/message以下のpropertiesファイル(29ファイル)
    • 例:im-error-message_en.properties(prefix: "メッセージ名"-message_"ロケール名".properties
  • doc/imart/WEB-INF/lib/im_properties.jarファイル内のpropertiesファイル(49ファイル)
  • plugin以下の各プラグインモジュールのpropertiesファイル(68ファイル)
    • 例: plugin/jp.co.intra_mart.master.app.search.standard/plugin_en.properties(Prefix:Plugin/プラグイン名/plugin_"ロケール名".properties)

※各ファイルはUTF-8でBOMなしファイル。
その他、メッセージプロパティの仕様に関しては、

を参照してください。

マスタデータ用のSQLファイル、XMLファイルの準備(=翻訳)

追加する言語用のマスタデータ用のSQLファイル、XMLファイルを準備する。

  • iWP v7.2アドバンスド版英語コンテンツでの例
    • storage/system/basic配下のsql、xmlファイル(29ファイル)

その他ファイルの準備(=翻訳)

必要であれば、以下の部分の修正、翻訳を行う。

  • 送信メールのエンコード指定
    • conf/mail/encode_"ロケール名".properties
      キャラクタセット、mimeエンコード、 contentTransferEncodingを指定する。
  • システム管理者用メニューの翻訳
    • conf/system-menu_ "ロケール名".xml
  • intra-mart Administratorの翻訳
    • conf/admin_"ロケール名".properties
  • ドキュメントワークフロー(BPW)のメールテンプレート
    • Storage/bpw/mail_template/"ロケール名"以下、17ファイル

system.xmlへのロケール情報の追加

system.xmlに追加するロケール情報(system/locale-config/locale)を追記する。

例:日本語、英語、中国語(簡体字)にドイツ語を追加した場合:
4.png

画面上、各項目のサイズ調整

言語により、文字列の長さが、変わりますので、画面構成が崩れる場合は、各項目のサイズを変更する必要があります。

スクリプト開発モデルの場合、言語毎に、ソース(html,js)の格納先を変更することが可能です。詳細は以下のドキュメントを参照してください。

また、各アプリケーションでの言語切替の実装方法は、以下のドキュメントを参照してください。

JavaEE開発モデル:

スクリプト開発モデル:

-開発Blog

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

ワークフロー関連APIのver4.3/ver5.0対比表

ワークフロー関連のAPIがver5.0になり一部変更されています。 以下の添付資料はver4.3とver5.0のAPIの変更リストです。 参考にしてください。 →workflowAPI 対比表(ZIP …

no image

認可のExcelインポート・エクスポートで認可設定がより便利に

今回は、認可のExcelインポート・エクスポート機能についての紹介です。 0.はじめに 1.認可Excelインポート・エクスポート機能を使用するためには 2.【使用例1】権限設定の変更を、業務時間外 …

no image

intra-mart Advent Calendar 2013 第13日:ログイン後に任意の画面を開く方法

この記事は、intra-mart Advent Calendar 2013 第13日の記事です。 intra-mart Advent Calendar 2013 第1日目の「iAPでもiWPみたいにU …

no image

intra-mart Advent Calendar 2013 第6日:実は、認可設定状況確認(/tenant/authz/view) というかあるんですよ!

この記事は、intra-mart Advent Calendar 2013 第6日の記事です。 あまり知られていないであろう機能を紹介する今年のAdvent Calendar、今回は、あまり知られてい …

no image

intra-mart Advent Calendar 2013 第8日:im-Jugglingを利用せず、CUIでwarファイルを作成する方法

この記事は、intra-mart Advent Calendar 2013 第8日の記事です。 intra-mart Accel Platformは、im-Jugglingを利用してwarファイルを作 …