В статье представлены примеры создания новых фильтров.
Фильтр для папки “Согласованные мной”
Для того, чтобы создать фильтр по согласованным мной документам, необходимо добавить новое условие следующего содержания:
Join: , wf$Assignment a
Where: a.card.id = {E}.id and a.user.id = :session$userId and a.name = 'Endorsement' and a.outcome = 'Ok'
Где указать название этапа (Endorsement) и его успешный выход (Ok). Посмотреть наименования этапов и выходов можно в базе данных в таблице wf_assignment, использовав нужную строку в журнале действий.
Фильтр по полю “Сейчас у” в списке договоров
Для того, чтобы создать фильтр по полю “Сейчас у” в списке договоров, необходимо добавить новое условие следующего содержания:
Join: , wf$Assignment a
Where: a.card.id = {E}.id and a.user.id in (?) and a.outcome is null
Если требуется в условии брать текущего пользователя, то используется: user.id = :session$userId
.
Фильтр “Переназначенные мной” в списке задач
Если нужен фильтр, который будет отбирать только те задачи, которые были переназначены самим пользователем либо от его имени, заполните поля следующим образом:
Join: , wf$Assignment a
Where: {E}.id = a.card.id and a.outcome like 'REASSI%' and (a.user.id = :session$userId or a.finishedByUser.id = :session$userId) and a.outcome is not null
Фильтр “По подразделению” в списке задач
Для того, чтобы создать фильтр по полю “По подразделению” в списке задач, необходимо добавить новое условие следующего содержания:
Where: {E}.executor.id in (select em.user.id from df$Employee em where em.department.id = ?)