言語のラベルは、オブジェクトの項目表示名だけでなく、VisualForce内で使用されている文言(ラベル)や、Apexコード内で使用されているメッセージなどにも利用できます。
こうすることで、ヘルプテキストやエラーメッセージなどの情報をユーザの自国語でユーザに表示し、開発者は真の多言語アプリケーションを作成できるようになっています。
利用には、「カスタム表示ラベル」を定義すると良いです。
カスタム表示ラベルとは、最大 1,000 文字のカスタムテキスト値で、ApexクラスやVisualforceページからアクセス(使用)することができます。
組織でトランスレーションワークベンチが有効になっている場合、これらの表示ラベルは Salesforce がサポートする言語に翻訳できます。
カスタム表示ラベルは、5,000 個まで作成できます。
はじめに、カスタム表示ラベルを作成してみましょう。
管理者コンソールの「アプリケーションの設定」⇒「作成」⇒「カスタム表示ラベル」を開きます。
上図の「新規カスタム表示ラベル」ボタンを押して、新しいラベルを作成します。
「message1」という名称のラベルを作成してみました。それでは、このラベルを翻訳してみましょう。
上図の「message1」というリンクをクリックしてください。
以下のような画面になりましたでしょうか。なったら、翻訳の「新規」ボタンを押します。
新規翻訳の画面で英語の言語を選択し、翻訳テキストを入力して保存します。
これで、VisualForceページやApexCode内で利用できるラベルとその翻訳が定義できました。
実際の利用には以下のようにします。
・作成した翻訳付きのカスタム表示ラベルをVisualForce内で利用する場合
<apex:outputLabel value="{!$Label.message1}" for="EventType" />
・作成した翻訳付きのカスタム表示ラベルをApexコード内で利用する場合
ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, System.Label.message1));
コラム
salesforce関連の本って少ないですよね。また、Web上の情報は詳しいのですが、広大すぎて、調べようと思ったときに手元にリファレンス的な本があると助かります。以下は私のおすすめの本です。
Force.comのすべて ~設計・開発 実践マニュアル~ 初めてSalesForceでWebアプリを作ろうとしたとき、どこから手を付けていいか迷いました。そんなときに役立つ初心者向けの本です。細かいところに手が届くたぐいの本ではないですが、一通り、体系的に学べるので、役に立ちます。
改訂新版 Salesforceプログラミングバイブル すこし高い本ですが、豊富なソースが載っており、上の本を勉強して次の段階に進んだ技術者には役立。こんなことってSalesForceでできないの?と思ったときにも役に立ちます。