Its always a best practice to build functionality using configuration rather than customization. Configuration can be done using Workflows, Process Builder, Flows. Have you ever wonder what can be done by workflows and process builder, which one should be used and why? Here in this post I tried to cover all possible capabilities by Workflows and Process builder. If anything missed, you are always welcome to mention under comment section.
- Update Record : Update a field of same record or the parent record if having Master Detail relationship between Parent and Child objects.
- Send an Email : Sending email alert to specified mail address or selected users.
- Create Task : Create task record and assign to specified user.
- Outbound Message : Send SOAP messages over HTTP(S) to a designated endpoint.
Process Builder Capabilities:
Except outbound messages, all other capabilities that workflow supports, are also supported by process builders along with other useful capabilities are added as follows:
- Create Record : Create record of any object using the reference field values of current record.
- Launch Quick Action : Launch quick action either is standard of custom lightning component action.
- Update Record : You can either update parent record or all child records of current record, no matter if its lookup or master detail relationship.
- Post to Chatter : Post automatically chatter on behalf of you.
- Launch a flow : Launch a visual flow by passing field values.
- Apex Invocation : Invoke logic written in apex such as callout to external system. Apex method must have annotation as @InvocableMethod.
- Processes : Invoke another process builder flow through current flow.
- Send Custom Notifications : Send push notifications to your devices.
- Submit For Approval : Automatically submit for approval once the criteria of flow is matched.
- Quip : This is new addition to process builder. With this, one can easily include Quip documents and chat rooms in automated Salesforce processes.
- Email Alerts : Send email notification, similar to workflows.
|Version Controlling||Workflows do not support version controlling, you need to modify the existing workflow whenever there are new changes.||Process builder flows support version controlling. Once activated, flow needs to be cloned to add/remove the logic. This allows maintaining all versions modified till now.|
|Validation Rules||Validation rules are not fired when a field is updated.||Validation rules are fired if the field updates are happening.|
|Outbound Messages||Outbound messages are supported.||Outbound messages are not supported.|
|Multiple Criteria||Supports only one criteria.||Supports multiple criteria using user friendly IF-ELSE blocks.|
According to Salesforce, they will no longer enhancing Workflow, but support will be still ongoing. But all new functionality for the workflow use case will come through Process Builder. So from now, its good to start with process builder instead of workflows.