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.
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 Settings > System Setup.
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
Open the properties dialog of the activity you wish to set a deadline for, then click on the Create New Element button in the Deadlines area; a Deadline properties dialog box will pop up. 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 confirm the creation of this deadline. You can continue adding multiple deadlines.
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.
Remember to turn on Deadline Checker Interval in General Settings so that Deadlines will be triggered.
You can set multiple deadlines in an activity. They 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.