Newer Version Available
Salesforce Connect 外部オブジェクトに関する Apex の考慮事項
Apex コードは、Salesforce Connect アダプタ経由で外部オブジェクトデータにアクセスできますが、いくつかの要件と制限が適用されます。
- 以下の機能は、外部オブジェクトでは使用できません。
- Apex による共有管理
- Apex トリガ (ただし、OData 4.0 接続からの外部変更データキャプチャイベントに対するトリガは作成できます)。
- 開発者が Apex を使用して外部オブジェクトレコードを操作する場合、非同期のタイミングと有効なバックグラウンドキューにより、保存時の競合の可能性が最小限に抑えられます。一連の特殊な Apex メソッドとキーワードにより、書き込み実行で生じる可能性があるタイミングの問題が処理されます。Apex では、削除操作や更新/挿入操作の結果も取得できます。BackgroundOperation オブジェクトを使用して、API または SOQL を介して書き込み操作のジョブの進行状況を監視します。
- ポータルユーザがコミュニティメンバーの場合でも、Database.insertAsync() メソッドをポータルユーザのコンテキストで実行することはできません。Apex で外部オブジェクトレコードを追加するには、Database.insertImmediate() メソッドを使用します。
-
Database.QueryLocator で Apex 一括処理を使用して、Salesforce Connect の OData アダプタ経由で外部オブジェクトにアクセスする場合、次の点に注意してください。