Salesforce Custom Object とは、既存の object では扱えない自社固有のデータ(賃貸契約、機器、代理店など)を保存するために、自分で作成するデータオブジェクトです。よくある質問はこれです。機器の一覧を管理したいとき、標準の Product を使うべきか、新しい object を作るべきか。
結論から言うと、既存の object がニーズの約80%に合うなら、それを使い、不足分は field や Record Type で補うのがおすすめです。新しい object を作るのは、データの性質が Salesforce の既存のものと本当に異なる場合だけにしましょう。作るのは簡単ですが、後から整理するのが大変です。
ご注意: 記事内のオフィス機器の販売会社とケースごとの提案は仮想の例であり、実在のお客様ではありません。最適な答えは運用方法によって異なります。80%という数字は目安であり、必須の基準ではありません。Custom Object を作成できるか、何個まで作れるかは edition や license によって異なり、メニュー名もバージョンで変わる場合があります。公式ドキュメントでご確認ください。

Salesforce の object とは
Salesforce では、すべてのデータが object に保存されます。object は表のようなもので、field が列、record が行にあたります。Account は会社、Contact は担当者、Opportunity は商談、Case はサポートの問い合わせを保存します。
Trailhead の object に関するドキュメント(英語)によると、Salesforce にはいくつかの種類の object があり、最も一般的なのは standard と custom の2つです。この記事ではこの2つを扱います。
Salesforce Custom Object と Standard Object の違い
Standard Object は Salesforce に最初から用意されている object で、多くの機能が備わっています。Custom Object は、自社固有のデータのために自分で作る object です。大切なのは、どちらも拡張できる点です。Standard Object にも custom field を追加できるため、必ずしも新しい object が必要とは限りません。
| 比較項目 | Standard Object | Custom Object |
|---|---|---|
| 由来 | Salesforce に標準搭載 | 管理者が作成 |
| 例 | Account、Contact、Opportunity、Case、Product | 賃貸契約、機器、代理店(企業ごとに異なる) |
| 組み込み機能 | 多くの機能とレポートが用意済み | field、relationship、layout はあるが、追加設定が必要 |
| custom field の追加 | 可能 | 可能 |
| object の削除 | 不可 | 可能 |
| API 名 | 特別な接尾辞なし | 末尾が __c |
| 作成数の上限 | 該当なし | edition による |
独自の object を作るべきか判断する4つの質問
Object Manager を開く前に、次の4つの質問に順番に答えましょう。
近い既存の object はあるか
- 管理したいものに名前を付け、同じ種類のものを表す既存の object を探します
- 例:販売する機器のカタログは Product に近く、お客様が購入して使用中の機器は Asset に近い場合があります。ご利用のプランにどの object があるかは Object Manager で確認してください
既存の object でニーズの何割をカバーできるか
- 約80%をカバーできるなら、それを使い、残りは custom field、page layout、validation rule で補います
- これは目安であり、厳密な基準ではありません
データの性質は本当に異なるか
- ライフサイクル、閲覧できる人、顧客や他の object との関係のしかたが異なるかを見ます
- 既存の object の意味を曲げてデータを押し込む必要があるなら、独自に作るサインです
Record Type で代用できないか
- 同じ種類の record で、見せ方やプロセスが少数のグループで違うだけなら、Record Type で足りることが多いです
- データ構造が本当に異なる場合にだけ、新しい object を作りましょう
データモデリングをさらに学ぶには、Trailhead の Data Modeling モジュール(英語)がおすすめです。
例:機器、賃貸契約、代理店
仮想の例として、オフィス機器の販売会社が3つのものを管理したいケースを考えます。下の表は考え方の出発点であり、固定の答えではありません。結果は運用方法によって変わります。
| 管理したいもの | 検討したい既存の object | 独自に作るべきとき |
|---|---|---|
| 機器 | 販売カタログは Product、顧客が所有する機器は Asset | 機器に固有のライフサイクル、属性、保守スケジュールがあり、どちらにも合わないとき |
| 賃貸契約 | Contract に、契約種別の field と Record Type を追加 | 賃貸に複数の機器明細、支払スケジュール、複雑な更新があるとき |
| 代理店 | 代理店専用の Record Type を持つ Account | 代理店に、顧客とはまったく異なる構造、閲覧権限、プロセスが必要なとき |
CRM の土台がまだ整っていない場合は、先にSalesforce Sales Cloud setup guide in 10 minutes(英語)をご覧ください。Salesforce ソリューション全般はSonix の Salesforce ページ(ベトナム語)で紹介しています。
安易に object を作るリスク
object は短時間で作れますが、1つ増えるごとに後の作業も増えます。検討したい点は次のとおりです。
edition による上限。Custom Object の最大数は edition によって異なり、公開されている情報源によって数字も異なります。1つの数字に頼らず、ご利用の edition の公式ドキュメントで確認しましょう。
権限とレポート。object ごとにアクセス権、page layout、レポートの設定が必要です。データが多くの object に分かれると、集計レポートも複雑になります。
連携と保守。object が増えると、他システムとの連携で同期するものが増え、新しい担当者に説明するものも増えます。
後から戻しにくい。データやレポートが object に依存し始めると、統合や削除には作成時よりはるかに手間がかかります。
そのため、決める前に sandbox で数件のサンプル record を試し、各 object を作った理由を記録しておきましょう。
Salesforce Custom Object を作る前のチェックリスト
Object Manager を開く前に、次のリストを確認しましょう。
☐ 管理したいものと保存したいデータを明確にした
☐ Object Manager で近い既存の object を探した
☐ 不足分を field、page layout、validation rule で補えないか試した
☐ 新しい object の代わりに Record Type を検討した
☐ ご利用の edition の Custom Object 上限を確認した
☐ sandbox で数件のサンプル record を試した
☐ object を作る理由と責任者を記録した
管理したいのに、どこに置けばよいか分からないものは何ですか? コメントでお知らせください。Sonix チームが、どの object を使うべきかご提案します。
Salesforce CRM
ガイド
Best Practices
SME
Sonix との無料相談で、御社固有のデータを整理し、設定に入る前に最適なモデリング方法を選びましょう。
Sonix: Your success is our happiness.

コメントを残す