0% found this document useful (0 votes)
15 views

relationships in salesforce

Uploaded by

krish mf
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

relationships in salesforce

Uploaded by

krish mf
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Relationships

There 6 relationships in Salesforce

Data relationships between objects in Salesforce can be a tricky topic to get your
head around. You may be faced with a business scenario that requires creating a
custom object. Then, the next decision is which relationship types you should use to
extend your Salesforce data model.

This is a fundamental concept to learn, as it ensures that you pick the right
relationship type that ensures a scalable data model.

1. Lookup Relationships
The lookup is a loosely coupled relationship, allowing you to connect one object to
another in a one-to-many fashion.

In this example, you can see that an asset may be involved with a number of cases –
if the case is deleted, the asset will remain and vice versa.

For example, in a human resources system, a one-to-one lookup


relationship can be used to link an employee record with their
manager’s record. In this case, each employee would be
associated with exactly one manager,
2. Master-Detail Relationship
The master-detail relationship is a strongly coupled relationship – meaning if the
parent is deleted, so are the child records. This feature can be incredibly helpful;
however, it seems to scare people unnecessarily!

Master-detail also allows the parent record to control child record attributes, such as
sharing and visibility. The child record inherits whichever security setting you choose
for the parent record.

In this example, you have a list of rooms employees can book for meetings. If the
room is deleted, what use would the meetings be? None! However, when creating a
master-detail relationship, you can check a box to allow reparenting – you could be
kind and allow them to select a new room!

The sweet spot with master-detail relationships is that you can create roll-up
summary fields! Note that a single object can have a maximum of two master-detail
relationships.
One more example:

in the courier company model a delivery schedule is always linked


to a delivery location. If we remove a delivery location from our
list, then all the related delivery schedules should also be
eliminated. Such a dependency can be achieved through Master-
detail relationship between the sales force objects.

Lookup Fields:

 25 to 40 lookup fields are allowed per Object.


 The fields are not mandatory.
 If the parent is deleted the child is not affected.
 The Object has an owner field.
 The child has independent sharing & security.
 It does not allow rollup summary fields.

Master Detail Fields:

 2 master detail fields allowed per object.


 The fields are always mandatory.
 The Object does not have an owner field.
 If the parent is deleted the child records are also deleted.
 The child inherits all the security and sharing from parent.
 It allows roll-up summary fields.

What is Roll-Up Summary.

A roll-up summary determines the values of the related records, whereas in a


related list. We can create a roll-up summary to display values of the master
record based on field values in the detailed record, and the record must be
related to MDR.

Lookups vs. Master-Detail Relationships

Lookup relationship Master-detail relationship


Loosely coupled. Strongly coupled.
Roll-up summary field not available. Roll-up summary field is available.
Parent record is not required when creating a Parent record is required in order to save a child record.
child record.
Lookup fields are not required on the page layout Master-detail field is always required on the page layout of the detail
Lookup relationship Master-detail relationship
of the detail record but if you make them a record (because of the point above).
required field, it is advised!
Standard object record can be on the detail side Standard object record cannot be a child.
of a custom object in a lookup relationship.
By default record ownership of child records is The parent controls the record ownership of child records. The owner
not controlled by the parent. is not available on the detail record in master-detail relationship queu
sharing rules and manual sharing is not possible for detail records as
requires the owner field.
You can have a child record without a parent. You cannot have a child record without a parent.
You can have a maximum of 40 lookups on an You can have a maximum of two master details on an object.
object.
No cascade delete. Cascade delete.

3. Many-to-Many Relationships
Say you have a situation where it is required you have many of one record related to
many of another. Duplicating the lookup field a number of times on each object
is not the best practice and will get very messy. This is where we should
leverage Junction Objects.

In the image below, we see that a session can have multiple speakers – but
speakers can also present at multiple sessions. Adding the “Session Speaker”
Junction Object in between is a perfect place to handle this relationship!

4. Self Relationship
Let’s say you have a campaign that is a part of a bigger campaign. You can use a
lookup field from campaign to… campaign! But why? This would be a great situation
to show how multiple child campaigns relate to the main parent campaign (known as
a Campaign Hierarchy).

5. External Relationships
There are two more types of lookups for working with external objects that we should
cover briefly:

 Indirect lookup relationships: These allow a relationship to be formed between a Salesforce object and an external object.
If your Salesforce org was the family, then the objects would be related but not in the same family. A great example is
relating payment records to an account from an ERP system – the ERP system is external to Salesforce, but the records are
important. They relate via an external ID to match the payments to the account.
 External lookup relationships: These allow a relationship to be formed between two external objects. Your two friends from
outside your group are now in a relationship. Maybe that ERP system links the payment records to a bank account.

6. Hierarchical Relationships
The hierarchical relationship is a simple but commonly forgotten relationship in
Salesforce. This unique relationship can only be used on the user object, and is
designed to create a hierarchy of users. For example, it could be used to create a
lookup field for the user object, which can then be used to list the user’s manager.

You might also like