Business Requirement
You are salesforce Admin working in Acute Care company, receives patient referral from different hospitals, Intake user need to assign each patient to some facilities that has been configured under hospital Account. And if patient is already referred one facility then It should filter.
Here is salesforce object references and Data Model
Lead - Stores Patient Information
Account - Hospital Account
Facility - Facility Information
Hospital Facility Mapping - Junction object between Account and Hospital Facility Mapping.
Opportunity - Created under Lead stores how many facility lead has been referred, so It is junction between Lead and Facility.
Solution without using Apex and LWC
- Create a Quick Action Named Assign Facility on Lead, which calls a screen flow.
a. a. First Get Opportunity Record Type- It is a get
record element to get recordtypeId of Opportunity
b. b. Get Hospital Account Id from Lead – It is a get
record element to query referring hospital Account which is look up field from
Lead to Account. Since flow going to be launched from Lead record, recordId
variable will have Lead Id.
C. Get Hospital Mapping Records: It is a get record element to get all child records(facility configured) under particular hospital Account. Used referring hospital Account Id from previous step in query filter
d. d. Create Facility Opportunities – Screen component
containing data table where Source Collections configured all records retrieved
from previous step c.
e. e. Loop through Hospital Mappings Records
f. f. Assign Opportunity Fields – Assignment element
under loop to add all required field mapping for opportunity
g. g. Store Opportunity to a List – Assignment element
under loop to add single opportunity variable to a list.
h. h.Get Opportunities Record For Lead – Get record element
to get opportunities created under same lead.
i. i. Decision element to check If Lead has any
opportunity, If there is not any opportunity then Create record element to
create all opportunities. Refer list variables used in step g
j.
j. If there
are any opportunities present under lead, then run loop
k. k. Filter element run list variables step -g,
compare current item’s facility should not match listopportunities facility.
l. l. Now facilities will be filtered, there will be
another list variable created, Use filtered list variable to do null check.
m. m. Create element to created opportunities, refer
filtered list.
n. n. Error Screen to show any error occurred.