Description
The INDEX_ACTIVITY_TYPE_REVERSE operator returns for every activity in every case, how many times, at a given point in a process this activity has already occurred in reversed order.
Syntax
INDEX_ACTIVITY_TYPE_REVERSE ( activity_table.activity_column )
- activity_column: The activity column of the activity table.
Result
For every activity in every case a number x, that shows this is the xth occurrence of this particular activity in the case.
Imagine the unfolding of a process into a sequential graph, as shown below, the algorithm increases the number for a special activity every time he encounters said activity on his way from the end to the beginning of the process:
Parallel Processes
Activities in parallel processes will get a reverse activation count with respect to the absolute order, based on the timestamp of the activity.
NULL Handling
INDEX_ACTIVITY_TYPE_REVERSE ignores NULL values. If the column contains only NULL values the result will also be a column containing only NULL values. If there are NULL values and non NULL values, it is guaranteed that no non NULL value is similar to the NULL value.
Example
Column1
INDEX_ACTIVITY_TYPE_REVERSE ( "Table1"."ACTIVITY" )
Table1
CASE_ID : STRING | ACTIVITY : STRING | TIMESTAMP : DATE |
---|---|---|
'1' | 'A' | Tue Jan 01 2019 13:00:00.000 |
'1' | 'B' | Tue Jan 01 2019 13:01:00.000 |
'1' | 'C' | Tue Jan 01 2019 13:02:00.000 |
'1' | 'A' | Tue Jan 01 2019 13:03:00.000 |
'1' | 'B' | Tue Jan 01 2019 13:04:00.000 |
'1' | 'A' | Tue Jan 01 2019 13:05:00.000 |
'2' | 'A' | Tue Jan 01 2019 13:06:00.000 |
'2' | 'B' | Tue Jan 01 2019 13:07:00.000 |
Result
Column1 : INT |
---|
3 |
2 |
1 |
2 |
1 |
1 |
1 |
1 |