Deadlines act as a timer which triggers an exception transition to another activity when a specified duration has elapsed. Deadlines can be set for each activity.
We set time limits on each activity, which will trigger an exception (in this case, a specific string variable). When a matching transition that has the condition set to 'exception' matches this string value, the transition will be invoked.
Types of Deadlines
Deadline execution can be synchronous or asynchronous.
For synchronous execution, the current activity will no longer be active when the deadline is triggered. This is used in cases such as an approval escalation.
For asynchronous execution, the next activity will be executed while the current activity is still waiting. This is used in cases such as sending reminders.
Multiple deadlines are supported for each activity.
Setting Deadlines - A Step-by-Step Guideline
Activating Deadline Checker
The activity deadline checker is disabled by default. To allow activity deadline checking by Joget Workflow, you will have to set the Process Deadline Checker Interval to a non-zero value. Set it to a suitable value, depending on your need.
To enable deadline checking, go to the Admin Bar > General Settings > Timer Settings.
Change the value for 'Process Deadline Checker Interval' to a non-zero value, i.e. 30 (seconds). The unit used is seconds.
Setting Deadlines in Activities
Edit the activity properties you wish to set a deadline for, then click on the Deadlines tab. Add a new row and enter appropriate values for 'Execution', 'Duration Unit' and 'Deadline Limit'.
Type the exception name in the Exception name field (e.g., TIMEOUT). Exception names are case sensitive. Make sure this matches the exception name given to the transition.
Click on 'OK' to save your deadline configuration. You can as many deadlines as you require.
Setting Transition as Exception Flow
When a deadline is triggered, and where the exception name matches the one set for a transition, the flow will execute along that transition to the next element along the workflow.
Add an Exception-type transition from the activity to the next (i.e., Send Reminder).
Set the type of condition to 'Exception'.
Enter an Exception name (e.g., TIMEOUT) in the Expression text area.
Confirm and close the properties window for the transition.
Cautions And Warnings
Remember to turn on Deadline Checker Interval in General Settings so that Deadlines will be triggered.
When an activity assignment is created, any associated deadline(s) is also created at that instance and ready to be executed upon its set deadline duration. Because of this, deadlines will also store the values of workflow variables at the time of creation of such activity.
Hence, any modification to the workflow variables after the creation of the deadline(s) will not take into effect (e.g: changing workflow variable values in the Process Monitor), while the old values will.
You can set multiple deadlines in an activity. As an example, you can include a first-level reminder (asynchronous), which is then followed by an escalation (synchronous), if the activity has not been completed within the time limit.
Remember to match the exception names. If they do not match, nothing will happen.
Office Working Hour Deadline Plugin is an optional addition to your app where SLAs and deadlines are implemented. This plugin will adjust the SLA and deadlines due date calculations based on working hours, weekends and company holidays.