当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。

テクてく Lotus 技術者 Slack に参加しよう!

2012年3月15日木曜日

マルチリンガル対応してみよう(2)

昨日の続きです。さすがに、夜中の1:00過ぎてまで、記事を書き続けられませんでした。

ということで、ボタンをクリックして、とっとと先へ進みましょう。
にほんブログ村 IT技術ブログへ


今度は、ビューを作成します。
基本的には、フォームと同様な形で作っていきます。
つまり、同じ名前(及び別名)で作成して、言語を「日本語」と「英語」にするのです。

筆者は、「すべての文書」「AllDocuments」という名前でビューを作成しました。
ビューの列は以下のようにしました。
列番号 列タイトル 列の値
1 件名Subject
2 分類Category
3 作成日@Created
4作成者@Author

また、アクションとして、次の2つを作成しました。
アクション名
閉じる
新規作成

ここまで出来たら、保存して閉じます。
日本語ビュー

ビューの一覧画面に戻ったら、設計のプロパティを表示します。
[設計]タブを開いて、「言語」の欄を"日本語"にします。
ビューの設計プロパティ


そうしたら、このビューをコピーします。
コピーしたビューの設計のプロパティを開きます。
こちらは、[設計]タブを開いて、「言語」の欄を"英語"にします。

名前が「コピー すべての文書」になっているはずなので、「すべての文書」に修正します。
ビューを選択した状態で、F2キーを押すと、ビュー名の変更ダイアログが表示されるので、そこで変更すると簡単です。
ビュー名の変更

さらに、ビューの設計を開いて、日本語の名前をつけていた箇所を英語に変更します。
列番号 列タイトル 列の値
1 SubjectSubject
2 CategoryCategory
3 Created Date@Created
4Author@Author

アクションはこんな感じに修正します。
アクション名
Close
New Topic

筆者の場合、こんな感じになりました。
英語ビュー

これで、出来ました。
ノーツクライアントから、このノーツアプリケーションを開いてみましょう。
日本語環境でビューを開いた

確かに日本語表示です。ビューも2つ作成したのに(日本語用と英語用)、1つしか表示されていません。

次に、「新規作成」をクリックして、文書を作成してみます。
日本語環境でフォームを開いた

日本語で作成したフォームが開いています。
折角なので、適当に値を入れて文書を作成してみます。
文書を作成した状態

では、本当にマルチリンガル対応できているのかどうかを確認するために、ノーツクライアントを英語環境に変えてみます。
[ファイル][プリファレンス]メニューを実行します。
設定ダイアログが表示されるので、[地域設定]タブを開きます。
「地域プロフィール」という項目があるので、"英語(USA)"に変更して、[OK]をクリックします。
地域設定を英語に変更

すると、ノーツクライアントを再起動する必要があるという事を告げるダイアログが表示されるので、[OK]をクリックします。
ノーツクライアント再起動確認ダイアログ

では、ノーツクライアントを再起動しましょう。

そうしたら、マルチリンガルデータベースを開きます。
おや?ビューが日本語のままですね?
いいえ。よく見てください。ビューが選択された状態になっていません。
1台のクライアントで試しているので、ビューの切り替えがうまくいかなかったようです。
英語環境デビューを開いたが失敗?

ここで慌てず、「すべての文書」ビューをクリックして開きます。
どうでしょう?ちゃんと英語表記になっていますね。
英語環境でビューを開いた

では、New Topicをクリックして、文書を作成してみましょう。
こちらも英語表記になっています。
英語環境でフォームを開いた

ということで、マルチリンガルデータベースは正しく作成できました。
思っていたよりも簡単でしたね。
XPages アプリケーションでは、まだ試していませんが、同様に簡単に行えると良いですね。

また、他の設計要素(ページやフレームセット)は、今回試していませんので、興味のある方は是非試して、結果を教えてください。


あっと、終わる前に[ファイル][プリファレンス]の「地域設定」タブで、地域プロフィールを"日本語"に戻すのを忘れないようにしてくださいね。


ではでは。







Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

1 件のコメント:

kenji fujieda さんのコメント...

業務ロジック部分を極力ScriptLibraryなどに入れてマルチ言語対応はフォームやビューのリテラル部のみにしないと保守がつらいですね。
以前、標準のmailやdiscussionのテンプレートを言語パック追加でセットアップしてどうやっているのかを研究したことがあります。