まとめ
以下参照の公式ドキュメントに記載されている「カスタムオブジェクトにすでにデータが含まれる場合、主従関係を作成することはできません。ただし、すべてのレコードの参照関係に値が含まれている場合には、リレーションを参照関係として作成してから、それを主従関係に変換できます。」という原則は、Salesforceでの主従関係の基本的な要件と直接関係しています。
参考:オブジェクトリレーションの考慮事項
主従関係では、従レコードは主レコードに強く依存しています。具体的には、以下の特性があります。
- 従レコードは主レコードが削除されると自動的に削除されます。
- 従レコードは主レコードの共有ルールに従います。
- 従レコードは主レコードに関連する積み上げ集計などをサポートします。
これらの特性を適切に機能させるためには、各従レコードが主レコードへの明確な参照を持っている必要があります。もし従レコードの中に主レコードへの参照が空白のものがあれば、そのレコードは上記の依存関係を満たさないため、主従関係を構築することはできません。
したがって、「カスタムオブジェクトにすでにデータが含まれる場合、主従関係を作成することはできません。ただし、すべてのレコードの参照関係に値が含まれている場合には、リレーションを参照関係として作成してから、それを主従関係に変換できます。」というのは、主従関係を構築するためには、従レコードが主レコードへの参照を持っていることが必須であることを意味しています。これにより、従レコードが主レコードとの間で適切に連動し、主従関係の特性を満たすことができるのです。
コメント