Salesforce Flow is by far the most potent tool for Salesforce admins. It is an automation tool that empowers users to create business processes and solutions using clicks.
A significant chunk of Salesforce is automation, be it record creation, submission, custom linking, or any other out-of-the-box configuration. Salesforce Flow can handle them all.
From the basic record creation, updating, deletion, and posting to chatter, Flow can work with much more complex business processes and configurations.
Some everyday use cases of Flow are – mass updates of records, assignments, record stage conversions, etc. Moreover, every new Salesforce release adds more capabilities Flow.
This article will explain Salesforce Flow, its components, use cases, and much more. Are you ready to go against the grain but still go with the flow with Salesforce? Great! Let’s hop right in.
Salesforce Flow is an automation tool that takes data input and performs designated tasks.
Flow automates complex business tasks and is super easy to maintain. Salesforce users can build Flow on one or more objects to meet specific business requirements.
Flow also allows you to integrate external tools, such as Salesforce and Gmail or Salesforce and Slack. When data is updated in any of these tools, it can then be automatically updated in all the other connected tools with the help of Flow. This connection is made without having to write code at all.
Salesforce Flow can also automate tasks using a pre-built Flow customized based on user needs.
Flow Builder is an interface from which you can create or manage new ones. To access it, follow the steps below:
The Flow elements are divided into three categories:
This category hosts Flow elements that gather information from the user, launch one or more sub-flows, and perform external actions. These elements consist of:
This category hosts all the logical operations and assignments you can perform on the input or selected records. Logic consists of:
This Flow element handles all the operations related to Salesforce records. Data offers five sub-elements:
You now know what Salesforce Flow is. But when do you use it? Under what requirements and scenarios can you trigger Flow? What are the different Flow types?
Flow can automate a whole sequence of manual processes. For example:
Even though Salesforce Flow can perform a whole bunch of operations and automations, it is not advised to use Flow for every possible requirement.
When there is a need to implement complex logic that may require heavy debug sessions, it is better to use Apex code. Debugging in a single Flow can prove to be a pain.
Salesforce comes with two main Flow types – a Screen Flow and an Auto-launched Flow. The second type is further divided into four more types. Hence, collectively, we have five Flow types in Salesforce:
Screen Flow requirements are used whenever we need inputs from the user. With a screen sample Flow implementation, you can create a screen (a custom UI) that can display messages, take input, and guide the user throughout the Flow process.
A Screen Flow is launched from the “Salesforce Utility Bar,” Apex custom action, Lightning Pages, quick actions, and more.
While creating a Screen Element Flow, click on the “Screen” element. You’ll see a bunch of components to add to the screen. For example:
You can create a complete Form to get all the database records, tables, display notes, and warnings.
Once you set up your screen and take inputs from the user, you can add elements to create contact records, single update records, perform external actions, etc.
A Screen Flow can prove beneficial in many aspects, such as reducing the requirement for multiple validation rules, providing a logical flow of targeting input from the user, and much more.
As the name suggests, a Schedule-Triggered Flow is scheduled and launched at the specified time for the given frequency. You can compare this Flow type with Apex batch jobs.
To monitor an already scheduled Flow, you can go to the “Scheduled Jobs” page in the “Setup.”
A Record-Triggered Flow is mainly incorporated when there is a need to make additional updates on the triggered record. When you create a new Flow and select a Record-Triggered Flow, you need to consider the object on which you want Flow.
You also need to take into account a Record-Triggered Flow, which can be triggered when:
Entry conditions are set to filter the records that enter Flow. This Flow type is called a ‘before-save’ or ‘after-save’ trigger.
There are a few points that you need to consider before using this Flow:
An important point is that a Record-Triggered Flow can change a record ten times faster than the conventional record change in Salesforce.
A Platform Rvent-Triggered Flow can help you manage all your Salesforce automations in one Flow. It is an Auto-Launched Flow that runs in the background. It is launched when a new platform-event message is received.
It can process up to 2000 event messages at a time. Although, the order of execution of these batches is unknown.
A platform event allows communication of applications internal or external to Salesforce. It is based on event-driven architecture and follows the publish and subscribe model.
A platform event mainly handles the queue of incoming and processed events.
A non-trigger Auto-Launched Flow is invoked only by Apex class, REST API, or a Process Builder. This Flow type covers abstraction, as you can perform complex problems triggered and solved in the background without letting the user know anything.
Flow, Process Builders, and Workflows are no-code building automation tools of Salesforce, while Apex is a programming language. However, they all share a similarity – they're used to automate Salesforce processes.
But there are critical patterns, behavioral patterns, and differences that are important to know.
Salesforce Flow and Apex are both potent tools. One goes down the no-code path, while the latter is based on coding. A piece of automation processes can be performed using these two.
But, if you are to compare the two, you can do much more with Apex. Let us understand the differences:
Both Flow and Process Builders are automation tools by Salesforce that depict the same idea. But where do these differ? To be short and concise, a Process Builder is an integrated part of Salesforce Flow.
Process Builders can handle slightly easier automations, like updating given or child records.
At the same time, Flow can handle much more complex automation tasks within or outside of Salesforce.
The key differences between these two are:
Consider Workflows as the left-out automation tool of Salesforce. As most of the work can be handled by Flow and Process Builders, Workflows are the last resort. Moreover, projects have started migrating Workflow Rules to Flow because Salesforce won’t be backing Workflows in the future.
Some key differences between the two include:
Although Flow is simple to work with, some complex requirements can make you commit mistakes. Here are some of the most common mistakes users make:
Most of the time, Salesforce Flow has distribution methods that work on decisions and conditions based on field values. Hence, not having a null value check can prove fatal to the process.
Salesforce organizations are often shared, and there are governor limits for different functionalities, especially for SOQL questions. Hence, keeping this in mind while working with a flow is vital.
Salesforce objects may have numerous and monotonous fields for complex business solutions. Therefore, setting up the fields carefully in a flow becomes necessary. However, one wrong field can disrupt the whole process.
The user who triggers Flow should have proper object-level and field-level access to the objects and Flow used in the Flow process.
This is a question that comes up with a lot of debate. However, the answer seems relatively straightforward. As we’ve discussed, with every new release, Salesforce announces new features and capabilities of Flow. It won’t be far off to say that Flow is the superlative of Process Builder and Workflow.
Also, Salesforce announced the retirement of Process Builders and Workflow Rules at Dreamforce 2021. Moreover, as Flow has almost all ‘Apex-like’ functionalities, it is arguably the most powerful automation tool by Salesforce.
Flow is a very powerful automation tool and proves to be the weapon that puts Salesforce administrators on a stage equal to developers.
Salesforce administrators who excel at working with an auto-launched Flow can create a whole business process without writing a single line of Apex code. Using just Flow, you can build custom business logic within a few hours.
If you are a Salesforce admin, it is beneficial to become one of the many Flow users as soon as possible. You can forge a Salesforce Flow to almost any weapon you like.