Pages

Wednesday 3 February 2016

Relationships in Salesforce

Relationships in Salesforce

Object Relationships in Salesforce
A relationship is a bi-directional association between two objects. Relationships allows us to create links between one object and another. The platform supports following relationship types
  • Master-Detail
  • Lookup
  • Many-to-Many
Master-Detail (1:n)
A parent-child relationship in which the master object controls certain behaviors of the detail object.
  • When a record of the master object is deleted, its related detail records are also deleted.
  • The Owner field on the detail object is not available and is automatically set to the owner of its associated master record. Custom objects on the detail side of a master-detail relationship cannot have sharing rules, manual sharing, or queues, as these require the Owner field.
  • The detail record inherits the sharing and security settings of its master record.
  • The master-detail relationship field is required on the page layout of the detail record.
  • By default, records can’t be reparented in master-detail relationships. Administrators can, however, allow child records in master-detail relationships on custom objects to be reparented to different parent records by selecting the Allow reparenting option in the master-detail relationship definition.
You can define master-detail relationships between custom objects or between a custom object and a standard object. However, the standard object cannot be on the detail side of a relationship with a custom object. In addition, you cannot create a master-detail relationship in which the User or Lead objects are the master.
Lookup Relationship (1:n)
This type of relationship links two objects together, but has no effect on deletion or security. Unlike master-detail fields, lookup fields are not automatically required. When you define a lookup relationship, data from one object can appear as a custom related list on page layouts for the other object. See the Salesforce online help for details.
  1. Child row not automatically deleted when a parent row is deleted
  2. No inherited sharing.
  3. 25 lookup relation relationships allowed per object.
  4. Lookup field on child not necessarily required. 
Many-to-Many
You can use master-detail relationships to model many-to-many relationships between any two objects. A many-to-many relationship allows each record of one object to be linked to multiple records from another object and vice versa.
To create a many-to-many relationship, simply create a custom junction object with two master-detail relationship fields, each linking to the objects you want to relate.

No comments:

Post a Comment