Вопрос

Здравствуйте, есть необходимость переименовать организационную роль all emploees во "Все сотрудники" пока переименовал название роли в тестовой системе, новым пользователям роль присваивается, выдается записям. 

Переименовывал кто-то орг. роль all employees? Будут последствия для системы? 

У меня такой же вопрос

1 комментарий
Лучший ответ

Добрый день!
По сути орг. роль - это запись в таблице SysAdminUnit.
И должна быть связка по Id. Так что проблем быть не должно.

PS: поиск по "all emploees" по исходным кодам результата не дает

Добрый день!
По сути орг. роль - это запись в таблице SysAdminUnit.
И должна быть связка по Id. Так что проблем быть не должно.

PS: поиск по "all emploees" по исходным кодам результата не дает

Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Здравствуйте

Есть задача скрыть редактирование поля страны в детали по организационным ролям(супервайзер, руководители, менеджеры), закрыть право на редактирование для менеджеров.
Пробывал разные варианты через конфигурацию и добавления правил, все равно не работает.
Версия bpm7.6.

Как лучше мне это сделать?

У меня такой же вопрос

5 комментариев

Здравствуйте, Сергей!

Вы можете видимость поля задать бизнес правилом. Параметр видимости будет определяться в момент открытия страницы редактирования (Вам необходимо переопределить метод onEntityItialized()). Замещенный метод onEntityItialized() должен вызывать родительский, а также проверять вхождение пользователя в роли (используйте ESQ по объекту SysAdminUnitInRole). Обратите внимание, что один пользователь может входить в несколько ролей.

Сформировал запрос к таблице SysAdminUnitInRole по своей Id

SELECT *
FROM            dbo.SysAdminUnit sa LEFT JOIN
                         dbo.SysAdminUnitInRole saur ON sa.Id = saur.SysAdminUnitId
WHERE sa.Id = 'мой Id'

Вернуло 3 строки - это означает, что в меня есть 3 роли?

Да, это значит что Администратор с sa.Id = 'мой Id' входит в три роли
Если вы выполните

SELECT saur.SysAdminUnitId, saur.SysAdminUnitRoleId
FROM            dbo.SysAdminUnitInRole saur
Where saur.SysAdminUnitId = 'мой Id'

То увидите айдишники ролей

Спасибо за подсказку, пытался вывести название ролей:

SELECT saur.SysAdminUnitId, saur.SysAdminUnitRoleId, s.Name
FROM            dbo.SysAdminUnitInRole saur Left JOIN
                         dbo.SysAdminUnit s ON saur.SysAdminUnitId = s.Id
WHERE saur.SysAdminUnitId = 'мой Id'

Результат имя моего контакта. Может я неправильно делаю?

так ваш запрос и выводит имя контакта из s.Name (SysAdminUnit)

можно сделать так

select s.Name 
from SysAdminUnit s
where s.id in (
select saur.SysAdminUnitRoleId
from dbo.SysAdminUnitInRole saur
where saur.SysAdminUnitId = 'мой Id'
)

Вот только одна запись похоже тоже будет вашим контактом, т.к. есть соответствие одинаковых id в SysAdminUnitInRole

Войдите или зарегистрируйтесь, чтобы комментировать
Публикация

Для определения прав доступа к объектам и системным операциям используются организационные
и функциональные роли пользователей.

Организационная роль является элементом организационной структуры компании, ее подразделением, например, “Отдел продаж московского филиала” или “HR-отдел киевского филиала”.

Функциональная роль отражает должность, которую сотрудник занимает в компании, например,
роль “Менеджеры по продажам”.

Функциональная роль может включать в себя ряд организационных ролей. Например, в
функциональную роль “Менеджеры по продажам” могут входить организационные роли “Отдел
продаж московского филиала” и “Отдел продаж киевского филиала”.

Используя функциональные роли, вы можете настроить одинаковые права доступа для всех
сотрудников, которые занимают определенную должность, независимо от того, в каком
подразделении компании они работают. Например, вы можете предоставить доступ к разделу
[Продажи] для менеджеров по продажам, работающим в московском в киевском филиале
компании.

Чтобы предоставить доступ к разделу системы для определенной функциональной роли:

1.   Добавьте и настройте функциональную роль.

2.   Предоставьте доступ к объекту для добавленной функциональной роли.

Как добавить и настроить функциональную роль

Предположим, вам необходимо предоставить доступ к разделу [Продажи] для менеджеров
по продажам, работающим в московском и киевском филиалах компании. Для этого:

1.   Из дизайнера системы перейдите в раздел управления ролями и пользователями,
нажав на ссылку [Функциональные роли].

2.   На странице раздела нажмите на кнопку [Добавить]. На появившейся странице функциональной
роли определите ее параметры:

a.   Введите название роли, например, “Менеджеры по продажам”.

b.   На детали [Организационные роли] добавьте организационные роли, которые должны
входить в данную функциональную роль, например, “Отдел продаж московского филиала”
и “Отдел продаж киевского филиала”.

На заметку

Если доступ к разделу дополнительно требуется предоставить отдельным пользователям,
не входящим в добавленные организационные роли, добавьте необходимых пользователей
на детали [Пользователи].

Если необходимо определить список диапазонов IP-адресов, с которых пользователям
и их руководителям будет разрешен вход в систему, используйте деталь [Диапазон разрешенных
IP-адресов] вкладки [Правила доступа].

c.   Закройте страницу записи.

3.   Актуализируйте настроенные роли. Для этого в меню действий раздела выберите
команду [Актуализировать роли].

Актуализация ролей

Актуализация ролей

В результате в систему будет добавлена новая функциональная роль “Менеджеры по продажам”,
включающая в себя менеджеров по продажам московского и киевского филиалов.

Как предоставить доступ к разделу

Чтобы предоставить доступ к разделу:

1.   Перейдите в раздел [Доступ к объектам], используя ссылку [Права доступа на объекты]
дизайнера системы.

2.   В списке раздела выберите необходимый объект, например, “Продажа”. Объект должен
администрироваться по операциям. Если администрирование по операциям отключено, установите
признак в колонке [Администрируется по операциям] для выбранного объекта. Обратите
внимание, что установка признака может занять некоторое время.

3.   Перейдите на деталь [Доступ к объекту].

4.   Нажмите на кнопку [Добавить] панели инструментов детали и в открывшемся окне
добавьте роль, для которой будет предоставлен доступ к разделу, например, роль “Менеджеры
по продажам”.

В результате на деталь будет добавлена роль “Менеджеры по продажам”, пользователи
которой смогут читать, добавлять, изменять и удалять данные раздела [Продажи]. Если
необходимо запретить какую-либо из этих операций, например, удаление записей, установите
запрет на удаление в соответствующей колонке.

Если отдельные пользователи входят в несколько ролей одновременно, например, при
совмещении должностей, и если для таких ролей определены разные права доступа, то
будут применены права тех ролей, которые находятся выше в списке.

Например,  сотрудник одновременно входит в роль “Менеджеры по продажам” и “Менеджеры
поддержки продаж”. Для роли “Менеджеры поддержки продаж” определено право только
на чтение раздела [Продажи], а для роли “Менеджеры по продажам” — право на все операции.
Чтобы сотрудник получил максимальные права доступа, переместите роль “Менеджеры по
продажам” так, чтобы она оказалась выше роли “Менеджеры поддержки продаж”. В результате
пользователь получит доступ к разделу [Продажи] в соответствии с правами, определенными
для роли “Менеджеры по продаже”, а не “Менеджеры поддержки продаж”.

Для перемещения ролей в списке используйте кнопки [Вверх] и [Вниз] панели инструментов
детали.

Поделиться

0 комментариев
Войдите или зарегистрируйтесь, чтобы комментировать