Salesforceにおける外部オブジェクトとは
Salesforceの外部オブジェクトは、外部システムをSalesforce組織の外部データソース定義に関連づける機能で、外部データの検索と操作ができるようになります。API バージョン32.0以降でサポートされています。
外部システムのテーブルがSalesforceの外部オブジェクトに対応し、組織のユーザの全データとコンテンツが結合され、外部データソースの同期により、関連外部オブジェクトを自動作成可能です。また、外部オブジェクト名をカスタマイズして、任意のカスタム項目を作成できます。
Salesforceの外部オブジェクトの特長
外部オブジェクトには、大容量のデータをSalesforce組織内に保存せず、常に最新の状態で活用できるという特長があります。
外部データを結合する点ではカスタムオブジェクトに近いですが、外部オブジェクトではレコードデータはSalesforce内にコピーされず、組織外に保存されています。
外部オブジェクトはレコードデータにオンデマンドでアクセスするため、外部データは、リアルタイムで反映され、Salesforce上でデータを管理する必要がないため、データの同期に必要なストレージやリソースの省力化が可能です。
Salesforceの外部オブジェクトでできること

外部オブジェクトは、Salesforce ConnectとFiles Connectで使用可能です。
ここでは、Salesforce ConnectとFiles Connectによってできることを紹介します。
外部システムへのアクセス方法は、外部オブジェクトに関連づけられた外部データソースによって指定されます。
Salesforce Connectで外部システムのデータにアクセスする
外部システムを外部オブジェクトすることで、Salesforce Connectでは、Salesforceの外部に保存されているデータにアクセスできます。
外部システムへの接続には、組織間アダプタ、OData 2.0およびOData 4.0、Apexで作成されたカスタムアダプタを使用します。
Files Connectでサードパーティのコンテンツシステムにアクセスする
サードパーティのコンテンツシステムを、外部オブジェクトとすることができます。
Files Connectを使用して、Quip、Google ドライブ、SharePoint、Boxなどの外部システムにアクセスし、ファイルの共有、検索が可能です。
Salesforceにおける外部オブジェクトの参照関係
外部オブジェクトでは、標準参照関係を含む3つの参照関係がサポートされています。
標準参照関係では、18文字のSalesforceレコードIDにより、関連レコードを相互に関連づけます。標準参照関係の他に、外部参照関係と間接参照関係という特殊な参照関係が使用可能です。
外部参照関係と間接参照関係では、親オブジェクトの特定の項目の値と子オブジェクトのリレーション項目の値が比較されます。両者の値が一致した場合にレコードが相互に関連づけられます。
外部オブジェクトで参照関係を作成するには、子オブジェクトに3つの参照関係のいずれかのカスタム項目を作成し、外部オブジェクトを子とする場合は、既存のカスタム項目をいずれかに変更可能です。
外部オブジェクトの外部参照関係
外部参照関係は、親が外部オブジェクトの場合に使用するSalesforce Connectのデータ型です。
外部参照関係では、子の標準、カスタム、外部オブジェクトを親の外部オブジェクトにリンクさせます。親となる外部オブジェクトの [外部 ID] 標準項目の値が外部参照関係項目の値と照合され、指定した [外部列の名前] から、子の外部参照関係項目の値が取得されます。
許可された子オブジェクト:標準、カスタム、外部
許可された親オブジェクト:外部
レコードを照合する親項目:外部 ID 標準項目
外部オブジェクトの間接参照関係
間接参照関係は、SalesforceレコードIDが含まれない外部データに使用する、Salesforce Connectにおけるデータ型です。
間接参照関係では、相互に照合する親オブジェクト項目と子オブジェクト項目を指定して、子の外部オブジェクトを親の標準またはカスタムオブジェクトにリンクさせます。
相互に照合する親オブジェクト項目と子オブジェクト項目を指定して、外部オブジェクトの間接参照関係項目を作成します。
許可された子オブジェクト:外部
許可された親オブジェクト:標準、カスタム
レコードを照合する親項目:カスタム項目(External IDおよびUnique属性により選択)
Salesforce 外部オブジェクトのレポート
前述の通り、外部オブジェクトでは参照するデータがSalesforce組織外に保存されており、レポートを生成する場合は、外部からデータを取得する必要があります。
外部オブジェクトでレポートを生成する際、取得できるレコードデータは、20,000レコードまでという制限があります。そのため、外部オブジェクトデータを取得する際にコールアウト制限に達してしまい、レポートが生成されなくなる場合があるでしょう。
Salesforceの外部オブジェクトを活用してできること
ここでは、Salesforceにおける外部オブジェクトについてご紹介しました。
外部オブジェクトはSalesforceの外部に保存されたデータをリアルタイムに参照することで、リソースやストレージを効率よく使用できます。コーディングなしで使用できるという開発者側のメリットもあります。
外部オブジェクトを活用するため、その特徴や機能を理解しましょう。]]>