Simple question, but conceptually I do not understand why Salesforce should want to enforces this policy.

We created a custom object, loaded some data to it and selected a user as owner for the records. Later on, the business requirement shifted and it became necessary to link this custom object to Account. We did so by adding a field of "Data Type" Master-Detail(Account).

When we did that, the OwnerId field now appears to have been deleted from the custom object (or at least we just can't see it any longer).

Basically, ownership for the detail records is now inherited from the master record.

What is the purpose behind this policy?

Is it possible to have detail records in the custom object owned by a different user than the one that owns the master record in Account?

In trying to research the why behind this philosophy I did find a few posts that observe the same thing happening, but nothing really so far on why it is happening. Here is one example.



The Detail object in a Master-Detail relationship always share the owner of the parent. If you want a relationship that allows the children to have a different parent, then use a Lookup relationship instead.

  • 3
    It's worth noting that standard master-detail relationships generally have detail owners, however, because they're not "real" master-detail relationships but simply lookups with cascading deletes (e.g. Contact->Account, Opportunity->Account). If cascade deletes are vital but ownership should operate like these standard relationships, a trigger is necessary. – sfdcfox Dec 20 '13 at 22:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.