Technology

Salesforce 主従関係 所有者について以外に知らない子が多い

投稿日:2019年11月13日 更新日:

こんにちは、管理人の@Salesforce.Zです。

主従関係ってもう十分、 ほとんどのcoder の頭に定着したと思います。
しかし、これが知っていますか。所有者の話。子sObjectに所有者項目がないんですよ。

この記事で、所有者と権限の話をします。

主従関係とは

主従関係
※実はSalesforceでは、参照関係だが、この記事で、主従とし話します

データ構成上で、互いにアクセスするようにするため 、主従関係は二つのオブジェクトをリンクさせる一つの種類です。親子関係とも言える。

Contactのデータを見るときに、関連するデータも見たいことがよくある。この時にデータとデータの関連性がないと、見るようがない。

リレーションの一つ種類ですよ。

主従関係により、できること(ピックアップレベル)

  • 主レコードを 削除すると、関連する従レコードも自動的に消えますよ
  • 従レコードのデータを登録する時に、主レコード項目が必須になる
  • 主レコードに関連する従レコードの集計が自動的にできるようになる(積み上げ集計項目より)

主従関係の所有者

カスタムオブジェクトが主従関係の従側である場合
従オブジェクトのデータの所有権は主オブジェクト (または主従関係が 2 つある場合にはプライマリ主オブジェクト) に移るため、 従オブジェクトのデータの[所有者] 項目は削除されます。 つまり、オブジェク設定にはないです。

主従関係の権限

主従関係の従カスタムオブジェクトに
・共有ルール
・共有の直接設定
・キュー
を設定しようとする場合があるかと思います。残念。共有ルール、共有の直接設定、またはキューには [所有者] 項目が必要なため、設定できません。

※すでにデータを持っているカスタムオブジェクトに主従関係を作成することはできません。

クエリでのデータアクセス

主従関係も参照関係も、親であるオブジェクが主、子であるオブジェクが従と考えます。

従から主へのアクセス(ドット表記)

標準オブジェクトの場合

カスタムオブジェクトの場合

主から従へのアクセス(サブクエリ)

標準オブジェクトの場合

取引先責任者(従側)に取引先名項目があります。取引先名項目の詳細設定ページに
子リレーション名があり、そこに「Contacts」と記載していますよね?Salesforceにログインして、確認すれば分かりやすいです。

サブクエリで、親から、子にアクセスする場合、サブクエリのFROMは子リレーション名になります。

カスタムオブジェクトの場合

カスタムオブジェクトの場合も子オブジェクの親項目に確認し、子リレーション名が何かを確認し、子リレーション名に「_」2個と「r」でカスタムオブジェクトの場合のサブクエリのFROMになります。

リファレンス

-Technology
-

執筆者:


comment

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

関連記事

【攻撃実例】 wordpress管理者へ セキュリティをしっかりしよう

サイトに症状がなくても、あなたのサイトにもう既にウィルス感染しているかもしれません。サーバーのファイルをひたすらみてみてください。おかしいファイルありませんか。稼いでるサイトの裏に実はウィルスファイルが置かれていることが別のケース対応で、ついでに発見したことがあります。

Salesforce2Slack Integration with Web API

前回、Webhook URLでSalesforceから、Slackのチャンネルに投稿する記事を公開した。非常にシンプルでした。今回、やや複雑なSlack Web APIを使って、投稿することをチャレン …

Apex 一括処理 バッチの使用およびテストクラス

こんにちは、管理人の@Salesforce.Zです。 一括処理をバッチにすると、ガバナ制限を回避できるし、大量処理も可能。うまく設計できたら、いいですね。 Contents1 Apex Batchの構 …

Salesforce Field Service コンサルタント試験 想定問題集2

Welcome to your Salesforce Field Service EXAM 21-40 1.  作業予定を完了するときに、技術者がバーコードスキャナーを使用して資産番号を記録 …

Salesforce カスタム設定 カスタムメタデータ 比較 使うべきなのは?

カスタム設定/カスタムメタデータの使用について、どっちを使うべきかをここではっきりできる