top of page

Data Source

Data Source is like Salesforce List View where you can filter data from an object and show/prefill the information or use the data source to show or hide a message. This is available only for Evm Advanced Messages.

​

Here is how the Data Source looks like when I want to show the message only for Account Record which has the Bank as Industry. 

DataSourceOnlyBankAccounts.png

As you can see above, we have selected the Account as a Object, so below the object we will show all the fields related to that Account.

​

On the filter section, we have Industry field which is filtering only Banks, but if we leave like this we will load all the banks instead of checking if our record is Bank or not.

In order to do that, I have to select the Account Id is equal to Record Id, which means that we will use the Record Id on the filter.

​

Here is how the message would looks like with the filter:

​

​

MessageBuilderFilterDataSourceHasRecords.png

Basically on this filter we are saying to Show the message only when the Data Source with the name "Only Bank Accounts" return records. Now this message is ready to be added in any page that we have a record id as Account.

​

If Record Id is not available there is no problem, we can use other ways to filter the data as well. Right now the data source fields filter has 3 options that can be used with an Id. We call those 3 options as EvoluteMessage System Context.

​

EvoluteMessage System Context are some variables that we are able to get from Salesforce. This is available only for Id and Reference Field Type.

 

Those variables are:

​

1. Record Id

We will fetch the record id available on that page and have it as variable for you criteria.

​

2. Logged In User Id

This is very useful for Digital Experience/Community, since we don't have the Record Id all the time and we still want to show message for a specific user. This variable gets the User Id from the Logged-In User.

​

3. Logged In User Contact Id

This is very useful for Digital Experience/Community as well, because we can retrieve the Contact Id that is associate with that logged-in user. So if records are associate with ContactId it is easier for us to filter those records using this System Context.

​

Here is how the variable looks like:

​

​

DataSourceOnlyOpenCasesWithUserContactIdAndOwnerAsLoggedInUserId.png

Here is an example when I needed to add a data source as a filter when a Case has an open opportunity.

Prefill/Populate data using Data Source

We can also use Data Source to display information from a related record into the message. 

​

Here is a step by step on how to do this and a video in the end where we do this for Digital Experience, but the same pattern applies for Lightning pages.

​

Prefill Toast message using Data Source

​

Security and Permission

​

Data Source as the other features, always respect Salesforce Security, which means that every time we do a query into your object to filter the object using the criteria you set, we do a Field Level Security to check if the user has access to the Object and Fields. The query also respect the record access, by that we mean that if the user A doesn't have access to see records from user B, we won't show any records. This should be configured in your Salesforce by Sharing Settings or by other configuration that salesforce provides like View All or Rules.

​

To access our object the end-user would need only the Evm Show Permission Set, which has access to our Object and Fields, but that doesn't give access to the records, which means if your user cannot see the user builder records, the data source won't work. You need to add a sharing settings for evm objects or you need to config using other ways that Salesforce allows you to share records.

​

​

​

​

​

©2025 by EvoluteMessage

bottom of page