Смарт-события¶
ℹ️ Если название события начинается со слова "Перед...", то привязанные к такому событию пакеты действий могут быть отменены. Для этого в пакете действий должно присутствовать действие "Отменить". Такие привязки могут использоваться для реализации запрета действия при выполнении или не выполнении какого-то условия. Например, нельзя понизить приоритет задачи, если ее заказчик — генеральный директор организации
ℹ️ В событиях, связанных с затратами ресурсов, используются контекстные параметры "Исполнитель (пользователь)" и "Исполнитель (задача)". Параметр "Исполнитель (пользователь)" используется для внесения затрат по сотруднику; в этом параметре передается ID пользователя, по которому вносятся затраты. Параметр "Исполнитель (задача)" используется для внесения затрат по ресурсу; в этом параметре передается ID задачи из Справочника ресурсов (раздел "Системный")
Доступные смарт-события:
Exchange¶
Обратите внимание: события из данной группы носят глобальный характер и не используются в категориях, их можно добавить только в разделе Общие SMART
173
Изменено событие в календаре
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписки (@eventParam1)
-
Ключ события (@eventParam2)
-
Событие удалено (@eventParam3)
-
Вложенные события (@eventParam4)
Событие возникает при изменении встречи в календаре
ℹ️ При необходимости для получения деталей встречи нужно дополнительно выполнить смарт-действие "Получить встречу"
179
Пришло новое письмо
Параметры события:
-
ID пользователя (@eventParam0) — ID владельца ящика. Если их несколько, учитывается первый из владельцев.
-
Email (@eventParam1) — почтовый адрес, указанный в поле "Имейл отправителя (для исходящих писем)" или "Логин" в настройках почтового ящика.
-
ID подписки (@eventParam2)
-
ИД почтового ящика (@eventParam3)
-
Название папки (@eventParam4)
-
ИД письма (@eventParam5)
Событие возникает при получении нового письма во встроенном почтовом клиенте
ℹ️ Только для Exchange Server
ℹ️ Предварительно необходимо активировать опцию почтового ящика "Включить события о новых письмах". Настройка доступна, начиная с версии 2.260 Пегас
172
Создано событие в календаре
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписки (@eventParam1)
-
Ключ события (@eventParam2)
-
Вложенные события (@eventParam3)
Событие возникает при создании встречи
ℹ️ При необходимости для получения деталей встречи нужно дополнительно выполнить смарт-действие "Получить встречу"
Глобальные¶
Глобальные события доступны только в разделе Общие SMART
113
Изменена схема денормализованной таблицы
Параметр события:
- ID категории, в которой была выполнена денормализация ДП "Таблица" (@eventParam0)
Событие возникает, если была изменена схема данных ДП "Таблица"
107
Изменены настройки ДП
Параметр события:
- ID ДП, для которого были изменены настройки (@eventParam0)
Событие возникает при изменении настроек ДП в интерфейсе администрирования системы
108
Изменены настройки ДП в категории
Параметры события:
-
ID ДП, для которого были изменены настройки (@eventParam0)
-
ID категории, в которой были изменены настройки ДП (@eventParam1)
Событие возникает при изменении настроек ДП в категории в интерфейсе администрирования системы
157
Обработка событий очереди
Параметры события:
-
Логический результат (@eventParam0)
-
Текстовый результат (@eventParam1)
-
Задача (@eventParam2)
Событие возникает при обработке событий в очереди
162
Ошибка смарт-расписания
Параметры события:
-
ID задачи (@eventParam0) — NULL, если расписание вне контекста задач
-
ID категории (@eventParam1) — NULL, если смарт-расписание общее
-
ID пакета действий (@eventParam2)
-
ID привязки пакета к расписанию (@eventParam3)
-
Текст ошибки (@eventParam4)
Событие возникает, когда смарт-расписание отрабатывает с ошибкой
12
Перед назначением исполнителя
Параметры события:
-
ID назначающего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
Событие возникает перед назначением исполнителей глобально для всех категорий
180
После запроса подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID запросившего подпись пользователя (@eventParam1)
Событие возникает после запроса статической подписи
Пользователи¶
События, связанные с обработкой учетных записей пользователей, доступны только в разделе Общие SMART
92
Во время открытия профиля пользователя
Параметр события:
- ID пользователя (@eventParam0)
193
Пользователь отключился от встречи
Параметры события:
-
ID пользователя (@eventParam0)
-
Имя (@eventParam1) — DIsplayName присоединившегося пользователя
-
ContextID — Номер задачи
186
Пользователь присоединился к встрече
Параметры события:
-
ID пользователя (@eventParam0)
-
Имя (@eventParam1) — DIsplayName присоединившегося пользователя
-
ContextID — Номер задачи
192
Пользователь стал онлайн
Параметр события:
- ID пользователя (@eventParam0)
170
После восстановления пользователя
Параметр события:
- ID пользователя (@eventParam0)
82
После изменения пользователя
Параметры события:
-
ID пользователя (@eventParam0)
-
ID меняющего пользователя (@eventParam1)
81
После создания пользователя
Параметры события:
-
ID пользователя (@eventParam0)
-
Источник (@eventParam1)
83
После увольнения пользователя
Параметры события:
-
ID пользователя (@eventParam0)
-
Причина (@eventParam1)
ДП и свойства задачи¶
168
Вычисление значения по умолчанию
Параметры события:
- Номер задачи (@eventParam0)
Инициируется при вычислении значения ДП по умолчанию
0
Перед сменой дп
Параметры события:
-
ID ДП (@eventParam0)
-
ID меняющего пользователя
-
Новое значение (@eventParam2)
-
Старое значение (@eventParam3)
Если событие вызывается для ДП типа "Файл" и пакет содержит действие "Отмена", то файл нельзя загрузить, заменить или удалить, но внести изменения в существующий файл можно. Для ограничения редактирования используйте событие Перед редактированием файла
22
Перед сменой приоритета
Параметры события:
-
ID меняющего пользователя
-
Приоритет (@eventParam1)
Приоритеты имеют численные эквиваленты: низкий приоритет — 0; обычный — 1; высокий — 3
19
Перед сменой текста задачи
Параметры события:
-
Текст
-
Старый текст (@eventParam1)
-
ID меняющего пользователя
71
Перед сохранением значений в строке ДП Таблица
Параметры события:
-
ID задачи
-
ID строки (@eventParam1)
-
Новое значение
-
Старое значение
Запуск события производится не в цикле перед сохранением каждой строки, а сперва производится запуск смарт-выражений в цикле по всем строкам таблицы, после чего происходит сохранение каждой строки в другом цикле.
Пример:
Цикл по каждой строке: { 1. "Перед сохранением строки" } Цикл по каждой строке: { 2. Сохранение каждой строки 3. Вычисление смарт-колонки 4. "После сохранения строки" } В качестве параметров события передаются ID задачи, ID строки, а также старое и новое значения строки в формате JSON
1
После смены ДП
Параметры события:
-
ID ДП (@eventParam0)
-
ID меняющего пользователя
-
Новое значение (@eventParam2)
-
Старое значение (@eventParam3)
23
После смены приоритета
Параметры события:
- ID меняющего пользователя
Приоритеты имеют численные эквиваленты: низкий приоритет — 0; обычный — 1; высокий — 3
20
После смены текста задачи
Параметры события:
-
Старый текст (@eventParam0)
-
ID пользователя (@eventParam1)
50
После сохранения значений в строке ДП Таблица
Параметры события:
-
ID задачи (@eventParam0)
-
ID строки
-
Новое значение (@eventParam2)
-
Старое значение (@eventParam3)
-
ID ДП (@eventParam4)
-
ID пользователя (@eventParam5)
Другое¶
167
Ограничение исполнителей
Параметры события:
-
ID пользователя (@eventParam0)
-
ID категории (@eventParam1)
Инициируется при установке настройки категории Специальные пользователи
85
Определение специальных пользователей
Параметры события:
-
ID пользователя (@eventParam0)
-
ID категории (@eventParam1)
-
№ задачи (@eventParam2)
-
№ задачи ресурса (@eventParam3)
Инициируется при установке настройки категории Ограничить исполнителей смарт-выражением.
75
При произвольном событии
Параметры события:
-
№ задачи (@eventParam0)
-
ID произвольного события (@eventParam1)
-
Задача инициатор (@eventParam2)
-
Пользователь инициатор (@eventParam3)
Инициируется при произвольном событии
Задачи и комментарии¶
64
Во время открытия задачи
Параметры события:
- Контекст открытия задачи (@eventParam1):
oUndefined (0) — Неопределенный.
oSpa (1) — Веб.
o Mobile (2) — МП.
o Conference (3) — ВКС.
Если параметр не передан, то в смарт передается контекст Undefined (0). Если параметр не передан, но запрос распознан как IsMobile, то в смарт передается значение Mobile (2)
Инициируется при переходе в карточку задачи.
Событие может наступить только для пользователя, который имеет доступ к задаче
Ограничение веб-клиента (SPA): событие вызывается только при открытии задачи в представлении «Чаты» (chatMode). При открытии задачи в обычной полной карточке (другие представления) вызов не происходит. Источник: task-card.component.ts — вызов whenOpenTask обёрнут в if (this.chatMode).
Вызов через API: событие можно инициировать напрямую через POST /api/v2/tasks/{taskId}/when-open-task независимо от представления — актуально для интеграций и мобильного клиента.
Примечание по параметрам: контекст передаётся в @eventParam1, а не в @eventParam0 (как в большинстве событий). @eventParam0 у данного события не используется.
40
Перед написанием комментария
Параметры события:
-
Автор (@eventParam0)
-
Текст (@eventParam1)
79
Перед отправкой уведомления
Параметры события:
-
ID пользователя (@eventParam0)
-
Тип комментария (@eventParam1)
Обрабатывает отправку уведомлений "в конверт" (увеличивающих счетчик индикатора непрочитанных комментариев) и push-сообщений для мобильных приложений. В настройках события нужно выбрать тип уведомления, которое будет обрабатываться событием. Возможные типы соответствуют настройкам получаемых уведомлений и push-сообщений в профиле пользователя. К событию может быть привязан пакет с действием "Отменить". Таким образом можно дополнительно регулировать отправку уведомлений и push-сообщений для категории.
Оба механизма вместе — настройки профиля пользователя и обработка события "Перед отправкой уведомления" в категории — позволяют гибко настраивать отправку уведомлений и push-сообщений: на уровне пользователей (с помощью настроек профиля), категорий, а также условий смарт-фильтра в событии (в нем могут дополнительно проверяться, например, принадлежность к группе пользователей или роль пользователя в задаче — заказчик, исполнитель, подписчик)
49
Перед переносом задачи из категории
Параметр события:
- ID пользователя (@eventParam0)
Смарт-пакет, привязанный к этому событию, отрабатывает в контексте исходной категории (в отличие от события Перед постановкой и переносом задачи, которое обрабатывается в контексте целевой категории). Другими словами, действие перед переносом задачи выполняется всегда в текущей категории.
Пример:
В категории "Договоры" создано событие Перед переносом задачи из категории.
1. Удалить всех исполнителей
2. Добавить исполнителя Теперь, перед тем, как перенести задачу в другую категорию из категории "Договора", система автоматически удаляет всех текущих исполнителей и назначает нового, согласно заданным параметрам в смарт-действии. Права на выполнение этих действий проверяются в соответствии с установленными правами доступа для категории "Договора".
Если задача переносится из категории "Договоры" в категорию "Заявки", а пользователь, назначенный новым исполнителем через смарт-действие, имеет доступ к выполнению задач в категории "Заявки", но не имеет прав на выполнение задач в категории "Договоры", то перенос выполнен не будет. Смарт-действие вернет сообщение об ошибке, так как событие инициируется перед выполнением действия и исполнитель должен быть назначен в категории "Договоры" до переноса.
2
Перед постановкой и переносом задачи
Параметр события:
- Режим работы (@eventParam0)
При настройке события отображается дополнительное поле Значение. Оно может принимать одно из трех значений:
-
Активно при постановке и переносе (по умолчанию),
-
Активно только при постановке,
-
Активно только при переносе.
ℹ️ Событие инициируется при переносе задач в текущую категорию из других категорий. Для автоматизации действий при переносе задач из текущей категории используйте смарт-событие Перед переносом задачи из категории
Смарт-пакет, привязанный к этому событию, отрабатывает в контексте целевой категории (в отличие от события Перед переносом задачи из категории, которое обрабатывается в контексте исходной категории). Другими словами, действие перед переносом задачи выполняется в той категории, в которую переносится задача.
Пример:
В категории "Акты" создано событие Перед постановкой и переносом задачи с активностью при постановке и переносе.
1. Удалить всех исполнителей
2. Добавить исполнителя Теперь, перед тем как создать задачу в категории "Акты" или перенести задачу в категорию "Акты" из любой другой категории, система автоматически удаляет всех текущих исполнителей и назначает нового, согласно заданным параметрам в смарт-действии.
Права на выполнение переноса проверяются в соответствии с установленными правами доступа для той категории, из которой выполняется перенос.
Если задача переносится в категорию "Акты" из категории "Спецификации", а пользователь, назначенный новым исполнителем через смарт-действие, имеет доступ к выполнению задач в категории "Акты", но не имеет прав на выполнение задач в категории "Спецификации", то перенос выполнен не будет. Смарт-действие вернет сообщение об ошибке, так как событие инициируется перед выполнением действия и исполнитель должен быть назначен в категории "Спецификации" до переноса
18
Перед удалением задачи
Параметр события:
- ID удаляющего пользователя (@eventParam0)
177
Перед удалением комментария
Параметры события:
-
ID комментария (@eventParam0)
-
Автор (@eventParam1)
-
Текст (@eventParam2)
188
После завершения опроса
Параметр события:
- ID пользователя (@eventParam0)
77
После изменения состояния связанной задачи
Параметры события:
-
ID задачи (@eventParam0)
-
ID связанной задачи (@eventParam1)
-
Тип связи (@eventParam2)
Инициируется в категориях с включенным режимом "Последовательное выполнение подзадач" или в проектных задачах. Событие возникает для связей типа StartToFinish или StartToStart (когда связанная подзадача переходит из состояния "Новая" ), а также для связей типа FinishToStart или FinishToFinish (когда связанная подзадача переходит в статус "Завершена").
Для подзадач последовательного выполнения всегда проставляется связь FinishToStart.
Для обычных связей между задачами событие не возникает
78
После лайка задачи
Параметры события:
-
ID пользователя (@eventParam0)
-
Лайк или отзыв (@eventParam1)
Инициируется после простановки очередного "лайка" при включенном режиме "Лайки" в настройках категории в блоке "Счетчики"
29
После написания комментария
Параметры события:
-
ID комментария (@eventParam0)
-
Текст (@eventParam1)
Начиная с версии 2.268 Скульптор данное событие поддерживает глобальный режим (флаг CanBeGlobal). Пакет действий можно привязать к этому событию в разделе Общие SMART без указания категории — тогда он будет срабатывать при написании комментария в любой задаче системы. При этом категорийные привязки продолжают работать как раньше. См. также глобализация событий.
Событие возникает после успешного сохранения комментария. К моменту срабатывания события все связи комментария с другими сущностями уже созданы: записи в FileStorageFileToCommentLinks (файлы комментария), FileStorageFileToTaskLinks (файлы задачи), а также данные самого комментария доступны для запросов из SmartScript.
При необходимости получить информацию о файлах, прикреплённых к комментарию, используйте SQL-запрос к FileStorageFileToCommentLinks по CommentID.
187
После обновления результата опроса
Параметр события:
- ID пользователя (@eventParam0)
3
После постановки задачи
Нет параметров
175
После редактирования комментария
Параметры события:
-
ID комментария (@eventParam0)
-
Текст (@eventParam1)
-
Старый текст (@eventParam2)
178
После удаления комментария
Параметры события:
-
Автор (@eventParam0)
-
Текст (@eventParam1)
197
После реакции на комментарий
Параметры события:
-
Кто поставил/снял реакцию (@eventParam0)
-
ID комментария (@eventParam1)
-
ID реакции (@eventParam2) — 0 при снятии реакции
-
Добавлена (@eventParam3) —
true= реакция поставлена,false= снята -
Автор комментария (@eventParam4)
Срабатывает при добавлении или снятии эмодзи-реакции на комментарий. Основной сценарий — автоматика по реакциям: например, робот ставит ответную реакцию или реакция запускает бизнес-процесс.
198
После пометки комментария как вопрос
Параметры события:
-
Кто пометил (@eventParam0)
-
ID комментария (@eventParam1)
Срабатывает при пометке комментария как «требует ответа». Позволяет автоматизировать реакцию на вопросы: назначение исполнителя, создание задач, эскалация по таймеру, обновление ДП и т.д.
Заказчики, исполнители, подписчики¶
58
Перед добавлением подписчика
Параметры события:
-
ID подписчика (@eventParam0)
-
ID добавляющего пользователя (@eventParam1)
12
Перед назначением исполнителя
Параметры события:
-
ID назначающего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
28
Перед сменой заказчика
Параметры события:
-
ID меняющего пользователя (@eventParam0)
-
ID заказчика (@eventParam1)
16
Перед сменой ответственного
Параметры события:
-
ID назначающего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
14
Перед удалением исполнителя
Параметры события:
-
ID удаляющего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
181
Перед удалением подписчика
Параметры события:
-
ID подписчика (@eventParam0)
-
ID удаляющего пользователя (@eventParam1)
13
После назначения исполнителя
Параметры события:
-
ID назначающего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
21
После смены заказчика
Параметры события:
-
ID сменившего пользователя (@eventParam0)
-
ID старого заказчика (@eventParam1)
Данные в денормализованной таблице будут обновлены после срабатывания всей синхронной автоматизации, привязанной к переходу
17
После смены ответственного
Параметры события:
-
ID назначающего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
15
После удаления исполнителя
Параметры события:
-
ID удалившего пользователя (@eventParam0)
-
ID исполнителя (@eventParam1)
72
После удаления подписчика
Параметры события:
-
ID подписчика (@eventParam0)
-
ID удаляющего пользователя (@eventParam1)
Маршруты, переходы¶
4
Перед переходом
Параметры события:
-
ID шага (@eventParam0)
-
ID пользователя, который осуществляет переход (@eventParam1)
-
Причина (@eventParam2)
6
Перед принудительной сменой статуса
Параметры события:
-
ID пользователя, который меняет статус (@eventParam0)
-
ID нового статуса (@eventParam1)
-
ID старого статуса (@eventParam2)
Следует помнить, что принудительная смена статуса отличается от обычной — при принудительной смене статуса все сопутствующие автоматизации (запросы подписей, процедуры проверки и изменения значений ДП и т.д.) не выполняются
5
После перехода
Параметры события:
-
ID шага (@eventParam0)
-
ID пользователя, который осуществляет переход (@eventParam1)
-
Причина (@eventParam2)
Данные в денормализованной таблице будут обновлены после срабатывания всей синхронной автоматизации, привязанной к переходу
7
После принудительной смены статуса
Параметры события:
-
ID пользователя, который меняет статус (@eventParam0)
-
ID старого статуса (@eventParam1)
Следует помнить, что принудительная смена статуса отличается от обычной — при принудительной смене статуса все сопутствующие автоматизации (запросы подписей, процедуры проверки и изменения значений ДП и т.д.) не выполняются
Данные в денормализованной таблице будут обновлены после срабатывания всей синхронной автоматизации, привязанной к переходу
27
После смены статуса (в т.ч. принудительного)
Параметры события:
-
ID нового статуса (@eventParam0)
-
ID старого статуса (@eventParam1)
-
ID пользователя-инициатора (@eventParam2)
Следует помнить, что принудительная смена статуса отличается от обычной — при принудительной смене статуса все сопутствующие автоматизации (запросы подписей, процедуры проверки и изменения значений ДП и т.д.) не выполняются
Данные в денормализованной таблице будут обновлены после срабатывания всей синхронной автоматизации, привязанной к переходу
Подписи¶
59
Перед акцептом подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
-
ID типа резолюции (@eventParam2)
-
Причина (@eventParam3)
66
Перед делегированием подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
Коллекции:
-
Новые акцептанты — содержит пользователей, напрямую указанных акцептантами подписи без учета их заместителей
-
Все новые акцептанты — содержит полный список получателей, включающий как основных акцептантов, так и их заместителей
55
Перед запросом динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
Коллекции:
-
Акцептанты — содержит пользователей, напрямую указанных акцептантами подписи без учета их заместителей.
-
Все акцептанты — содержит полный список получателей, включающий как основных акцептантов, так и их заместителей.
65
Перед запросом подписи на переходе
Параметры события:
-
ID подписи (@eventParam0)
-
ID подписи на переходе (@eventParam1)
Коллекции:
-
Акцептанты — содержит пользователей, напрямую указанных акцептантами подписи без учета их заместителей.
-
Все акцептанты — содержит полный список получателей, включающий как основных акцептантов, так и их заместителей.
97
Перед началом этапа согласования
Нет параметров
63
Перед отзывом подписей
Параметр события:
- ID пользователя, запросившего подпись (@eventParam0)
60
Перед отклонением подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
-
ID типа резолюции (@eventParam2)
-
Причина (@eventParam3)
61
Перед удалением подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
-
ID типа резолюции (@eventParam2)
62
Перед эскалированием подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
-
ID типа резолюции (@eventParam2)
122
После делегирования подписи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подписи (@eventParam1)
Коллекции:
-
Акцептанты — содержит пользователей, напрямую указанных акцептантами подписи без учета их заместителей.
-
Все акцептанты — содержит полный список получателей, включающий как основных акцептантов, так и их заместителей
98
После завершения этапа согласования
Нет параметров
56
После запроса динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
-
ID типа резолюции (@eventParam2)
Инициируется после запроса подписи вручную из карточки задачи и после запроса подписи в ходе выполнения динамического маршрута согласования
99
После запроса обязательных подписей на этапе согласования
Нет параметров
80
После запроса подписи на переходе
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
Коллекции:
-
Новые акцептанты — содержит пользователей, напрямую указанных акцептантами подписи без учета их заместителей.
-
Все акцептанты — содержит полный список получателей, включающий как основных акцептантов, так и их заместителей
57
После истечения срока подписи
Параметр события:
- ID подписи (@eventParam0)
Инициируется заданием OverdueSignaturesJob, которое запускается по расписанию
69
После отзыва подписей
Параметр события:
- ID пользователя (@eventParam0)
52
После отклонения динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
-
Причина отклонения (@eventParam2)
-
ID типа резолюции (@eventParam3)
Инициируется после отклонения подписи вручную из карточки задачи и после отклонения подписи в ходе выполнения динамического маршрута согласования
76
После отклонения статической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
-
Причина отклонения (@eventParam2)
-
ID типа резолюции (@eventParam3)
51
После подписания динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID пользователя (@eventParam1)
-
ID типа резолюции (@eventParam2)
Инициируется после акцепта подписи вручную из карточки задачи и после акцепта подписи в ходе выполнения динамического маршрута согласования
70
После подписания статической подписи
Параметры события:
-
ID запрошенной подписи (@eventParam0)
-
ID подписавшего пользователя (@eventParam1)
-
ID типа резолюции (@eventParam2)
-
ID подписи (@eventParam3)
53
После удаления динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID удалившего пользователя (@eventParam1)
-
ID типа резолюции (@eventParam2)
54
После эскалирования динамической подписи
Параметры события:
-
ID подписи (@eventParam0)
-
ID делегировавшего пользователя (@eventParam1)
-
ID пользователя, на которого подпись эскалирована (@eventParam2)
-
ID типа резолюции (@eventParam3)
Ресурсное планирование¶
160
Перед акцептом фактических трудозатрат
Параметры события:
-
ID задачи (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Даты (json массив) (@eventParam3)
-
Резолюция (@eventParam4)
-
Количество (@eventParam5)
-
Согласовать трудозатраты полностью (@eventParam6)
Контекстный параметр "Дата" — это массив дат. Получить значение даты в смарт-выражении можно так:
OPENJSON ( JSON_QUERY ( @eventParam3, \'\$\' )
158
Перед блокировкой фактических трудозатрат
Параметры события:
-
ID задачи (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Дата от (@eventParam3)
-
Дата до (@eventParam4)
-
ID пользователя (@eventParam5)
110
Перед изменением объемно-календарного плана
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
-
Инициатор действия (@eventParam2)
-
ID задачи ресурса (@eventParam3)
-
Дельта (@eventParam4)
Событие возникает перед изменением значения в колонке "План" в блоке "Ресурсы".
Параметры события:
-
задача, в которой выполняются изменения;
-
пользователь, от имени которого выполняется действие;
-
инициатор действия, вызвавшего событие — возможные значения Plan (прямое изменение плана из интерфейса), Performers (действия над исполнителями), Automation (смарт-автоматизация);
-
ресурс, по которому изменяется план;
-
дельта (абсолютная разница общих планов до и после в минутах)
103
Перед изменением фактических трудозатрат
Параметры события:
-
ID исполнителя — пользователь (@eventParam0)
-
ID исполнителя — задача (@eventParam1)
-
JSON с массивом дат, трудозатрат на дату и комментариев
-
Пользователь, осуществляющий действие
Номер задачи передается в контекстном параметре @ContextID
112
Перед изменением персонального плана
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
-
ID задачи ресурса (@eventParam2)
-
ID исполнителя — пользователь (@eventParam3)
-
ID исполнителя — задача (@eventParam4)
-
Дельта (@eventParam5)
Событие возникает перед изменением значения в колонке "Исполнитель" в блоке "Ресурсы".
Параметры события:
-
задача, в которой выполняются изменения;
-
пользователь, от имени которого выполняется действие;
-
ресурс, по которому изменяется план;
-
исполнитель-пользователь, для которого меняется план;
-
исполнитель-задача (для внешних ресурсов и материальных объектов);
-
дельта (абсолютная разница общих планов до и после в минутах)
156
Перед разблокированием фактических трудозатрат
Параметры события:
-
ID (@eventParam0)
-
ID пользователя (@eventParam1)
159
Перед снятием акцепта фактических трудозатрат
Параметры события:
-
ID задачи ресурса (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Даты (json массив) (@eventParam3)
-
Резолюция (@eventParam4)
Контекстный параметр "Дата" — это массив дат. Получить значение даты в смарт-выражении можно так:
OPENJSON ( JSON_QUERY ( @eventParam3, \'\$\' )
153
После акцепта фактических трудозатрат
Параметры события:
-
ID задачи ресурса (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Даты (json массив) (@eventParam3)
-
Резолюция (@eventParam4)
-
Количество (@eventParam5)
-
Согласовать трудозатраты полностью (@eventParam6)
Контекстный параметр "Дата" — это массив дат. Получить значение даты в смарт-выражении можно так:
OPENJSON ( JSON_QUERY ( @eventParam3, \'\$\' )
155
После блокировки фактических трудозатрат
Параметры события:
-
ID задачи (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Дата от (@eventParam3)
-
Дата до (@eventParam4)
-
ID пользователя (@eventParam5)
109
После изменения объемно-календарного плана
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
-
Инициатор действия (@eventParam2)
-
ID задачи ресурса (@eventParam3)
-
Дельта (@eventParam4)
Событие возникает после изменения значения в колонке "План" в блоке "Ресурсы".
Параметры события:
-
задача, в которой выполняются изменения;
-
пользователь, от имени которого выполняется действие;
-
инициатор действия, вызвавшего событие — возможные значения Plan (прямое изменение плана из интерфейса), Performers (действия над исполнителями), Automation (смарт-автоматизация);
-
ресурс, по которому изменяется план;
-
дельта (абсолютная разница общих планов до и после в минутах)
111
После изменения персонального плана
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
-
ID задачи ресурса (@eventParam2)
-
ID исполнителя — пользователь (@eventParam3)
-
ID исполнителя — задача (@eventParam4)
-
Дельта (@eventParam5)
Событие возникает после изменения значения в колонке "Исполнитель" в блоке "Ресурсы".
Параметры события:
-
задача, в которой выполняются изменения;
-
пользователь, от имени которого выполняется действие;
-
ресурс, по которому изменяется план;
-
исполнитель-пользователь;
-
исполнитель-задача (для внешних ресурсов и материальных объектов);
-
дельта (абсолютная разница общих планов до и после в минутах)
93
После изменения плановых ресурсов
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
-
Инициатор действия (@eventParam2)
-
Действие (@eventParam3)
-
ID задачи ресурса (@eventParam4)
Событие возникает только после добавления нового планового ресурса в блок "Ресурсы" в карточке задачи. При изменении существующего значения плана событие не возникает.
Параметры события:
-
задача, в которой выполняются изменения;
-
пользователь, от имени которого выполняется действие;
-
инициатор действия, вызвавшего событие — возможные значения Plan (прямое изменение плана из интерфейса), Performers (действия над исполнителями), Automation (смарт-автоматизация);
-
действие — AddResource (добавление ресурса), DeleteResource (удаление неразыменованного ресурса), AddPerformer (добавление исполнителя), DeletePerformer (удаление исполнителя);
-
ресурс (задача из системного справочника ресурсов);
-
исполнители-пользователи (список пользователей) — если действие выполняется над неразыменованным ресурсом, то в списке перечисляются все исполнители по этому ресурсу, если действие над исполнителем — то все добавленные\удаленные исполнители;
-
исполнители-задачи (список задач) — аналогично исполнителям-пользователям (для внешних ресурсов и материальных объектов).
Например, для формирования списка исполнителей-пользователей может использоваться такое смарт-выражение:
100
После изменения фактических трудозатрат
Параметры события:
-
ID исполнителя — пользователь (@eventParam0)
-
ID исполнителя — задача (@eventParam1)
-
JSON с массивом дат, кол-вом трудозатрат на дату и комментарий (@eventParam2)
-
ID пользователя (@eventParam3)
161
После разблокировки фактических трудозатрат
Параметры события:
-
ID задачи (@eventParam0)
-
ID пользователя (@eventParam1)
154
После снятия акцепта фактических трудозатрат
Параметры события:
-
ID задачи ресурса (@eventParam0)
-
ID исполнителя — пользователь (@eventParam1)
-
ID исполнителя — задача (@eventParam2)
-
Даты (json массив) (@eventParam3)
-
Резолюция (@eventParam4)
-
ID пользователя (@eventParam5)
Контекстный параметр "Дата" — это массив дат. Получить значение даты в смарт-выражении можно так:
OPENJSON ( JSON_QUERY ( @eventParam3, \'\$\' )
Связи и подзадачи¶
38
Перед добавлением подзадачи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID добавляемой подзадачи (@eventParam1)
39
Перед назначением подзадачей
Параметры события:
-
ID пользователя (@eventParam0)
-
ID назначаемой родительской задачи (@eventParam1)
41
Перед созданием связи между задачами
Параметры события:
-
ID пользователя (@eventParam0)
-
ID связанной задачи (@eventParam1)
37
Перед удалением подзадачи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подзадачи (@eventParam1)
36
Перед удалением родительской
Параметры события:
-
ID пользователя (@eventParam0)
-
ID родительской задачи (@eventParam1)
42
Перед удалением связи между задачами
Параметры события:
-
ID пользователя (@eventParam0)
-
ID связанной задачи (@eventParam1)
32
После добавления подзадачи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подзадачи (@eventParam1)
33
После назначения подзадачей
Параметры события:
-
ID пользователя (@eventParam0)
-
ID родительской задачи (@eventParam1)
31
После создания связи между задачами
Параметры события:
-
ID пользователя (@eventParam0)
-
ID связанной задачи (@eventParam1)
34
После удаления подзадачи
Параметры события:
-
ID пользователя (@eventParam0)
-
ID подзадачи (@eventParam1)
35
После удаления родительской
Параметры события:
-
ID пользователя (@eventParam0)
-
ID родительской задачи (@eventParam1)
30
После удаления связи задач
Параметры события:
-
ID пользователя (@eventParam0)
-
ID связанной задачи (@eventParam1)
Сроки и даты¶
25
Задача просрочена
Нет параметров
За обработку этого события отвечает специальное задание, которое выполняется раз в минуту. Поэтому пакет действий, привязанный к этому событию, срабатывает как только срок выполнения задачи становится меньше текущего времени на сервере "Первой Формы"
43
Перед изменением даты планового начала задачи
Параметры события:
-
Дата (@eventParam0)
-
ID пользователя (@eventParam1)
47
Перед изменением даты планового окончания задачи (Устаревшее, не используется)
Параметры события:
-
Дата (@eventParam0)
-
ID пользователя (@eventParam1)
Параметр Дата планового окончания задачи выводится из использования, вместо него используется параметр Срок. На переходный период данное смарт-событие возникает при изменении срока задачи, впоследствии оно также будет выведено из использования. Рекомендуется вместо него использовать смарт-событие Перед сменой срока
45
Перед изменением даты фактического окончания задачи
Параметры события:
-
Дата (@eventParam0)
-
ID пользователя (@eventParam1)
8
Перед сменой даты начала работы
Параметры события:
-
ID пользователя (@eventParam0)
-
Дата (@eventParam1)
-
Старая дата (@eventParam2)
-
Причина (@eventParam3)
10
Перед сменой срока
Параметры события:
-
ID пользователя (@eventParam0)
-
Новый срок (@eventParam1)
-
Старый срок (@eventParam2)
-
Причина (@eventParam3)
44
После изменения даты планового начала задачи
Параметры события:
-
Старая дата (@eventParam0)
-
ID пользователя (@eventParam1)
48
После изменения даты планового окончания задачи (Устаревшее, не используется)
Параметры события:
-
Старая дата (@eventParam0)
-
ID пользователя (@eventParam1)
Параметр Дата планового окончания задачи выводится из использования, вместо него используется параметр Срок. На переходный период данное смарт-событие возникает при изменении срока задачи, впоследствии оно также будет выведено из использования. Рекомендуется вместо него использовать смарт-событие После смены срока
46
После изменения даты фактического окончания задачи
Параметры события:
-
Старая дата (@eventParam0)
-
ID пользователя (@eventParam1)
9
После смены даты начала работы
Параметры события:
-
ID пользователя (@eventParam0)
-
Старая дата (@eventParam1)
-
Причина (@eventParam2)
11
После смены срока
Параметры события:
-
ID пользователя (@eventParam0)
-
Старый срок (@eventParam1)
-
Причина (@eventParam2)
163
После установки повторения
Параметры события:
-
Номер задачи (@eventParam0)
-
ID пользователя (@eventParam1)
Файлы¶
24
Вложен файл
Параметры события:
-
ID пользователя (@eventParam0)
-
ID файла (@eventParam1)
Файл может вкладываться только в задачу, а не в ДП типа "Файл". Событие автоматически вызывается при завершении процесса редактирования файла через WebApps
151
Перед вложением файла
Параметры события:
-
ID пользователя (@eventParam0)
-
Имя файла (@eventParam1)
-
Размер файла в кб (@eventParam2)
-
Расширение файла (@eventParam3)
94
Перед редактированием файла
Параметры события:
-
ID пользователя (@eventParam0)
-
ID файла (@eventParam1)
-
Идентификатор ДП (@eventParam2)
-
Идентификатор столбца (@eventParam3)
-
Идентификатор строки (@eventParam4)
-
Идентификатор задачи (@eventParam5)
-
Идентификатор email (@eventParam6)
-
Идентификатор комментария (@eventParam7)
Событие возникает в момент открытия файла на просмотр. Совместно с действием "Отмена" используется для ограничения возможности редактирования файла. В этом случае в смарт-фильтре нужно указать, кто не должен редактировать файл. Для определения прав нужно пользоваться параметром события "Редактирующий пользователь" (а не "Текущий пользователь").
При открытии файла в WebApps не будут отображаться кнопки для сохранения файла.
В случае отмены события файл будет открываться только на чтение вне зависимости от прав пользователя.
Событие возникает при редактировании файлов, вложенных как в ДП "Файл", так и непосредственно в задачу. Поэтому в смарт-фильтре нужно указывать, какой именно файл редактируется. Для этого используется параметр "Редактируемый файл"
152
Перед удалением файла
Параметры события:
-
ID пользователя (@eventParam0)
-
ID файла (@eventParam1)
96
После добавления новой версии файла
Параметры события:
-
ID пользователя (@eventParam0)
-
ID файла (@eventParam1)
105
После изменения содержимого файла (без изменения версии)
Параметры события:
-
ID пользователя (@eventParam0)
-
ID файла (@eventParam1)
Глобализация категорийных событий¶
Начиная с версии 2.268 Скульптор (задача #2059502) введён механизм глобализации событий, которые ранее работали только в контексте категории.
Суть: в коде появился флаг CanBeGlobal у EventInfo. Если событие помечено этим флагом, его можно привязать к пакету действий в разделе Общие SMART без указания категории. Такой пакет будет срабатывать при наступлении события в любой задаче системы, независимо от категории.
Как это работает:
- При наступлении события (например, написании комментария) сначала срабатывают категорийные пакеты действий (как раньше), затем — глобальные пакеты (без привязки к категории).
- Глобальный пакет видит все те же контекстные параметры (@eventParam0, @eventParam1, ...), что и категорийный.
- Смарт-фильтры в глобальном пакете работают штатно — можно ограничить срабатывание по любым условиям.
События с поддержкой глобального режима:
| EventID | Событие | С версии |
|---|---|---|
| 29 | После написания комментария (AfterPostComment) |
2.268 |
Список будет расширяться по мере добавления флага canBeGlobal: true к другим событиям в EventsInfoInitialization.cs.
Отличие от исторически глобальных событий: события из групп «Глобальные», «Exchange», «Пользователи» изначально работают только в глобальном контексте и не привязываются к категориям. Глобализированные события (с CanBeGlobal) — это категорийные события, которые дополнительно могут работать глобально.