Смарт-доступ¶
Смарт-доступ служит для предоставления пользователям прав на отдельные задачи или ДП в задачах в зависимости от определенных условий. Для задач с помощью смарт-доступа настраиваются права на просмотр, исполнение, редактирование заказчика, исполнителя, акцептантов и смену срока, а так же добавление в исполнители и подписчики. Для ДП настраиваются права на просмотр и редактирование.
ℹ️ Правила смарт-доступа действуют только в уже созданных задачах и не действуют при создании задачи
Расчет смарт-доступа инициируется при изменении одного из списка ключевых ДП, указанных в правиле смарт-доступа. При этом вызывается служебное событие Во время расчета смарт-доступа, в параметрах которого доступен контекст текущей задачи. Событие вызывает пересчет смарт-выражения, указанного в правиле смарт-доступа. Смарт-выражение возвращает список ID пользователей, которым должен быть предоставлен доступ.
ℹ️ Расчет смарт-доступа выполняется только при изменении значений указанных ДП (даже если в смарт-выражении используются иные параметры). Если необходимо настроить расчет смарт-доступа к задачам в зависимости от изменения основных параметров (таких как заказчик, исполнители и т.п.), можно создать в категории вспомогательные ДП и копировать в них значения основных параметров, а условия смарт-доступа настраивать на эти ДП
ℹ️ Для пересчета смарт-доступа можно использовать смарт-действие Пересчитать смарт-доступ в задачах. Например, пакет с этим смарт-действием может быть привязан к расписанию
ℹ️ Если на категорию настроен смарт-доступ, то она будет отображаться в дереве категорий независимо от того, есть ли у пользователя доступ хотя бы к одной задаче в этой категории
Правила могут задаваться для задач определенных категорий.
Правила смарт-доступа к ДП доступны на странице Список ДП в настроках категории.
Примечание (AdminSPA, актуализация 2026-02-11): В новом административном интерфейсе правила смарт-доступа к ДП сохраняются независимо от основной формы настроек параметра. Каждое правило сохраняется сразу при нажатии кнопки "Добавить параметр" в модальном окне, что предотвращает потерю данных и упрощает добавление множественных правил. После сохранения правила форма автоматически очищается для добавления следующего правила.
Создание смарт-доступа¶
Для создания нового смарт-доступа нажмите кнопку Создать над таблицей и в открывшемся окне задайте нужные настройки.
| Параметр | Описание |
|---|---|
| Наименование | Имя условия |
| Смарт выражение для пользователей | Общее смарт-выражение, возвращающее список ID пользователей, которым будет предоставлен доступ. В смарт-выражении доступен контекст текущей задачи. |
| Доступ | Вид предоставляемого доступа |
ℹ️ Если смарт-выражение, формирующее список ID-пользователей, возвращает null или ошибку, то пересчет смарт-доступа прерывается. Если список пользователей пустой, должна возвращаться пустая строка
После создания доступа нажмите на кнопку Категории в колонке Действия и создайте соответствие текущего правила и категории, на задачи которой оно должно распространяться.
Редактирование смарт-доступа¶
Для редактирования правила нажмите на соответствующую строку таблицы.
Удаление смарт-доступа¶
Для удаления смарт-доступа выберите пункт Удалить в контекстном меню строки таблицы или нажмите кнопку Удалить на форме редактирования правила.
Перед удалением убедитесь, что в таблице базы данных SmartAccessViewTasks нет записей для удаляемого смарт-доступа. При необходимости вы можете очистить их по кнопке Удалить привязки доступа к задачам в списке Действий.
Действия¶
В колонке Действия по кнопке раскрывается список доступных действий со смарт-доступом.
Пересчет при добавлении пользователя в группу¶
В открывшемся окне настраивается соответствие смарт-доступа с группами, при изменении которых будет выполняться расчет смарт-доступа для ДП.
Пересчет при смене ДП¶
В открывшемся окне настраивается соответствие смарт-доступа с ДП, при изменении которых будет выполняться расчет смарт-доступа для задачи. При наличии настроенных соответствий с ДП, смарт-доступ будет рассчитываться после создания задачи. Повторный расчет не будет производиться, если параметр уже был заполнен при постановке.
Синк активных задач, Синк всех задач¶
Пересчет смарт-доступа автоматически запускается каждый раз при изменении указанных ДП. Но его можно запустить и вручную: по нажатию кнопки Синк активных задач в соответствующей строке смарт-доступ будет пересчитан для всех активных задач указанных категорий, а по нажатию кнопки Синк всех задач — для всех (активных и завершенных) задач указанных категорий.
Удалить привязки доступа к задачам¶
Удаляет записи с текущим смарт-доступом в таблице базы данных SmartAccessViewTasks. Рекомендуется выполнить перед удалением смарт-доступа.
Смарт-доступ в прежнем интерфейсе администрирования Полезные ссылки