Given a scenario, identify the appropriate automation solution based on the capabilities of workflow/process.
Salesforce provides several tools to automate business processes. Workflows, Visual Workflows, and Process Builder provide similar features, and depending on the use case either of the tools can be used.
Workflows can be defined for most objects, to automate business processes. They consist of a criteria and actions. If the all criteria are met, the associated actions executed either immediately or scheduled.
|Created||Evaluates criteria only when a record is created. The workflow actions are executed when a new record meets the criteria.|
|Created and edited||Evaluates criteria when a record is created or updated. The workflow actions are executed when a new or updated record meets the criteria.|
|Created and edited to meet criteria||Evaluates criteria when a record is created or updated. The workflow actions are executed when a new record meets the criteria, or an updated record changed from not meeting the rule criteria to meeting the rule criteria.|
|Task||Assigns a task with subject, status, priority, and due date to a selected user.|
|Email Alert||Sends an email to a selected recipient using an email template.|
|Field Update||Changes the value of a selected field to a specific value or formula expression.|
|Outbound Message||Sends a message with user, session and record data to a designated integration endpoint.|
The Cloud Flow Designer is a graphical tool to define flows to automate business processes. Flows can either require user interaction or run in the background. They can execute complex and highly customizable actions such as reading or writing Salesforce data, displaying information to and collecting data from users, executing logic, or manipulating data.
|Element||Represents an action that the flow can execute.|
|Connector||Defines the available path a flow can take at run time.|
|Resource||Represents an input or database value that can be referenced throughout the flow.|
The Process Builder is a graphical workflow tool to automate business processes. Complex processes can be implemented end-to-end with point-and-click. They can either be invoked whenever an record changes, or by other process. Processes are defined by a set of criteria which determine if a group of actions is executed immediately or scheduled.
Except for outbound messages, Process Builder supports the same and additional actions as workflows. Since process builder is more powerful and flexible it should therefore be preferred over workflows whenever possible..
|Create a Record||Creates a record based on manually entered values or values from related records.|
|Email Alerts||Sends email alerts configured outside of Process Builder.|
|Update Records||Updates related records with manually entered values or values from related records.|
|Submit for Approval||Submits the record that started the process for approval.|
|Post to Chatter||Posts to the feed of a user, a Chatter group, or the record that started the process.|
|Quick Actions||Creates a record, updates a record, or logs a call by using an existing quick action.|
|Flows||Triggers a flow to perform complex logic without the need of writing code. However, Flows cannot be launched from the scheduled action group.|
|Processes||Invokes a process from another process to reuse logic.|
|Apex||Calls coded and customized Apex.|