In order to be successfully adopted, CRM systems have to be simple to use. One way to achieve this is to map business processes into CRM. Over the past few years, one way of doing that was business process flows (BPFs).
BPFs are very useful for representing processes that could take days, weeks or even months to work through, such as a sales process or a customer service case.
But what about those ‘micro processes’ that we all do every day? The sort of processes that we do in one sitting, such as updating some details in CRM after a meeting. For those, there is a special type of BPF, known as Task Flows, which were previewed in Microsoft CRM 2016 and put in general release in Microsoft Dynamics 365.
This blog focuses on how to use task flows, rather than how to build them. There are many blogs showing how to build them, but not many focussing on the end result of that build. This blog seeks to rectify that.
Firstly, Task Flows are only available on the mobile client - either phone or tablet.
There are 3 which are available out of the box:
You can add more, or change these existing ones.
To trigger a Task Flow, you select the little icon box that shows on the bottom left of the screen on every form, view and dashboard in the application.
That is to say, you can access them from pretty much anywhere.
Let’s take a closer look at the ‘After Meeting’ Task Flow.
So, I select the icon and a window opens showing me Task Flows available so I choose the Task Flow I want. Each has an image associated with it. This is optional for custom task flows:
Once I’ve selected the ‘After Meeting’ I have to select which meeting to run the Task Flow for.
So I select a meeting and it presents me with the ‘Verify Meeting Details’ page.
The page shows the Task Flow name at the top, then the page name and below that 1 or more sections, each with a section name. For custom Task Flows, the system administrator or system customiser will decide the page and section names when designing and building the Task Flow.
Each section contains fields from either the record that the Task Flow is being run on, or a parent record. So, in the case of a Task Flow on an appointment, you could have some fields from the appointment record in CRM, and some from the contact, account, case, opportunity etc that the meeting was regarding. It’s very useful having fields from lots of different places on one screen to update. That way, the focus is on the process, not the data. The user doesn’t need to care about how the data is structured in the application, as the Task Flow surfaces the specific fields they need.
The user goes through each page in the Task Flow, until they get to last one, when they are presented with the ‘Done’ button as an option. When they select ‘Done’, the data added or changed in the fields in the flow is saved back to the CRM database.
It’s worth noting that the user can page back through the task flow if they think they’ve missed something.
If at any point during the flow you decide to abandon it, you have the option of discarding any changes made to data in the flow, or saving them.
Task Flows have many possible applications. A few that spring to mind are:
I’m sure there are many more uses for Task Flows that I haven’t thought of yet. Essentially, any task that a mobile user needs to do quickly and often may be best done via a Task Flow.
Business Rules are configurable rules which a system administrator or customiser can set in Dynamics 365 which will do specific things under specific circumstances. For example, on a Task Flow for updating contact details, if you wanted to show a spouse’s name field on the Task Flow if the contact was married, you could create a business rule to show or hide the spouse’s name field depending on the marital status field. To make this work, both the marital status and spouse’s name field need to be on the Task Flow.
Please note, the business rule would have no impact outside of the Task Flow, either on the mobile client or when using Dynamics 365 on a browser. This is because it has a scope for only that specific Task Flow.
Below is a snip from the Task Flow configuration screen. As you can see there is a Business Rules item on the command bar.
When you select that, you can configure a business rule, or see any existing business rules on the Task Flow:
This control of running business rules only on the task Flow gives the system administrator or system customiser very granular control. This is a very good thing.
Just like traditional BPFs, Task Flows can branch depending on specific conditions. Indeed, the ‘After Meeting’ task flow has several branches, depending on what record type the Appointment is regarding. The task Flow configuration screen below shows this:
If the Appointment is regarding a Case, the user is taken to a page to update Case details:
Or, if the Appointment is regarding an Opportunity, they are taken to an Opportunity page:
This is really useful as you can have just one Task Flow for Appointments, and the use branching to deal with a multitude of different scenarios depending on what the Appointment was about.
As with all Dynamics 365 features, Task Flows have their limitations:
No child entity fields
You can’t include fields from a child entity on a Task Flow, just a parent record. For example, if your Task Flow runs on the Contact, you could include fields from the Contact’s parent Account on the Task Flow, but not fields from a Case record which is a child of the Contact.
No grandparent fields
You can’t include fields from the grandparent record on the Task Flow. For example, if your Task Flow runs on the Case record, and the case is related to a specific Contact, and the Contact has a parent Account, you could show fields from the Contact on the Task Flow, but not from the Contact’s parent Account.
Task flows can’t be used in offline mode on the mobile device.
Only 1 Appointment flow
There is one Task Flow for Appointment already configured out of the box: the ‘After Meeting’ flow. You can amend this Task Flow, but you can’t create any new Appointment Task Flows.
You can’t trigger workflows directly from Task Flows, like you can with Business Process Flows. Of course, if you alter data in Dynamics 365 in some way using a Task Flow, and a server side workflow exists which is triggered by that data change, the workflow will run, you just can’t initiate the workflow from the Task Flow.
No stage gating
Task flows don’t have stage gating like traditional BPFs do. In BPFs, you can set some fields to be required on the flow, which need to be complete before moving to the next stage of the flow. Task Flows don’t have stages, just pages, and there is no stage gating between those pages.
You can have up to 100 fields on a Task Flow, which strictly speaking is a limitation, but should be plenty. If you have more than 100 fields in a ‘micro process’ you may be asking too much of your users.
Despite these limitations, Task Flows are a welcome addition to the Dynamics 365 suite of functionality. We encourage you to explore using them for your mobile workforce.