These guides are intended for advanced Salesforce admins. For Salesforce education, contact Salesforce directly or use trailheads for specific knowledge.
This is for when a voicemail is being sent to an email that is configured for email-to-case in Salesforce.
Create a Call Reporting Lookup Field on the Case Object
Click the ‘Setup’ cog and then ‘Setup’.
Go to the ‘Object Manager’ and then find ‘Case’ by searching for it in the Quick Find.
Click ‘Fields & Relationship’ and then ‘New’.
Data Type: Lookup Relationship
Next
Related To: Call Reporting
Next
Field label: Call Reporting
Field Name: Call_Reporting [auto-populates]
Description:
Help Text:
Leave the rest of the fields as default
Next
Set field-level security as desired
Next
Add to the page layouts you want
Next
Add the related lists to page layouts as desired.
Save
Create a SF flow to update the records
Click the ‘Setup’ cog and then ‘Setup’.
Search for ‘Flows’ in the ‘Quick Find’ and then click ‘New Flow’.
Select ‘Start From Scratch’ and then ‘Next’.
Select Type: “Record-Triggered Flow’ and then ‘Create’.
Click on the ‘Start’ component
Select Object: Call Reporting
Configure Trigger (Trigger the Flow When): A record is created
Set Entry Conditions
Condition Requirements: All Conditions Are Met (AND)
Field: nbavs__From_Call_Type__c
Operator: Equals
Value: Voicemail Record
Optimize the Flow for: Actions and Related Records.
Click on the plus sign and then add a ‘Get Records’.
Label: Find Voicemail Case
API Name: Find_Voicemail_Case [auto-populates]
Get Records of This Object:
Object: Case
Filter Case Records:
Condition: All Conditions Are Met (AND)
Field: Subject
Operator: Contains
Value: {!$Record.nbavs__From_Number__c}
AND
Field: Subject
Operator: Contains
Value: Voicemail from
ANDField: Call_Reporting__c (this is the new field created above)
Operator: Is Null
Value: {!$GlobalConstant.True} [True]
Sort Case Records:
Sort Order: Descending
Sort By: CreatedDate
How Many Records to Store: Only the first record
How to Store Record Data: Choose fields and let Salesforce do the rest
Select Case Fields to Store in Variable:
Field: Id
Field: Call_Reporting__c
Click on the ‘Get Records’ just created and click ‘Add Fault Path’.
Click on the plus sign and add an ‘Update Records’.
Label: Update CR with Case
API Name: Update_CR_with_Case [auto-populates]
How to Find Records to Update and Set Their Values: Use the call reporting record that triggered the flow
Set Filter Conditions: None - Always Update Record
Set Field Values for the Call Reporting Record:
Field: nbavs__Case__c
Value: {!Find_Voicemail_Case.Id}. [Id of case from previous component]
Click on the plus sign and add another ‘Update Records’.
Label: Update Case with CR
Update_Case_with_CR [auto-populates]
How to Find Records to Update and Set Their Values: Specify conditions to identify records, and set fields individually
Update Records of This Object Type
Object: Case
Filter Case Records:
Condition Requirements to Update Records: All Conditions Are Met (AND)
Field: Id
Operator: Equals
Value: {!Find_Voicemail_Case.Id}
Set Field Values for the Case Records:
Field: Call_Reporting__c
Value: {!$Record.Id}
Save, Name the flow & Activate!