設定方法

他のオブジェクトの項目値を数式で参照したい!! クロスオブジェクト数式項目

スポンサーリンク

こんな事ありませんか?

Salesforceを使用していて、こんな事ありませんか?
・クロスオブジェクト数式項目って何か分からない・・・
・違うオブジェクトだけど、似たような項目に何回も値を入力している・・・
・他のオブジェクトの値を確認したいけど、ページ遷移するのが面倒・・・
・レポート用に他のオブジェクトの値を引っ張りたい・・・


そんな時は、他のオブジェクトの項目値を引っ張ることができる
クロスオブジェクト数式項目を作成しましょう!!

今回の記事は、クロスオブジェクト数式項目について特徴の説明と設定方法を載せています。
☆簡単に設定できて、実務の便利さが広がるので、ぜひ実践できるようにしてください♪☆
※不明点あれば、コメントください!匿名なのでお気軽にどうぞ☆


ADMINだってできるもん

クロスオブジェクト数式項目の説明・使用条件

クロスオブジェクト数式項目ですが、説明と前提を先に載せておきます。

■クロスオブジェクト数式って?
・項目を新規作成する時に数式項目を選択できますが、「クロスオブジェクト数式項目」は
その数式項目の一種です。
なので、ただの数式項目です(笑) 何で特別な呼び名があるか謎です・・・(笑)

(例)
・商談画面に商談の「金額」を用いた「金額 税込」という数式項目を新規作成する
 ┗数式項目
・商談画面に取引先の「郵便番号」を用いた「郵便番号ハイフンなし」という数式項目を新規作成する
 ┗クロスオブジェクト数式項目

そのため、お気軽に「数式項目を作れば良いのか。」と考えてOKです

数式項目の一種のクロスオブジェクト数式項目ですが、使用条件を整理しておきましょう。

■使用条件
①”項目を作成したいオブジェクト”と”値を引っ張りたいオブジェクト”はリレーションがあること
②引っ張れる項目は、親オブジェクトのみ


①は、当たり前ですが、他のオブジェクトの項目値を引っ張りたい!!ので、
主従関係でも参照関係でも繋がってる必要あります


②は、少し難しいですが、値を引っ張れる先は”クロスオブジェクト数式項目を新規作成するオブジェクト”の親オブジェクトのみです。

・理由は、子オブジェクトは基本的に複数レコード存在します。
※写真の商談だと、商品は複数あるので、数式で値を参照する際に、どの子供のレコードの項目値を参照するの?とシステムが判別できません・・・

・一方で、親オブジェクトは、基本的に1レコードしかありません。
※写真の商談だと、各商談は、2つの取引先と紐づいていない。そのため、数式で値を引っ張る時に、項目値が1つに決まるため問題は起きません♪


この2つは大切なので、覚えてくださいね!!


※他にも使用条件はありますが、気にしなくて良い小さな事ばかりなので割愛します。
ヘルプページを参照ください。
https://help.salesforce.com/s/articleView?id=sf.customize_cross_object.htm&type=5

設定方法の概要と準備

■概要
クロスオブジェクト数式項目の設定方法は、大きく以下の流れです。

①オブジェクト同士のリレーション確認
②表示したいオブジェクトで新規項目作成と表示内容の選択
➂動作確認


今回は、2つのケースのクロスオブジェクト数式項目を設定してみます!!

ケース1.商談オブジェクトに、取引先の「都道府県」を表示する
ケース2.商談商品オブジェクトに、商談の完了予定日を表示する


■準備
クロスオブジェクト数式項目を作成する環境は、TrailheadのPlaygroundです。
※開発環境やSandboxでも大丈夫です!!

環境の取得方法は、以下のリンクを参照してください!
https://trailhead.salesforce.com/ja/content/learn/modules/trailhead_playground_management/get-your-trailhead-playground-username-and-password


ぜひ、一緒に操作しながら進めてください~!!

ケース1.商談オブジェクトに、取引先の「都道府県」を表示する

任意のレコードを開いていただき、詳細を開きます。


写真内にある、リレーション項目の先にある項目値を引っ張ることができます!!
※この場合、取引先は親オブジェクトのため、取引先の項目値は引っ張れる☆

それでは、商談に「都道府県」を作成しましょう!!
まずは、商談のオブジェクトマネージャーを開き、「項目とリレーション」の新規をクリック



続いて、数式を選択して、次へをクリック



以下の入力します!
・項目の表示ラベル:取引先の都道府県 
 ※分かりやすいように命名しました。ご自身で自由に設定してOKです。
・項目名:AccountAddress ※ご自身で自由に設定してOKです。
・数式の戻り値のデータ型:テキスト ※今回は、都道府県なのでテキストにしました。




表示されるページで、高度な数式をクリックして、項目の挿入をクリックします




このような画面が出てきました!難しいそうですが、ご安心ください。
この中から表示したい項目をポチポチ選んでいくだけです(笑)






商談 > をクリック、取引先 > をクリック、都道府県(請求先)をクリック、挿入をクリックする
※都道府県は納入先の方でもOKですよ




構文が自動的に追加されるので、
下の方にある「構文を確認」をクリック、確認の結果が問題なければ次へをクリック



後は、項目レベルセキュリティとページレイアウトへの保存する
※ここは、アドミンだと出来ると思いますので割愛します・・・

作った項目を確認してみましょう!
ちゃんと、取引先の都道府県が反映されてます!!!!



・他のレコードでも正しく表示されていること
・取引先の値を変更したら、今回作った数式項目も変更されること

これらも確認してみてください!!


ポチポチとするだけで、他のオブジェクトの値を簡単に引っ張ることができました!

ケース2.商談商品オブジェクトに、商談の完了予定日を表示する

設定前の商談と商談商品を確認しましょう。
※商談商品を作っておいてください。

任意の商談商品レコードを開いていただき、詳細を開きます。




写真内にある、リレーション項目の先にある項目値を引っ張ることができます!!
※この場合、商談は親オブジェクトのため、商談の項目値は引っ張れる☆

それでは、商談商品に「完了予定日」を作成しましょう!!
まずは、商談商品のオブジェクトマネージャーを開き、「項目とリレーション」の新規をクリック



続いて、数式を選択して、次へをクリック



以下の入力します!
・項目の表示ラベル:商談の完了予定日 
 ※分かりやすいように命名しました。ご自身で自由に設定してOKです。
・項目名:OpportunityContractDate ※ご自身で自由に設定してOKです。
・数式の戻り値のデータ型:日付 ※今回は、契約予定日なので日付にしました。



表示されるページで、高度な数式をクリックして、項目の挿入をクリックします



このような画面が出てきました!難しいそうですが、ご安心ください。
この中から表示したい項目をポチポチ選んでいくだけです(笑)




商談商品 > をクリック、商談 > をクリック、完了予定日をクリック、挿入をクリックする




構文が自動的に追加されるので、
下の方にある「構文を確認」をクリック、確認の結果が問題なければ次へをクリック



後は、項目レベルセキュリティとページレイアウトへの追加をして保存する
※ここは、アドミンだと出来ると思いますので割愛します・・・

作った項目を確認してみましょう!
ちゃんと、取引先の都道府県が反映されてます!!!!




・他のレコードでも正しく表示されていること
・商談の値を変更したら、今回作った数式項目も変更されること


これらも確認してみてください!!


ポチポチとするだけで、他のオブジェクトの値を簡単に引っ張ることができました!

ちなみに・・・
ⅰ商談に商談商品の項目を引っ張ることはできません・・・
 ※前提の②で説明した通り

ⅱ数式項目の内容は手動で変更できないので(常に商談の完了予定日と同じになる)



値は引っ張りたいんだけど、後から自由に編集できるようにしたいんだよね~
という要望は叶えられません・・・
※この場合は、フローが必要で、別途解説します!!

スポンサーリンク
アドもんをフォローする
Adminだってできるもん

コメント 匿名ですので、お気軽にコメントいただけると嬉しいです!!

タイトルとURLをコピーしました