Last Modified: 01.07.2013
A status driven business process is a kind of extension, or meta-entity to sequential business processes meaning it contains multiple statuses each of which is an individual sequential business process. When a status driven BP is running, it flows from status to status according to the rules, the conditions defined by a designer and the result of execution of the underlying sequential business processes.
Once you have configured the business process template parameters, you can start building the business process. In general, it requires that you:
- create statuses;
- link the statuses according to logic;
- create a sequential business process inside each of the statuses;
- set access permissions.
Creating the Statuses
To create a new status, click Add State on the business process template design page:
A business process always begins execution starting from the very first status you create. Please keep that in mind. You will not be able to change the initial status later.
Here you have to name the status and specify the access permission to assign to a document (an underlying object on which the business process operates) when it is in this status:
Note: for the organizational business processes, you can also assign the business process management permission.
Save the status. Create other statuses as required by the design of your business process. For example, your template might need the following typical statuses:
Adding Actions and Linking the Statuses
Once you have created the statuses, you have to create operations and actions to be performed when the process flow is in each of the statuses. Once you create an action, the status will become connected to another status automatically – depending on the result status specified in the action.
A status can have one or more actions, each executing consequently from top to bottom as seen in the status block, and each action can have different result status (see the example below). The following actions are possible.
- Command: this command adds a command (i.e. an individual business process) to be run when the process flow is in this status.
- Delay Execution: adds a "Execution Pause" handler to defer execution of the next action for the specified time.
- Status Entry Handlerthis command allows to set a business process that will be run just before the flow enters this state.
- Status Exit Handler: same as Status Entry Handler, but sets a business process that will be run just before the flow exits this state.
Consider adding the following command to the Draft status. Select the Command item in the status popup menu. This will open the command parameters dialog box:
Enter the command name and select the users whom you want to allow to execute this command. If a document is to change the status upon the command completion, select the required new status in the drop list. Note that this list contains the statuses that are already present in the business process template scheme.
Save the command. This will create the action and the connection between the statuses: this one and the one selected in the drop list:
Since a command is a business process, it needs to be created. Click the command name to open the visual modeler:
As you can see, the business process scheme already has the Set State action because the command produces status change. Now all you have to do is add more actions as required. The business process scheme construction has been discussed in Creating a Sequential Business Process Template.
Once you are done creating the subprocess, return to the main business process by clicking Back to States.
Repeat these steps to add actions to each of the business process statuses.