Business process flows are a new feature in Microsoft Dynamics CRM 2013. Business process flows use the same underlying technology as other processes, but the capabilities that they provide are very different from other features that use processes.
1. Why use business process flows?
Business process flows provide a guide for people to get work done. They provide a streamlined user experience that leads people through the processes their organization has defined for interactions that need to be advanced to a conclusion of some kind. This user experience can be tailored so that people with different security roles can have an experience that best suites the work they do by using Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM Online.
Use business process flows to define a set of steps for people to follow to take them to a desired outcome. These steps provide a visual indicator that tells people where they are in the business process. Business process flows reduce the need for training because new users don’t have to focus on which entity they should be using. They can let the process guide them. You can configure business process flows to support common sales methodologies that can help your sales groups achieve better results. For service groups, business process flows can help new staff get up-to-speed more quickly and avoid mistakes that could result in unsatisfied customers.
2. What can business process flows do?
With business process flows, you define a set of stages and steps that are then displayed in a control at the top of the form.
Each stage contains a group of steps. Each step represents a field where data can be entered. People advance to the next stage by using the Next Stage button. You can make a step required so that people must enter data for the corresponding field before they can proceed to the next stage. This is commonly called ”stage-gating”.
Business process flows appear relatively simple compared to other types of processes because they do not provide any conditional business logic or automation beyond providing the streamlined experience for data entry and controlling entry into stages. However, when you combine them with other processes and customizations, they can play an important role in saving people time, reducing training costs, and increasing user adoption.
Business process flows integrated with other customizations: When you or your user enters data using business process flows, the data changes are also applied to form fields so that any automation provided by business rules or form scripts can be applied immediately. Steps can be added that set values for fields that are not present in the form and these fields will be added to the Xrm.Page object model used for form scripts. Any workflows that are initiated by changes to fields included in a business process flow will be applied when the data in the form is saved. If the automation is applied by a real-time workflow, the changes will be immediately visible to the user when the data in the form is refreshed after the record is saved.
Although the business process flow control in the form does not provide any direct client-side programmability, changes applied by business rules or form scripts are automatically applied to business process flow controls. If you hide a field in a form, that field will also be hidden in the business process flow control. If you set a value by using business rules or form scripts, that value will be set within the business process flow.
System business process flows: Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM Online include three business process flows. To understand how business process flows work, review these system business process flows:
- Lead to Opportunity Sales Process
- Opportunity Sales Process
- Phone to Case Process
These business process flows are provided so that people who are using Microsoft Dynamics CRM Online and who used the processes that were released with the Microsoft Dynamics CRM December 2012 Service Update will be able to upgrade and continue to use those processes. The processes included in the Microsoft Dynamics CRM December 2012 Service Update were hard-coded and included some capabilities that are not found in the business process flows you can create.
3. Multiple entities in business process flows:
You can use a business process flow for a single entity or span multiple entities. For example, you may have a process that begins with an opportunity, then continues to a quote, an order, and then an invoice, before finally returning to close the opportunity.
You can design business process flows that tie together the records for up to five different entities into a single process so that people using Microsoft CRM can focus on the flow of their process rather than on which entity they are working in. They can more easily navigate between related entity records.
4. Multiple business process flows are available per entity:
Not every user in an organization may follow the same process and different conditions may require that a different process be applied. You can have up to 10 active business process flows per entity to provide appropriate processes for different situations.
Control which business process flow will be applied: You can associate business process flows with security roles so that only people with those security roles can see or use them. You can also set the order of the business process flows so that you can control which business process flow will be set by default. This works in the same way that multiple forms for an entity are defined.
When someone creates a new entity record, the list of available activated business process flows is compared to the business processes flows that the person’s security role will show them. The first activated business process flow in that list is the one that will be applied by default. If more than one active business process flow is available, people can chose Switch Process from the command bar to apply a different process. Whenever someone switches processes, the current process stage will be set to the first stage of the newly applied business process flow.
Each record can have only one business process flow at a time. When any user applies a different process, that process is the one that the next user to view the record will see. If someone’s security roles do not allow them to use a specific business process flow, the current business process flow will be visible, but disabled.
5. Business process flow limitations:
You can define business process flows only for those entities that support them. You also need to be aware of the limits for the number of processes, stages, and steps that can be added.
Entities that can use business process flows: Only entities that use the updated forms can use business process flows. This includes custom entities and the following system entities:
Price List Item
To enable a custom entity for business process flows, select the Business process flows (fields will be created) check box in the Entity definition.
Note: You cannot undo this action.
Maximum number of processes, stages, and steps: To ensure acceptable performance and the usability of the user interface, there are some limitations you need to be aware of when you plan to use business process flows:
- There can be no more than 10 activated business process flow processes per entity.
- Each process can contain no more than 30 stages.
- Multi-entity processes can contain no more than five entities.
6. Configure business process flows:
Business process flows use the same technology as other types of processes. The process to create them is similar, but configuring them is very different.
Create business process flows:
There are two ways you can view, create, or edit business process flows:
1. Click on Microsoft Dynamics CRM->Settings -> Processes
2. In the default solution-> using the solution explorer->click on Processes
Like other processes, business process flows have the following properties in the ‘Create Process’ dialog:
Process name: The name of the process does not need to be unique, but it should be meaningful for people who need to choose a process. You can change this later.
Category: This property establishes that this is a business process flow process. You can’t change this after you save the process.
Entity: Choose one of the entities from the list of business process–enabled entities. If you don’t find the entity you expect, make sure the entity has the Business process flows (fields will be created) option set in the entity definition. You can’t change this after you save the process.
Note: Business process flows have a simplified way to reuse existing business process flows as an advanced starting point for new business process flows. When you select Business Process Flow as the Category, there is no option available to set the Type value as you can for other types of processes. Instead, when you open an existing business process flow, you will find a Save As button on the command bar. This will create a new business process flow that is the same as the existing one, except that the text (Copy) will be appended to the name.
After you create a new business process flow, the Create Process dialog box will close and you must find the new process in the list and open it.
Edit business process flows: Once you open a business process flow to edit it, you will see the following page:
If you want to rename the process or add a description, you must click or tap the Expand toggle to view these properties. When you define the logic for a business process flow, you will edit stages and steps, and add additional entities.
Edit Stages: Business process flows can have up to 30 stages. To add a stage, click or tap the (+) icon near the Stages column. To remove a stage, select it and click or tap the X icon on the right edge of the stage. Stages have a label that you can set. The text of the label is always in upper case.
Stages also have a Stage Category. This is optional. Stage category is useful for reports that will group records by the stage they are in. The options for the stage category come from the Stage Category global option set. You can add additional options to this global option set and change the labels of existing options if you want. You can also delete these options if you wish, but we recommend that you keep the existing options. You won’t be able to add the exact same option back if you delete it. If you don’t want them to be used, change the label to ”Do not use”.
Edit Steps: When you have selected a stage, click or tap the (+) icon near the Steps column to create a new step. To remove a step, select it and click or tap the X icon on the right edge of the step.
Each step has a label set to New Step when you create it. When you set the field for the step, if you haven’t edited the label, the label for the step will change to match the label for the field. Generally, you want the label for the step to match the label for the field. Once you edit the label, it will not change when you change the field.
Add Additional entities: In the Included Entities area, you can select Options to see available options to Add Entity or Close Process Cycle
You can add any of the entities that have one-to-many relationships with the entity selected for the process. After you add an entity, you can select any of the entities that have a one-to-many relationship with that entity. You can add up to five entities, but each entity you add can only proceed to one of the entities that have a one-to-many relationship with the previous entity. If an entity doesn’t have any one-to-many relationships, your only option is to close the process cycle.
Closing the process cycle is always the last stage of the flow. You can close the cycle by using any of the entities in the cycle. This is frequently a step to change the state of the original entity, but you may choose a different entity.
Remove Additional entities: After you have added an additional entity in Options, you will see a new Deleted Last Entity option. Because each entity you add depends on the previous entity, when there are multiple entities, you need to remove them in the reverse order in which they were added.
To make a business process flow available for people to use, you must order the process flow, enable security roles, and activate it.
Set Order: When you have more than one business process flow for an entity, you need to rank the order in which they should be evaluated to be used by default. To open a dialog where you can move business process flows up or down, in the command bar, select Order Process Flow. For new records or records that do not already have a process flow associated with them, the first business process flow that a user has access to is the one that will be used.
Enable Security Roles: People will only be able to use business process flows that are associated to security roles that are associated with someone’s user account. By default, only the System Administrator and System Customizer security roles can view a new business process flow. To set these roles, in the command bar, select Enable Security Roles. You can choose either the Enable for Everyone or Enable only for the selected security roles options. If you choose Enable only for the selected security roles, you can select which security roles will allow access to the business process flow.
Activate: Before anyone can use the business process flow, you must activate it. In the command bar, select Activate to open the Process Activate Confirmation dialog box. After you confirm the activation, the business process flow is ready to use. If a business process flow has errors, you will not be able to activate it until the errors are corrected.