Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
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.
The activity deadline checker is disabled by default. To allow activity deadline checking by Joget, 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.
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.
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.
The deadline checker is controlled by the database. When the deadline checker interval time is reached. Joget will pick up a batch of 10 from the running activity instances having deadlines, and run it until it goes through all the running activity instances. Then it will start the next interval. Joget will skip the activity if the deadline is already triggered. In a clustered environment, every cluster node will have its deadline checker and will perform the same deadline checking process. The first checker that reaches the activity deadline first will flag (update) the deadline in the database, then proceed with the deadline workflow. The second checkers will skip that activity and continue the checking process.