This post is manually triggered by the blog post of Pieter Veenstra: Microsoft Flow – Business process flows from a traditional Flow perspective.
Microsoft added Business Process Flows (BPF’s) to their Microsoft Flow platform.
BPF’s are managed in PowerApps since the integration between Dynamics 365 and PowerApps. With Spring 2018 update (v9.0.2) their data is stored in the Common Data Service for Apps (CDS for Apps), the new database for Dynamics 365 Customer Engagement (CE) and model-driven PowerApps.
CDS for Apps is the place to be to store the data of your business processes. Even the approval flows of Flow itself make use of the CDS for Apps.
BPF’s are more than a guide through a data entry process; you are able to navigate through the business process with a combination of data entry, checks, conditions and branching, and automation.
Dynamics 365 CE has its own workflow engine that can be triggered from the BPF:
And there is the so-called Action Step, that can be used to manually start an action/workflow. This is the native “Flow button” in Dynamics 365. Microsoft explicitly refers to this as a way to trigger workflows from your BPF, as newly part of Microsoft Flow.
You can add an Action Step to a stage of the BPF to execute an action with process arguments as possible input:
BPF’s in Dynamics 365 CE can span more than one entity and are indirectly related to those entities. Each BPF has its own base entity were the instance records are stored. Since there can be more than one BPF active on an “host” entity record, there’s no reliable way to get a trigger from the BPF via the host entity record. So using the Dynamics 365 connector triggers is not that easy.
You are able to start a flow on the selected record, but there’s no relationship with the BPF. That is the missing link that Microsoft has to resolve.
True, Microsoft is pushing us (CRM people) to use Flow as the preferred workflow engine but with CRM-only data there ain’t always added value to that. And they still have no alternative for the real-time workflow option in Dynamics 365 CE.
It’s possible to register a webhook with a step in synchronous execution mode in Dynamics 365 that can be used as trigger, but that can only work when all components are integrated more deeply in CDS for Apps.
See my previous blog post: Using Dynamics 365 Webhooks as the third way to trigger Flow.