The Timer Intermediate Event adds time-based dependencies within a process and is either inserted into the sequence flow to create a delay or attached to an activity to create a deadline or "time-out" condition.
When a token (process instance) arrives at this Event, the clock starts and the token waits for the specified time-related condition to occur.
Available for intermediate timer events that are attached to Activities. This property allows you to catalog the timer for statistical and monitoring purposes.
- Deadline: Indicates the expiration of a deadline.
- Warning: Allows to define warning alerts in case of an eventual deadline.
- None: It does not have a specific use.
Available for intermediate timer events that are attached to Activities (invisible when Timer Usage property is set to 'Warning').
More information at Interrupts Activity Property
- Compatible: Enables handling timers the way older GeneXus versions allowed it. More information at Timer Intermediate Event in BPD (GeneXus 16 Upgrade 3 or prior). This value is deprecated and maintained for compatibility reasons.
- Date: Process instance is delayed until a fixed date and time. When attached to an Activity, then the event is triggered at a fixed date and time
- Duration: Process instance or Activity is delayed for a specific time-lapse (duration). When attached to an Activity, then the event is triggered after a specific time-lapse (duration). This is the default value (as of GeneXus 16 upgrade 8)
- Cycle: Process instances are triggered periodically. When attached to an Activity, then the event is triggered periodically
- Rule: Allows setting starting information at design time.
- Procedure: Allows setting a procedure to set the Timer Date at runtime.
Visible if Timer Definition property is set to 'Date' and Timer expression type property is set to 'Rule'
Allows setting a fixed date and time to follow up with the process instance.
Visible if Timer Definition property is set to 'Duration' and Timer expression type property is set to 'Rule'
Allows setting an expected duration of the activity. When the limit is reached, the event is triggered.
Visible if Timer Definition property is set to 'Cycle' and Timer expression type property is set to 'Rule'.
Allows setting a date and time and information related to the event's repetitions and its cadence. Useful to periodically send notifications if the Activity takes too long.
Visible if Timer Expression Type is set to 'Procedure'.
Allows setting a procedure that returns a date and time (DateTime data type) with the next time the event has to be triggered.
If Timer definition property is set to 'Date' or 'Duration', then this procedure is called just once; if Timer Definition property is set to Cycle, then the procedure is called again after a timer is triggered. If it returns an already past date and time, then the timer event will not be triggered anymore in that process instance (unless the control flow returns to the timer).
The procedure associated must have the following parm rule:
parm( in:&WorkflowProcessDefinition, in:&WorkflowProcessInstance, in:&WorkflowWorkitem, out:&DateTime)
&WorkflowProcessDefinition is a WorkflowProcessDefinition data type variable
&WorkflowProcessInstance is a WorkflowProcessInstance data type variable
&WorkflowWorkitem is a WorkflowWorkitem data type variable
&DateTime DateTime variable.
Note: In order to see the Timer Events reflected in your inbox, you must run a program that checks and executes these events. See Timer Control for more information.