標準データモデル
ほかに 28 言語で読めます
English · Español · Português (Brasil) · Français · Deutsch · Italiano · 한국어 · 简体中文 · Português (Portugal) · 繁體中文 · Bahasa Indonesia · Türkçe · Polski · Tiếng Việt · ไทย · Nederlands · العربية · עברית · Українська · हिन्दी · Русский · Svenska · Dansk · Norsk bokmål · Suomi · Español (México) · Français (Canada) · Deutsch (Schweiz)

モジュール2/10:Data Architectコース第3章「Salesforceのデータアーキテクチャ」。各モジュールは単独でも読めます。 前へ:Salesforceのデータプラットフォーム:データベース以上のもの · 次へ:自分で作る:カスタムオブジェクト
このモジュールが答える問い: Salesforceはすでに何をモデリングしてくれていて、それはどう組み立てられているのか?
モジュール1で、母船を見よと言いました。何かを発明する前に、Salesforce自身がそれをどうやっているかを見るのです。このモジュールで、実際にそれを見ていきます。Salesforceはすでに多くのビジネスを標準オブジェクトとしてモデリングしてくれています。そして私が訪れるたいていの組織で、仕事の大半をこなしているのはそのうちの2つのモデル、SalesモデルとServiceモデルです。何かがカスタムオブジェクトに値するかどうかを判断する前に、すでに何があるのかを知っておく必要があります。それが次の2つのモジュールです。
何がオブジェクトを標準にするのか
Section titled “何がオブジェクトを標準にするのか ”標準オブジェクトは最初から用意されています。Salesforceが作ったもので、決まった目的があり、独自の項目とリレーションを持っています。項目を追加し、その周りに自動化を作り、レイアウトを変えることはできますが、設計し直すことはできません。標準の項目とリレーションはSalesforceのものです。
名前を見てください。Account、Contact、Case。接頭辞も接尾辞もありません。 それはSalesforceがその領域を自分のために取っておいているということです。私たちが作るものはすべて__cで終わるので、Salesforceはいつでも新しい標準オブジェクトを追加でき、あなたの組織にあるものと衝突することは決してありません。そして実際、リリースのたびに追加しています。
どこかの時点で、誰かがうまくいかない製品オブジェクトを作り、それを置き去りにしなければなりませんでした。だからAPI参照名はProduct2なのです。誰かがSalesforceを知っていると言ったとき、これが私の最初のリトマス試験です。
Salesモデル
Section titled “Salesモデル ”左側のリードから始めましょう。顧客になるかもしれない人です。リードは、まだ本当の意味ではモデルの一部ではありません。一時的な置き場所です。リードを取引開始すると、Salesforceが本当のレコードを作ります。取引先、取引先責任者、そして案件があれば商談です。だから私はリードを脇に離して描きます。
取引先は会社です。その取引先責任者は、そこにいる人々です。商談は、その取引先との案件です。ここまでは、予想どおりでしょう。
ここからが面白いところです。案件には何が含まれているのでしょう? 各行は商談商品で、商談商品は商品を直接指していません。価格表エントリを指しています。この商品を、この価格で、この価格表で、というものです。価格表エントリは商品と価格表の間にあるので、同じ商品が標準価格表ではある価格、パートナー向けの価格表では別の価格を持つことができます。
関係が「もの」になったのが2つ、続けて並んでいるのです。第2章の、配送と製品の間にある配送品目や、犬と芸の間にある犬の芸を覚えていますか? Salesforceはここでまったく同じことを2回やっています。商談と価格表エントリの間の商談商品、そして商品と価格表の間の価格表エントリです。これが読めるようになれば、標準データモデルのほとんどが読めるようになります。
そのつながりを、それを支える項目とともに近くで見てみましょう。
多くの人がつまずくルールが一つあります。標準価格表があり、ほかの価格表の価格表エントリは、その商品の標準価格をそのまま使うことができます。商談の商品をロードする前に、その商談がどの価格表を使っているかを把握しておきましょう。
Serviceモデル
Section titled “Serviceモデル ”次は家のもう一方の側です。同じ取引先、同じ取引先責任者。何か問題が起きると、顧客はケースを起票します。
ケースはたいてい顧客が持っている何かについてのもので、Salesforceにはそのためのオブジェクトがあります。納入商品です。モジュール5では、これを見落とされがちな標準オブジェクトと呼びます。顧客が持っているもので、私たちから買ったかどうかは問いません。
では、顧客は何を受ける権利があるのでしょう? それがエンタイトルメントです。取引先が受けられるサポートのことで、多くの場合、納入商品、商品、またはサービス契約に結びついています。ケースにエンタイトルメントを設定すれば、そのケースは自分がどのレベルのサポートを受けるべきかを知ることになります。
ケースから自分自身に戻ってくる線を見てください。すべてのケースには親ケース項目があり、それは別のケースを指しています。これが自己参照、つまりオブジェクトからそれ自身へのリレーションです。初めて見たときに多くの人が混乱するので、私がこれを使う2つの理由を紹介します。
1つ目:大きな問題が、小さな問題に分かれる場合。顧客から、設備全体が止まっていると報告があります。ネットワーク、ハードウェア、設定のそれぞれについてサブケースを起票し、それぞれ別々に対応し、すべてが上に向かって解決されていきます。サブケースがすべて終わるまで、親ケースは完了しません。
2つ目:履歴。先月クローズしたケースがあり、同じ問題が再び起きました。新しいケースは元のケースを指し返すので、それを開いた人は誰でも、これが以前にも起きたこと、そしてそのとき何をしたかを確認できます。
自己参照には、モジュール7でリレーションを扱うときに戻ってきます。
取引先と取引先責任者が、両方の図で同じ位置にあることに注目してください。同じレコードだからです。営業担当者とサービス担当者は、家の別々の側から同じ顧客を見ているのです。これが標準にとどまることの最も強い論拠の一つです。モデルは出会うように作られているのです。
ファイルと添付ファイル
Section titled “ファイルと添付ファイル ”レコード上のすべてが項目というわけではありません。契約書、写真、PDF、スプレッドシートはファイルであり、従来の仕組みである古い添付ファイルのモデルではなく、Salesforceファイルに置くべきものです。ドキュメントがすでにSharePoint Online、OneDrive、Google Drive、Boxにあるなら、Files Connectを使えば、ユーザーはそれをSalesforceにコピーせずにSalesforceから利用できます。
ファイルはレコードとは別に数えられます。Salesforceはストレージを2つに分けています。ファイルストレージには添付ファイル、ファイル、Salesforce CRM Content、Chatterのファイルなどが入り、データストレージにはレコードが入ります。すべてのレコードに写真やスキャンが付くと、ファイルストレージは急速に増えます。ですから、フィールドアプリの写真のような大量の画像は、Salesforceの外に完全に置き、Salesforceにはリンクだけを持たせるのがふさわしいことがよくあります。これにはモジュール4で戻ってきます。
2列でも200列でも
Section titled “2列でも200列でも ”データストレージも、データベースとは数え方が違います。普通のデータベースでは、2列で100万行のテーブルは小さく、100列で100万行のテーブルは巨象です。Salesforceはどちらも同じ重さとして扱います。ほとんどのレコードは、項目がいくつあっても、約2 KBとして数えられます。 例外もあります。キャンペーンはそれより多く数えられ、メールメッセージは実際のサイズで数えられ、個人取引先は取引先であり取引先責任者でもあるので、約4 KBとして数えられます。
一つコツを紹介しましょう。新しい組織に入るたびに、私が最初に見に行く場所の一つが設定 → ストレージの使用状況です。最初の打ち合わせで、お客様にそのスクリーンショットを頼むことさえあります。あの画面は嘘をつきません。どのオブジェクトが増えているのか、そしてどれがすでに巨象になっているのかを教えてくれます。
個人取引先:顧客が個人のとき
Section titled “個人取引先:顧客が個人のとき ”取引先と取引先責任者のモデルは、会社とそこにいる人々については見事に機能します。でも、顧客が会社ではなかったら? 個人だったら?
それが個人取引先です。個人のために、取引先と取引先責任者を1つのレコードにまとめたものです。取引先責任者の項目も一緒についてきて、カスタム項目は独自の接尾辞__pcで表示されます。1件ごとに取引先と取引先責任者の両方のストレージに数えられます。その下では両方だからです。
有効にする前に一つ警告しておきます。個人取引先は、一度有効にすると無効にできません。 これは第1章の可逆性テストの最も純粋な形です。それがいつ割に合うのかについての私の立場は、モジュール5で紹介します。
ここでアーキテクトが決めること
Section titled “ここでアーキテクトが決めること ”- 新しいものを設計する前に、ビジネスのどの部分をSalesforceがすでにモデリングしているか。
- ある概念がSalesモデル、Serviceモデル、あるいはその両方のどこに収まるか。両者が取引先と取引先責任者を共有していることを踏まえて。
- ドキュメントや画像をどこに置くか:Salesforceファイル、接続されたファイルシステム、あるいはリンクを付けてプラットフォームの外に。
- データがストレージ上でどれだけのコストになるか。Salesforceの数え方、つまり列ではなくレコードで数えて。
- オフにできないものをオンにする前に、顧客が会社なのか個人なのか。
では、必要なものがSalesforceにないときは? 自分で作ります。それが次のモジュールです。
さらに学ぶ
Section titled “さらに学ぶ ”- OpportunityLineItem (opens in a new tab)、Object Reference for the Salesforce Platform(英語、2026-10-12確認):「商談に関連付けられたProduct2の商品リストのメンバー」。価格表エントリは必須。
- PricebookEntry (opens in a new tab)、Object Reference(英語、2026-10-12確認):「Pricebook2とProduct2の関連付け」。エントリは標準価格を使うことができる。
- Case (opens in a new tab)、Object Reference(英語、2026-10-12確認):ParentId、「階層内の親ケースのID。表示ラベルは親ケース」。ケースへの参照関係。
- Entitlement (opens in a new tab)、Object Reference(英語、2026-10-12確認):「取引先または取引先責任者が受けられるカスタマーサポート」。納入商品、商品、サービス契約に基づくことがある。
- Data and Storage Resources (opens in a new tab)、Salesforceヘルプ(英語、2026-10-12確認):ファイルストレージとデータストレージに何が含まれるか。
- Salesforce Data Storage: Estimated Record Size by Object Type (opens in a new tab)、Salesforceヘルプ(英語、2026-10-12確認):「ほとんどのSalesforceレコードは約2 KBのデータストレージを使用する」。個人取引先は約4 KB。
- Enable Person Accounts (opens in a new tab)、Salesforceヘルプ(英語、2026-10-12確認):「個人取引先は、一度有効にすると無効にできない」。
- Files Connect FAQ (opens in a new tab)、Salesforceヘルプ(英語、2026-09-25確認)。
