Функция renameEvents
позволяет переименовывать события из одного в другое. Новым названием может быть как существующее событие в модели, так и новое, которого там нет. Также с помощью этой функции можно анализировать параллельные события через создание определенных групп этих событий.
Все данные пересчитываются под новые названия событий, как будто старых не существует в модели. На большом объеме данных может потребоваться существенное время на выполнение запроса.
В условии запроса (в where
или в case
) функция должна использоваться не более одного раза.
renameEvents('"имя_события1" -> "новое_имя_события1"', ... , '"имя_событияN" -> "новое_имя_событияN"')
имя_события — название события, которое будет переименовываться.
новое_имя_события — новое название события, в которое произойдет переименование.
Данные функции не коммутативны, в них важен порядок применения при одновременном использовании. Поэтому если они вместе будут в SQL запросе, то выполняется:
renameEvents
,inEventsRange
,hideEvents
/showEvents
.Запрос:
select
process.extId as "procID",
event.name as "Шаг",
eventNum() as "Номер события",
reworkTotal() as "Повторы всего",
rework() as "Повторы подряд"
from event, process
where renameEvents('"check ticket" -> "decide"')
order by "Номер события"
extId | name |
---|---|
1 | register request |
1 | check ticket |
1 | examine casually |
1 | decide |
1 | reinitiate request |
1 | check ticket |
1 | examine casually |
1 | decide |
1 | reinitiate request |
1 | examine thoroughly |
1 | check ticket |
1 | decide |
1 | reject request |
procID | Шаг | Номер события | Повторы всего | Повторы подряд |
---|---|---|---|---|
1 | register request | 1 | 1 | 1 |
1 | decide | 2 | 1 | 1 |
1 | examine casually | 3 | 1 | 1 |
1 | decide | 4 | 2 | 1 |
1 | reinitiate request | 5 | 1 | 1 |
1 | decide | 6 | 3 | 1 |
1 | examine casually | 7 | 1 | 1 |
1 | decide | 8 | 4 | 1 |
1 | reinitiate request | 9 | 1 | 1 |
1 | examine thoroughly | 10 | 1 | 1 |
1 | decide | 11 | 5 | 1 |
1 | decide | 12 | 6 | 2 |
1 | reject request | 13 | 1 | 1 |
Запрос:
select
process.extId as "procID",
event.name as "Шаг",
eventNum() as "Номер события",
reworkTotal() as "Повторы всего",
rework() as "Повторы подряд"
from event, process
where renameEvents(
'"check ticket" -> "new name"',
'"decide" -> "new name"',
'"reinitiate request" -> "new name"'
)
order by "Номер события"
extId | name |
---|---|
1 | register request |
1 | check ticket |
1 | examine casually |
1 | decide |
1 | reinitiate request |
1 | check ticket |
1 | examine casually |
1 | decide |
1 | reinitiate request |
1 | examine thoroughly |
1 | check ticket |
1 | decide |
1 | reject request |
procID | Шаг | Номер события | Повторы всего | Повторы подряд |
---|---|---|---|---|
1 | register request | 1 | 1 | 1 |
1 | new name | 2 | 1 | 1 |
1 | examine casually | 3 | 1 | 1 |
1 | new name | 4 | 2 | 1 |
1 | new name | 5 | 3 | 2 |
1 | new name | 6 | 4 | 3 |
1 | examine casually | 7 | 1 | 1 |
1 | new name | 8 | 5 | 1 |
1 | new name | 9 | 6 | 2 |
1 | examine thoroughly | 10 | 1 | 1 |
1 | new name | 11 | 7 | 1 |
1 | new name | 12 | 8 | 2 |
1 | reject request | 13 | 1 | 1 |
В систему загружены 20 экземпляров процесса. Их визуализация в виджете Variant Explorer выглядит следующим образом:
После применения функции в виде SQL фильтра происходит пересчет цепочек. Их общий граф выглядит по-другому, так как у некоторых шагов сменилось название.
renameEvents(
'"examine thoroughly" -> "check-группа"',
'"check ticket" -> "check-группа"',
'"decide" -> "check-группа"'
)
Запрос:
select
extId
from process
where match('"register request" -> .*') and renameEvents('"register request" -> "new name"')
extId |
---|
1 |
2 |
3 |
extId | name |
---|---|
1 | register request |
1 | check ticket |
1 | examine casually |
1 | decide |
1 | pay compensation |
2 | register request |
2 | check ticket |
2 | examine casually |
2 | decide |
2 | reinitiate request |
2 | check ticket |
2 | examine casually |
2 | decide |
2 | reinitiate request |
2 | examine thoroughly |
2 | check ticket |
2 | decide |
2 | reject request |
3 | register request |
3 | examine thoroughly |
3 | check ticket |
3 | decide |
3 | reject request |
Нет данных
Пояснение: После переименования все экземпляры процессов из входной выборки стали начинаться с шага
new name
, то есть ни один из них не попадает под условиеmatch('"register request" -> .*')
.