Зачем я тут описываю элементарные вещи?
При настройке правил создания и обработки документов приходится расписывать согласующих, исполняющих и т.д. при этом при наличии большого числа филиалов, организаций, подразделений, правила обработки становятся сложными не читаемыми и муторными в заполнении. Можно ли это максимально упросить, сделать чтобы вместо 100 срочек отборов и правил, была одна? Да можно, но начнем с простого, с прав на создание документов, а правила обработки опишем в следующей статье (если кому-то надо?), там без кода не получится, но ничего страшного нет.
В статье описаны методы, опробованные на реальной Орагинзации, надеюсь кому-то будет полезно.
Рассмотрим известные мне на сегодняшний день варианты, от самых простых - "решение в лоб" до более интересных.
Описанные примеры были сделаны на основе демо версии документооборота, без доработок и расширений. Конфигурация: Документооборот КОРП, редакция 3.0 (3.0.8.20) и редакция 3.0 (3.0.6.6). По мере выхода обновлений, буду стараться дописывать статью, если это будет необходимо.
Задача.
В организации существует три филиала. Необходимо разрешить создание документа "Акт" только директору филиала.
Вариант решения № 1 - "Решение в лоб".
Заводим сотрудника:
Настройка - > Сотрудники и подразделения
Переходим на вкладку роли, заводим новую роль:
директор филиала, используется как с объектами адресации, так и без. Это значит, что можно указывать подразделение, можно не указывать. Считаем подразделение - филиалом.
Даем эту роль нужным людям в их сотрудниках. Каждому своего филиала (подразделения)
Далее настраиваем сам документ:
НСИ->Виды документов ->Наш вид документа (Акт)
И просто, как на картинке выше, для каждого филиала делаем строчку. Да да, долго и не удобно, поэтому это решение называю "в лоб". К плюсам данного варианта отнесу прозрачность. А так же гибкость, можно настроить разные права для директора каждого филиала, хотя это на мой взгляд будет "кривым" бизнес процессом и автоматизацией бардака. Но задачи бывают разные. Еще более примитивное решение, это указать конкретного сотрудника вместо роли с адресацией, это даже описывать не буду.
А можно ли не указывать филиал (основной объект адресации роли) и чтобы работало? Да можно. И это вариант №2.
Вариант №2 "Одной строчкой для всех филиалов"
Также заводим роль директор филиала, см. вариант №1 выше.
Но каждому сотруднику даем не только Роль с указанием филиала (объектом адресации), но и без указания филиала.
В данном примере очищаю подразделение при добавлении роли
Зачем оставил роль с адресацией? Это нужно будет для настроек обработки документов, где важно чтобы документы по Кемерово шли на согласование именно к Кемеровскому директору.
Далее настраиваем сам документ:
НСИ->Виды документов ->Наш вид документа (Акт)->Создание документов
Кому разрешено: добавляем только одну строчку, указываем роль "Директор филиала" без указания филиала (Основного объекта адресации) вот так:
Заходим под Петровым ПП, проверяем права на создание:
Все работает.
Если же не дать сотруднику роль без объекта адресации, а оставить как было в варианте №1, то не будет работать.
Минусы, что при заведении нового сотрудника нужно давать ему как роль с объектом адресации, так и без. А так вариант рабочий, настроили так в крупном холдинге, проблем нет.
Вариант №3 "Рабочие группы"
Действительно, при выборе участника "Кому разрешено" создавать данный вид документа, можно указывать не только роли, конкретных пользователей, но и подразделения, рабочие группы, мероприятия и проекты. Разберем вариант по рабочим группам, так как он наиболее универсален, пригоден под разные задачи.
НСИ->Виды документов->Наш вид документа->Создание документов. Нажимаем добавить, раскрываем список "По рабочим группам", правой кнопкой добавить группу, заводим группу Директора филиалов.
Выбираем только что созданную группу. Всё. Готово, настройка вида документа завершена. Теперь включаем пользователей в группы.
Настройка->Сотрудники и подразделения->Нужный сотрудник
Нажимаем кнопку Группы и полномочия.
Добавляем сотруднику группу Директора филиалов.
Проверяем - работает.
Вариант тоже рабочий, достаточно прозрачный. К минусам могу отнести, что при создании сотрудника нужно не забывать указывать его в нужные группы, а таких может быть множество, и хорошо если в организации они заранее известны и определены, тогда может получится прозрачный понятный вариант раздачи прав.
Остальные варианты описывать не буду, работают они аналогично. Интересным, пожалуй, будет вариант назначить подразделение и указать там только руководителя, но это частное решение конкретно для этой задачи.
Нас же интересовали варианты универсальные, когда нужно назначать ролям с разными объектами адресации, подразделения, организации и др.
А можно ли при настройки обработки документов, при согласовании или исполнении также использовать роли, не расписывая каждую полную роль отдельно (для каждого филиала не задавать правила)? Да можно! Но это уже другая история, и совсем без кода там не получается, можно как расширить саму конфигурацию небольшой доработкой, так и использовать стандартные механизмы. Если интересно кому-нибудь, опишу в следующей статье и выложу расширение.