Lightning Process Builder – Point & Click Process Definition in the Cloud
The Spring ’15 release of Salesforce has opened up a whole new philosophy of developing in the cloud – the lightning framework. One key element of the lightning framework is the Lightning Process Builder.
Before diving into Lightning Process Builder, it is good to understand where Salesforce is going with the entire “Lightning” idea. It is positioned as a component based framework that offers a new set of tools for Salesforce developers and business users to make building apps, integrating data, and automating business processes lightning fast. Lightning Process Builder contributes to that last part.
So what is Lightning Process Builder? If you ask me, I would say it is Workflow 2.0 – one that offers a much more powerful, useful, and intuitive process building experience. Many use cases for which you needed to author Apex code, can now be achieved through point-and-click ease. Functionally speaking, the process builder allows you to programmatically:
- Create a record
- Update all related records
- Use a quick action to create a record, update a record, or log a call
- Launch a trigger-ready flow
- Send an email
- Post to Chatter
- Submit for approval
Prior to Spring ’15 you would have needed to resort to Apex code to programmatically achieve most of what is said above. This also means writing test classes to make that Apex code valid; and associated maintenance. Lightning Process Builder aims to remove all that.
Let us just take the plunge by trying to address a common use case – to update a record based on a change in an associated child record. For instance, to have a field on the Account object that shows the date of the latest Case activity.
Go to your Setup screen, and search for Process Builder. You would be directed to the path Create | Workflow & Approval | Process Builder. Open it up and you would be prompted to enter a name and API name for the process that you are going to build. Once done, the process builder UI opens up, and if you are in the Spring ’15 release, it would look something like this:
Almost every element on this UI is clickable. A process building activity starts by defining the object in context. In our case, it would be the Case object, since we would want this process to run whenever a case is created or updated.
The UI is self-explanatory, which means a business user can define the process flow and resulting actions without seeking the help of an apex programmer. One could use point-and-click to add a criteria to check whether a case record has been updated, and if yes copy value from the “Last Modified” field on the Case record to the “Last Case Update” field on the parent account record. Once done, the process would look something like this –
In essence, you are able to author processes lightning fast – without the need for code, test classes or code maintenance. Here are some other use cases that would have required code, but now is possible using the Lightning Process Builder:
- Change to Account Address must update addresses of all associated Contacts
- If an Email field in a contact record is changed, an approval process must be automatically initiated
- Assign ownership of Custom objects based on a criteria
Process Builder is available in the Developer Edition, and there is nothing stopping you from trying it out. Spend some time with it, and you would realize the plethora of use cases that it could address. You might even want to re-engineer some of your existing Salesforce implementations.
Process Builder vs other Process-offerings in Salesforce
Well, there are already features like the Workflow and Visual Flow that allows you to create processes. Why then Process Builder? Well. It is always good to understand when to use what. Workflows are ideal for the simple single-object processes, where every change that is meant to happen – occurs within the context of a single object. And there is no chain of events expected.
Visual Flows are ideal for the much more complex processes like building a Wizard, or iterating through a list of records and make outbound WS calls. Process Builder stands in between, and is best for automating simple if-then scenarios – where you would want to do something if a condition is met. When compared to a workflow, the arena of things that it lets you do is much more.
As is with most newly released features, there are a few limitations with the Spring 15 release of Process Builder.
- Firstly, the process builder is not available for Group and Contact Manager Edition customers. So you would need to move to an Enterprise Edition, if you want to leverage Process Builder capabilities.
- Another consideration to make before using Process Builder is that it cannot send outbound messages. So, it might not be an ideal choice to handle multi-system scenarios.
- Probably the biggest limitation at the moment is the inability to set filters to define the set of child records that should be updated.
- Also, as of now Process Builder is supported only in English.
But most of these are already on Salesforce product roadmap, and should get addressed in the coming releases.
On the whole, the Process Builder is a fresh take on enterprise process flow definition – and equips the non-developer user to contribute more to a Salesforce implementation cycle.
What Certification are you studying for now?
Focus on Force currently provides practice exams and study guides for ten certifications