Salesforce Process Automation: the difference between Process Builder, Workflow, and Visual Workflow

Always use Process Builder wherever possible.

photo-1485827404703-89b55fcc595e

Salesforce has so many Process Automation options, it can be difficult to decide which one to use. Granted, there is lots of overlap, but there are a few fundamental differences once you get to know them. The best approach to deciding which Process Automation option to use is to ask yourself the following questions:

Do I need to interact with the user?

If the process you are automating relies on interacting with the user (e.g. to obtain input), you will have to use Visual Workflow to do this, as it is the only Process Automation option in Salesforce that supports screens. Easy decision.

Do I need to create a record (other than a Task)?

All three tools can create Tasks, but if you want to create other types of records (including Chatter posts), you will need to use Process Builder, or alternatively Visual Workflow if your process is more complex.

Do I need to delete a record?

Only Visual Workflow will allow you to delete records. No decision to be made here.

Do I need to send an outbound message to an external service?

If you are communicating with an external service (such as an API) and need to send an outbound message from Salesforce in XML format, you will have to use Workflow. None of the other Process Automation tools offer this facility without the need to write supporting Apex code.

Do I need to invoke some Apex code?

If the answer to this question is yes, you will need to use Process Builder or if your process is more complex, Visual Workflow.

The preceding five questions should be enough to put you on the right track in terms of which automation tool you will probably need. However, there are a few finer points that may sway your final decision. See this Trailhead article for some in-depth detail to help you choose.

What you can do with Process Builder

Process Builder should always be your first port of call when looking to automate processes in Salesforce. With Process Builder, you can:

  • Create records
  • Update records related to the one that triggered the process
  • Post to Chatter
  • Send Email Alerts
  • Invoke other Processes
  • Launch Flows
  • Submit records to an Approval Process
  • Call Apex code
  • Use a Quick Action

What you can do with Visual Workflow

Basically, anything you can do with Process Builder you can also do with Visual Workflow – all except invoke Processes. However, with Visual Workflow you can also:

  • Update any record (not just ones related to the record that triggered the Flow)
  • Delete records
  • Send emails (not just email alerts)

What you can do with Workflow

Workflow is a little more limited. With Workflow Actions you can:

  • Create Tasks
  • Update the record that triggered the Workflow Rule (or its parent record)
  • Launch Flows (this is coming soon – a pilot is in progress)
  • Send Email Alerts
  • Send outbound messages in XML format without using code

If you need any more information, Trailhead is your go-to place. There’s an excellent module on Process Automation that will teach you everything you need to know, in the usual fun Trailhead style. Go for it, Trailblazer!

Photo by Alex Knight on Unsplash.

Advertisements

What do you think?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s