この記事では、Salesforceで環境をカスタマイズする際に役立った小ネタをご紹介したいと思います。
レコードページにテキストを表示
レコードページにメッセージを表示したいとき、リッチテキストコンポーネントを使えば実現することが出来ます。
今回の前提となるその記事は作成しているので、まずはそちらを見てください。
さて、レコードページにメッセージを表示できるのは良いですが、この方法には少し問題があります。
それは見る人の言語設定によって、表示される文言が変わらないことです。
例えば、日本人のユーザは日本語で、アメリカ人のユーザは英語で言語設定していると思います。
このとき、上記で見ていただいた過去記事のやり方では、文字をベタ打ちしてしまっているため、誰もが同じ文字を見ることになります。
つまり、もし文字を日本語で書いていれば、アメリカのユーザが同じページを見たとき、その部分だけが日本語で表示されるということですね。
これでは、色々な国のユーザが想定される環境では使えないですね。
1か国限定の環境です。
この問題を解決するには、「カスタム表示ラベル」と「トランスレーションワークベンチ」を使う必要があります。
ベタ打ち対策にカスタム表示ラベル
まず、リッチテキストコンポーネントの文字ベタ打ちを対策します。
①「設定」のクイック検索から「カスタム表示ラベル」を検索し、作成していきます。
ラベルの名前や表示する文言を入力して保存します。
②過去記事同様、表示させたい画面の編集ページを開き、配置したい場所にリッチテキストを置きます。
そして、ここで先ほどのカスタム表示ラベルを表示するための文字を入れます。
その文字は**{!$Label.カスタム表示ラベルの名前}**です。
過去記事との違いは、ここで出したい文言をベタ打ちせず、カスタム表示ラベルを表示している点です。
③「保存」と「有効化」をして、画面に戻ります。
ちゃんとカスタム表示ラベルの文言が表示されています。
これで文字ベタ打ち対策は完了です。
さて、本題に入るために一度、現状を確認します。
ユーザ設定から「言語とタイムゾーン」を現在の言語とは変えてみます。
今回は英語で設定していきます。
すると、画面は設定の通り英語ベースの環境になりますが、先ほど自分でカスタマイズしたカスタム表示ラベルは日本語のままです。
トランスレーションワークベンチで言語ごとに文言を変える
では、異なる言語設定のユーザごとに、その言語で文言が表示されるよう設定していきましょう。
①「設定」のクイック検索から「トランスレーションワークベンチ」を検索し、「有効化」します。
②「トランスレーションワークベンチ」では使用したい言語を「追加」ボタンから追加できます。
今回は英語を追加したいのですが、有効化しただけでデフォルトで使えるようになっています。
③「設定」のクイック検索から「カスタム表示ラベル」を検索し、先ほど作成したカスタム表示ラベルを選択します。
ここでお気づきかと思いますが、下に**「翻訳」という項目が増えています**。
その枠にある「新規」ボタンを押します。
④「言語」と「翻訳テキスト」という項目があるので、表示したい言語を選択し、表示したい文章をその言語で記述して保存しましょう。
⑤配置している画面に戻ります。
ユーザの言語設定に合わせたカスタム表示ラベルが表示されていることが確認できます。
これで、見る人の言語設定によって、表示される文言を変えることができました。