Learning Flow

Learning Flow

This series will help you understand Salesforce Flow (Lightning Flow or Visual Workflow) aka Flow concepts in depth. Salesforce Flow allows you to automate business processes by building applications, known as Flows, that collect, update, edit, and create Salesforce information, and then make those flows available to the right users or systems. Flows can execute logic, interact with the Salesforce database, call Apex classes, and guide users through screens for collecting and updating data. When you use Salesforce Flow, the apps you build can guide users through complex processes and recommend the next steps. Salesforce Flow lets users cut through the data and get the results and answers they need. Companies that are using Salesforce Flow report seeing dramatic improvements in user adoption, collaboration, and productivity!

Screen Flow

1) Want to be an Early Adopter of the New Flow Builder? Welcome Aboard!

2) Getting Started with Salesforce Flow – Part 1 (Understand, Create & Use Variables in Flow!)

3) Getting Started with Salesforce Flow – Part 2 (Do You Know How Screen Element Bestows Power on Flow Builder?!)

4) Getting Started with Salesforce Flow – Part 4 (Need to Redirect a User to a New Record?)

5) Getting Started with Salesforce Flow – Part 5 (Dynamic Flow Screen – What is Not to Love?)

6) Getting Started with Salesforce Flow – Part 7 (Launch a Flow using Lightning App)

7) Getting Started with Salesforce Flow – Part 8 (Send an HTML email from Flow)

8) Getting Started with Salesforce Flow – Part 9 (Use an Inline Visualforce Page to auto-launch a Flow)

9) Getting Started with Salesforce Flow – Part 10 (Launch a Flow from an Object-Specific Action)

10) Getting Started with Salesforce Flow – Part 11 (Count Number of records in a Record Collection Variable)

11) Getting Started with Salesforce Flow – Part 12 (What? Use Lookup Field into a Flow Screen Element?!!)

12) Getting Started with Salesforce Flow – Part 13 (Hide Date Picker and apply Font-family)

13) Getting Started with Salesforce Flow – Part 14 (Enhance Productivity by Uploading Files Directly from a Flow!)

14) Getting Started with Salesforce Flow – Part 15 (Learn About the New, Built-in, Debug Tool in the Flow Builder!)

15) Getting Started with  Salesforce Flow – Part 16 (Take Flow to the Next Level with Stages!)

16) Getting Started with Salesforce Flow – Part 20 (Populate Campaign Members from Opportunities based on Opportunity Stage Name)

17) Getting Started with Salesforce Flow – Part 28 (Have a File Upload Component and Other Details on a Single Screen? Really? Wow!)

18) Getting Started with Salesforce Flow – Part 41 (Create a Survey Using Flow? Why Not?!)

19) Getting Started with Salesforce Flow – Part 42 (Running a Flow in System Mode)

20) Getting Started with Salesforce Flow – Part 46 (Is Your Chatter Group Data Clean? No? Use Flow to Do So!)

21) Getting Started with Salesforce Flow – Part 47 (Mass Transfer Chatter Files)

22) Getting Started with Salesforce Flow – Part 48 (Add a Topic to Multiple Records) Flow Bulkification

23) Getting Started with Salesforce Flow – Part 51 (Add a Flow to a Lightning Page)

24) Getting Started with Salesforce Flow – Part 53 (Clone a User with their associated Public Group, Queue Membership, and Permission Sets)

25) Getting Started with Salesforce Flow – Part 55 (Add or Remove Followers to a Record with the Help of Salesforce Flow)

26) Getting Started with Salesforce Flow – Part 56 (Merge Chatter Topics with the Help of Salesforce Flow)

27) Getting Started with Salesforce Flow – Part 57 (Adding Validation to Flow Screen Components)

28) Getting Started with Salesforce Flow – Part 58 (Customize Previous, Next, Finish, and Pause Button Label for Screen Flow!)

29) Getting Started with Salesforce Flow – Part 59 (Clone a Chatter Group with Members)

30) Getting Started with Salesforce Flow – Part 60 (Allow Anyone to Add or Remove User into Public Group or Queue)

31) Getting Started with Salesforce Flow – Part 61 (Clone a Public Group or Queue with Members)

32) Getting Started with Salesforce Flow – Part 63 (Allow Users to Mass Transfer Records They Own) 

 

Send Email

1) Getting Started with Salesforce Flow – Part 27 (Want to Send an HTML Email from Salesforce Flow? Oh, yes! It can be done!) Spring21

 

Login Flow

1) Getting Started with Salesforce Flow – Part 3 (Restricting Login Flows to Execute Only Once!)

2) Getting Started with Salesforce Flow – Part 17 (Want to learn how to display a notice at login? Read on!)

3) Getting Started with Salesforce Flow – Part 18 (Want to Secure Your Org? Use Login Flow to configure Two Factor Authentication!)

4) Getting Started with Salesforce Flow – Part 19 (Unconventional application of Two-factor Authentication!)

 

Before vs After Save Flow Decision Guide


Record-Triggered Flow (Before-Save)

1) Getting Started with Salesforce Flow – Part 21 (Validation Rule using a before-save Flow? Yes!)

2) Getting Started with Salesforce Flow – Part 23 (Want the Case Owner to be the Same as Asset Owner? Here is how you can!)

3) Getting Started with Salesforce Flow – Part 29 (Auto Select Automatically follow records that I create Checkbox)

4) Getting Started with Salesforce Flow – Part 43 (Dynamic Approval Routing in Salesforce)


Record-Triggered Flow (After-Save)

1) Getting Started with Salesforce Flow – Part 44 (Auto Convert Marketing Qualified Leads)

2) Getting Started with Salesforce Flow – Part 22 (Auto Sync Accepted Quote with Opportunity)

3) Getting Started with Salesforce Flow – Part 24 (Automatically Assign Permission Sets to New User)

4) Getting Started with Salesforce Flow – Part 26 (Automatically Add a Record to Chatter Group)

5) Getting Started with Salesforce Flow – Part 31 (Auto Submit Record into Approval Process with Flow)

6) Getting Started with Salesforce Flow – Part 34 (Post Opportunity Details to a Chatter Group)

7) Getting Started with Salesforce Flow – Part 37 (Auto Remove Followers From Closed Opportunity)

8) Getting Started with Salesforce Flow – Part 39 (Out of Office Notification For Chatter Post)

9) Getting Started with Salesforce Flow – Part 52 (Salesforce Flow Game Changer For Salesforce Admins and Developers)

10) Getting Started with Salesforce Flow – Part 54 (Auto-follow a Chatter Question After Reply)

11) Getting Started with Salesforce Flow – Part 64 (Upskill on Flow – Learn How to Use DOESN’T CONTAINS Operator – and Show-Off!)

12) Getting Started with Salesforce Flow – Part 65 (Auto Follow Record Based on Criteria)

13) Getting Started with Salesforce Flow – Part 66 (Auto Unfollow Record Based on Criteria)

 

Record-Triggered Flow – Prior Value

1) Getting Started with Salesforce Flow – Part 33 (Prior Value of a Record in Record-Triggered Flows) Spring21

 

Record-Triggered Flow – Scheduled Paths

1) Getting Started with Salesforce Flow – Part 32 (Preschedule Chatter Posts) Spring21

2) Getting Started with Salesforce Flow – Part 36 (Automatically Add New Users to a Chatter Group) Spring21

3) Getting Started with Salesforce Flow – Part 40 (Email-to-Lead with the Help of Salesforce Flow) Spring21

4) Getting Started with Salesforce Flow – Part 50 (Welcome New Users by Default – Auto Follow them in Chatter!) Spring21


Schedule-Triggered Flow

1) Getting Started with Salesforce Flow – Part 6 (A Christmas Present – Schedule an Autolaunch Flow!)

2) Getting Started with Salesforce Flow – Part 25 (Email Notification on Password Expiration)

3) Getting Started with Salesforce Flow – Part 30 (Reminder Email to Upload Chatter Profile Photo)

4) Getting Started with Salesforce Flow – Part 38 (Reminder For Chatter Group Pending Membership Requests)

5) Getting Started with Salesforce Flow – Part 45 (Click and Join a Chatter Group)

6) Getting Started with Salesforce Flow – Part 49 (Don’t Let Pending Approval Requests Linger – Reassign!)

7) Getting Started with Salesforce Flow – Part 62 (Auto Assign or Remove Permission Set to Multiple Users)

General Topics

1) Getting Started with Salesforce Flow – Part 35 (When to Use Before-Save vs After-Save Record-Triggered Flows) Decision Guide 

3) Getting Started with Process Builder – Part 44 (Deploy Flow(s) or Process(es) Using Change Sets)

4) Getting Started with Process Builder – Part 45 (Distribute Flow(s) or Process(es) Using Packages)

5) Getting Started with Process Builder – Part 46 (Deploy Flow(s) or Process(es) Using the Force.com IDE)

6) Getting Started with Process Builder – Part 68 (Deploy Flow(s) or Process(es) Using MavensMate) 


Autolaunched Flow (No Trigger)

1) Getting Started with Process Builder – Part 5 (Keep Case Owner in Sync with Asset Owner )

2) Getting Started with Process Builder – Part 8 (Auto Sync Accepted Quote with Opportunity)

3) Getting Started with Process Builder – Part 10 (Auto forward Records to a Connection)

4) Getting Started with Process Builder – Part 12 (Implement Gamification to Your Salesforce)

5) Getting Started with Process Builder – Part 16 (Creating Custom Record Sharing Logic)

6) Getting Started with Process Builder – Part 17 (Auto Delete System Generated Chatter Post)  

7) Getting Started with Process Builder – Part 19 (Automatically Add New User to Public Group or Queue)

8) Getting Started with Process Builder – Part 20 (Add Chatter Followers to Record)

9) Getting Started with Process Builder – Part 22 (Discover How to Auto Populate Delegated Approver Field on a New User Record!)

10) Getting Started with Process Builder – Part 26 (Email notification for Completed Tasks)

11) Getting Started with Process Builder – Part 27 (Email notification for Draft Emails in Case Feed)

12) Getting Started with Process Builder – Part 28 (Auto Freeze Users Account)

13) Getting Started with Process Builder – Part 29 (Auto Remove Followers from Questions with best replies)

14) Getting Started with Process Builder – Part 30 (Auto-generate renewal Opportunity with Line Items)

15) Getting Started with Process Builder – Part 34 (Auto delete posts generated from Quick Actions) 

16) Getting Started with Process Builder – Part 35 (Delete Chatter Messages)

17) Getting Started with Process Builder – Part 36 (Delete Chatter Conversation)

18) Getting Started with Process Builder – Part 37 (Auto-add Opportunity Team Member to Opportunity follower)

19) Getting Started with Process Builder – Part 39 (Auto-assign a topic to a record)

20) Getting Started with Process Builder – Part 41 (Email notification on TopicAssignment)

21) Getting Started with Process Builder – Part 42 (Auto remove a record from Chatter Groups)

22) Getting Started with Process Builder – Part 43 (Auto Assign package license to New user)

23) Getting Started with Process Builder – Part 48 (Conditionally make a field read-only or editable)

24) Getting Started with Process Builder – Part 51 (Auto Invite Customers to Chatter)

25) Getting Started with Process Builder – Part 55 (Post to Chatter Feed of Related Record)

26) Getting Started with Process Builder – Part 56 (Auto Create a Public Group for new Account)

27) Getting Started with Process Builder – Part 57 (Automatically add Partner user to Public Group)

 

Advanced Flows (Old Visual Workflow)

  1. Add Record to Multiple Chatter Groups – Parsing Multi-Select Picklist fields (Flow)
  2. Parsing Dynamic choice Multi-Select Picklist fields (Flow) – Reusable component
Have feedback, suggestions for posts, or need more information about Salesforce online training offered by me? Say hello, and leave a message!

70 thoughts on “Learning Flow

  1. Hi,

    I have to create wizard using multiple lightning components and used LC inside visual flow, so we will maintain the data across multiple LC via flow.

  2. Hi Rakesh,

    Sharing accounts with community users is not easy when it comes to parent/child relationships. We tie the contact to the correct parent accounts they should have access to however this does not open up access to children accounts automatically. One solution is to add the relationship to every account however when there are thousands that becomes a very manual process.

    Would it be possible via a flow that when a relationship with an account is added to a contact on the accountcontactrelation object the same relationship is also created on all children accounts as well so it is automatic vs. manual?

    Thanks!

  3. Fantastic site! I’m looking for the most efficient way for a user to take or change ownership of a record. We have criteria that must be met before a sales rep can take over a house account. Currently this is done manually but since the criteria lives in Salesforce it should be doable but I’m having trouble getting the process straight in my head. Any suggestions?

  4. i am trying to create a Product request through when the quantity on hand goes less than 0, can you please help to get this through flow

  5. Hello,
    working on a screen flow, where i want to create a time entry record via a quick action from the work order line item. When the time entry record is created, it should automatically include the related work order line item and work order which are both parent to the the time entry record in look up relation ship.

    My current solution automatically creates a time sheet entry related to the the correct time sheet but that is not enough…

    Help would be much appreciated!! Thanks!

  6. Hi All,

    We have custom object called Activity ….Standard Event object only support Mutli select lookup fields for Invitees (Contacts)….Basically whenever Standard Event creates with A1, A2 and A3 as Invitees, we should create 4 records as shown below under the Custom object Activity as well as updation of standard events and these invitees are the Internal Contact users associate to one Account and we have user lookup field on contact to populate the Internal user on their Internal contact information

    1st record – User who creates the Event should be assigned to and Related to
    2nd record – A1 is in Assigned to and on the Invitee
    3rd record – A2 is in Assigned to and on the Invitee
    4th record – A3 is in Assigned to and on the Invitee

    Requirement is to show the Meeting Invitation on the Salesforce calendar for the Internal contacts also in addition to the Meeting creator under the custom object Activity in Salesforce Calendar…..Any help would be appreciated

    Thanks,
    Vinoth

  7. Hi all,

    Does anyone have any working experience of automatically assigning a user to a Territory, Public Group and Queue upon creation of the user.

    Best
    Jake

  8. Hi Rakesh,
    My requirement is now simplified.
    Now whenever case is opened for account for particular region ( say WEST-WE), only inside rep ( it’s a rep) should get email alert for the concerned case of his account (not for the account for which he is not rep.)

    How to map it in flow?

  9. Hi Rakesh,
    Excellent posts on Visual workflow.

    I have one requirement where I have to send email notification to account territory team of specific region (example West-WE) whenever case is opened for particular account of that region. Here only related users of the territory team of the account should get the email.

    Can it be done through Visual workflow? If yes, how the design will be?

    Please let me know.

    1. Thanks for the kind feedback, Dilip! 🙂

      to implement the logic, you have to use Flow.

      –> First of all, through process pass the CaseID and AccountID to Flow
      –> Use Record Lookup element to get the Territory
      –> The use Fast Lookup element to get the members of that Territory
      –> The Use Loop and Record Lookup to find out email address of Territory members
      –> Then use Static action ‘Email Alert.’ to send out email notification

      1. Hi Rakesh,
        Thanks for the kind reply.
        I am bit confused, while implementing the flow as given by you.
        Appreciate if you Could please elaborate it with the help of screenshots.

        Alternately, can it be done through process builder?

  10. Hey Rakesh..,

    Brilliant posts/blog and explanation about VFlows…Thanks.

    I have a use case where we need to:
    1. Verify if the opportunity has associated opptycontact role while it is getting closed won.
    2. If there are zero contacts associated then we need to bring up a screen for the rep to input or look up the contacts?

    Is this possible using VFlow ?

    I know that we cannot invoke screen from auto launched flow.

    Let me know.
    Thanks in advance.
    Cheers

      1. Thanks Rakesh for the reply.

        I have managed to get the Vflow called via the button (thru a VF page), but wondering how can it make is possible on a record values ? like calling this page just before the opportunity is marked closed?

        Looking for some insight…

  11. Hi Rakesh – thank you for the detailed information on PB and Flows – I reference your site often!

    Question around Flow capabilities. I’m wanting to limit the values I find and assign to be unique.

    So if I use fast lookup to find owner IDs of records, and the same user is the owner of multiple records, when I go to assign these values and update a text field, how can I “de-dupe” my result set so that JohnDoeUserName is only listed once?

  12. Hi, I’m hoping you can help me with a flow i’m trying to setup to count sold products. For each product we sell, we have a set inventory. The inventory is stored in the Product object. What I am trying to get my flow to do is whenever an opportunity is marked as Closed Won, to go through each line item on the opportunity and update the Sold_c value on the Product object for the corresponding product by taking the current value plus 1.

    Using PB i’m able to count how many times a product is added, but since an opportunity stage update doesn’t trigger a change to the line item, i can’t get PB to count booked products. I’m at a loss at this point.

    Thanks in advance!

  13. Hi,

    I was wondering if this was possible in a visualflow.

    Object A has multiple checkboxes that may or may not be checked
    Object B has a lookup to Object A
    Create a specific number of tasks on Object B depending on how many checked boxes were on Object A.

    I tried doing this with a loop and collection, but it only creates one task.

    Any help is greatly appreciated

  14. Is it possible to implement this with a visualflow?

    Object A has multiple checkboxes that may or may not be checked
    Object B has a lookup to Object A
    Create a specific number of tasks on Object B depending on how many checked boxes were on Object A.

    I tried doing this with a loop and collection, but it only creates one task.

    Any help is greatly appreciated

      1. Sure, so my use case i need to auto assign tickets to Support Engineers basis overlapping skill sets. So far i have:

        Created a custom object: Dispatcher
        Have following fields:
        a. Skills (Multipicklist)
        b. Assigned Tickets (to auto increment when a ticket is assigned to a Engineer).
        c. Max Tickets (Maximum tickets that can be allocated to a Engineer).
        d. Load % (Assigned Tickets / Max Tickets).
        e. Active (Checkbox). This will auto enable till the time Max Tickets limit is not reached,

        The routing (ticket assignment) would be based on Work Load %.

        Thanks,
        Gunwinder

  15. Rakesh one more thing, FLOW is used for record create, update, fast lookup looping etc. Can you please provide some experiences with each. Im not as technical as you and have struggled to replicate some examples ive seen online and on youtube. Would be great if you could elaborate soobjects variables and collections how to loop through records and assign new values to those returned records in the loop etc.

    Thanks you for your hard work !!!

  16. Rakesh this is amazing, but could you kindly put posts on how do to cross object workflows and field updates via Flow.

    Most of us use Workflow but as you know it has limitations, when theres a master to detail relaitinship its amazing but on the other hand its limiting if not.

    I really want to be able to update records on the child (or from child to parent) or create records in a new object if a parent status=”test” etc.

    Are there any examples of these kind of situations where we mimic typical actions the process builder and workflow can do but in a flow.

    That woudld be great. Thanks you so much for all these examples, will spend my weekend going through them.

  17. Hi Rakesh,
    I’m a relative rookie Admin introduced to your fine blog by Mike Gill today. I’ve got a custom Invoice object which I’d like to create from an Opportunity so that the Invoice includes the OppLineItems, or just populates the Product Lookup fields I currently have on the object layout. Do you know if either is possible using Flow?
    James

      1. thanks for the quick reply. Do you have some tips or a guideline how to?
        Your guide for adding team member to auto follow an oppty record helped me a lot, thanks for that one!

  18. Just wondering, can a FLOW be created for PriceBookEntry? I want to notify Finance whenever the price is changed on a PriceBook for a Product, and I cant do this via workflow rules. I dont have access to any developers either, so I need a configurable solution….and was hoping FLOW could do this.

    1. You can’t achieve it, using Process Builder or Workflow rule.

      Quick Question: – How they are are going to update the Price? I mean to say using the Salesforce UI or data loader or API call

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.