The Unofficial Orchestrator Home Page
Orchestrator is a new product that orchestrates multiple flows to enable sophisticated business processes to be built without code.
Orchestrator will enter public beta in Winter ’22 and will be available to try on all orgs. Note that pricing and licensing has not yet been announced for Orchestrator.
I was eager to test the new flow orchestrator and found a use case to try. When a user submits a case to be provisioned as a partner user, we need to process two manager approvals and then provision the contact and the user under the partner account. I built an orchestration to complete the approvals and then provision the user
I used the tutorials provided here by Alex to build this. The overall design uses three flows that share data using input and output variables.
My starting conditions were based on case creation
The manager approval is routed to the approving manager lookup field from the case
The supervisor approval is routed to a specified username
My approval flow is very simple and includes just one screen. It outputs the approval, and some user data from the case, that will be consumed by the provisioning flow. I used some interesting formulas to parse the supplied Web Name from the case to a first name and a last name, and since only variables can be designated for output, I’m assigning my formulas as the default value of the output variable
Here is how the approval request screen looks to the approving manager
Next, I created an autolaunched flow that evaluates both approvals and outputs the special “isOrchestrationConditionMet” boolean value that tells the next step to start. This flow also updated the final approval status on the case record.
Then my provisioning flow will start and show as a work item to the case owner
Here is how the provisioning screen looks to the user. The first name, last name, email, and account name, are populated from the approval flow and case record data.
In this screen I’m using the Quick Lookup flow screen component to dynamically filter the user role list based on the selected partner account
And after the provisioning is complete, the flow shows the success scree
I used some special formulas to set the alias, email, nickname, and username for the new user.
To avoid a mixed DML error, I used the Commit Transaction action between creating the contact and creating the user.
When the orchestration completed, I was able to view all the completed stages, and steps in the flow orchestration instance history
Overall, building this orchestration was fun and easy. I can see how powerful this tool can be for handling complex processes. I would like to be able send an approval request to non Salesforce users, that can approve by replying to the email, or by going to the work item component publicly exposed on a community page.
I’m looking forward to seeing how this tool will evolve and to all the enhancements that will be made.
Antoine is the product manager in charge of the new Flow Orchestrator. Check it out!
Orchestrator will go beta in Winter ’22. As a reminder, this is the home page for Orchestrator.
Here are the notable improvements in Winter ’22 for Orchestrator. To see the Winter ’22 preview for Flow, go here.
Background Steps enable Autolaunched Flows to be integrated into orchestrations
Background Steps are simple steps that don’t involve assignees. These steps essentially represent a single Autolaunched flow.
Orchestrations can loop back to repeat earlier stages
This functionality leverages the new ‘Go To’ connectors in Auto-Layout Mode
Orchestrations can be packaged
When you add an Orchestration Flow to a package, it will spider in the rest of the Orchestration’s metadata. It also properly adjusts for assignees, which were breaking cross-org packages.
Orchestrations support Manual Variables, Input Variables and Output Variables
You can now define manual variables in an Orchestration flow, just as in other flows, and configure them to be exposed to receive inputs or provide outputs.
Orchestrator Instance Records Available in Flow Builder
Orchestrator in Winter ’22 is lacking in tools to show the status of running orchestrations, but that temporary gap is already getting filled by the community, which can leverage the ability to query for all three of the core Orchestrator instance objects: Orchestration Instances, Orchestration Stage Instances, and Orchestration Step Instances