function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Patrick McClellanPatrick McClellan 

Understanding automation tools

I'm working hard to understand the range of automation tools. Salesforce makes it really confusing with their lack of consistent naming, and with the inevitable tool updates/replacements while supporting the legacy versions. 

Yes, I have read "Which Automation Tool Do I Use?". It's helpful, but lacks the candid insights I'm hoping to get from your feedback. They tell you what's possible, like invoking an approval process from within a Process Builder process, but they don't explain WHY you might want to do it that way. There are other posts out there comparing various tools, but I'm not clear on the timeline of tool launches and updates, so reading a post from 2015 might have been accurate then, but now...?

Here's what I understand, with questions in italics. I welcome your insights and corrections.

Approval Processes: simple but capable process automation around approvals. An approval process allows specification of the approvers, and specific steps that will occur when approved or rejected -- typically including locking or unlocking the record for edits, and updating fields such as opportunity stage. Approval processes can be triggered through a button click or link, or through a criteria such as a field update to a particular value (such as stage = "submit for approval"). They can also be invoked from Process Builder Flows or Workflow Rules, though it's unclear to me why you'd want to do this instead of using the entry criteria. And if you intend to invoke the approval from a Flow or Workflow, what do you set for the entry criteria that wouldn't fire on its own?

User-added image


Workflow Rules: accessed in Setup as "Workflow Rules", and setup using a form interface very similar to the Approval Processes. From what I can understand, this tool continues to exist because there are lots of legacy workflow rules in use. However, for new rules, they seem to be pushing us toward using Process Builder, with its drag-n-drop visual interface and additional capabilities.  Right?

User-added image

Process Builder: (aka "Lightning Process Builder"), accessible in Setup as "Process Builder", and what you create are called "Processes". Seems to be the automation tool of choice when you don't need user input, but you want things to happen automatically behind the scenes. Replaces Workflow Rules.

This is a very capable tool, able to evaluate multiple criteria and perform multiple actions in specified sequence. You can collect a whole series of criteria/actions within a single process, or you can call invoke a separate process from the one you're creating. I'm not clear why you'd want to gang them all together, other than to control the sequence of the processes. Otherwise, discrete component processes seems easier to create, test, and debug. Any insights here?

User-added image

Visual Workflows, accessible in Setup as "Flows". <rant> If they're replacing Workflow Rules with Process Builder Processes, it's damn annoying that they call THIS tool Visual Workflows and the outputs are "Flows". </rant>

This is the most capable of the automation tools, specifically useful for user interaction. These flows aren't tied to a specific Object, so they can CRED on any object. They are typically triggered by user interaction. Although the record lookup, loops, use of variables, text formatting, etc., are cool features, I'm frustrated by lack of comprehensive training on it. For example, I want to create a dynamic screen interface (number of input fields corresponds to a lookup value) -- can't find any documentation, but it seems like an common need.

User-added image

OK, thanks for making it this far in the post. I welcome your insights.



 
Best Answer chosen by Patrick McClellan
Patrick McClellanPatrick McClellan
I'll mention that the Platform App Builder certification test asks a lot of questions about which tool to use for what, which has prompted this thread. If you have any quick reference rules of thumb, please share. I'll start that list here, please add to it.
  1. Needs user interaction: Visual Workflows -- the only tool that allows user interaction.
  2. Typical record approval: Approval Processes -- use the simplest tool if it meets the need.