Пример добавления собственных ролей пользователям через расширение 1С












В публикации представлена пошаговая инструкция создания собственных ролей с использованием расширения 1С:Предприятие 8.3.10 и программа с примером.

Если в расширении создать новую роль, то интерактивно ее не назначить пользователю, в списке доступных ролей ее не будет

Для того чтобы назначить роль пользователю, необходимо в расширении создать общую команду

В обработчике команды указываем следующий код:

Далее в расширении создаем свою подсистему и добавляем в нее нашу общую команду

В основной конфигурации роль «Полные права» добавляем в расширение


Далее переходим в расширение и в перенесенной роли «Полные права» добавляем на просмотр «ПодсистемаРасширения»

И добавляем на просмотр команду Расш1_ДобавлениеРоли

Сохраняем и запускаем программу в пользовательском режиме.
Мы видим добавленную в расширение новую подсистему и добавленную в ней нашу команду назначение роли

Выбираем команду «Назначить роль пользователю»

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

Это говорит о том, что пользователю добавили роль через расширение

Переходим на закладку прочие мы видим эту роль

Если в конфигураторе отключить эту роль, то повторное добавление возможно также через пользовательский режим описанной выше общей командой.

19 Comments

  1. rusmil

    Почитал статью, и подумал, сколько надо сделать танцев с бубном, чтобы добавить пользователю роль. Думаю что фирма 1С в будущем доработает механизм, чтобы роль из расширения можно было включить пользователю простой установкой флага, как это делается сейчас для ролей конфигурации.

    Reply
  2. flyDrag

    В типовых решениях на базе последних БСП видел возможность интерактивной установки в профилях групп доступа доработанную через расширение роль.

    Reply
  3. apd1c

    Спасибо, дорогой Человек!

    Очень вовремя.

    Наверняка пришлось очень много повозиться, чтобы вычислить эту фичу. Или это есть в документации?

    Reply
  4. luser

    На платформе 8.3.10.2561, роль добавленная в расширении, нормально назначается через «Профили групп доступа» в БП3.0

    Reply
  5. flyDrag

    (4) если конфигурация написана не на БСП или зашитая БСП не поддерживает такие роли, то моя статья как раз подойдет.

    Reply
  6. klimbna

    При загрузке ошибка:

    Информация технической поддержки

    Обычная: Права на некоторые объекты ограничены профилем безопасности.

    Полный список находится в журнале регистрации.Право «Просмотр» на объект «Подсистема.Продажи» для роли «Расширение_РольКладовщик» ограничено профилем безопасности

    Право «Просмотр» на объект «Документ.ПоступлениеТоваровУслуг» для роли «Расширение_РольКладовщик» ограничено профилем безопасности

    Что за профиль — кластера, там пусто или еще где?

    Reply
  7. klimbna

    (6) Сам отвечу себе помогла статья https://infostart.ru/public/301821/

    Reply
  8. mista

    на БУ 3,0 при выполнении команды


    Код
    Reply
  9. spezc

    (8) ну что же вы, молодой человек, не можете проверить в отладчике, что сидит в переменной НоваяРоль? К гадалке не ходи, там Неопределено.

    Reply
  10. mista

    (9) как решить ?

    Reply
  11. spezc

    (10) вы же создали отдельную ветку, задавайте вопросы там https://forum.infostart.ru/forum9/topic193116/

    Reply
  12. radeoff

    Спасибо большое за помощь, внятную и подробную )

    Reply
  13. flyDrag

    (12) Рад, что помог.)

    Reply
  14. pafftis

    Люди добрые подскажите, я правильно понимаю что при добавлении этих новых ролей, мы можем в настройке пользователя указать её для конкретного пользователя и оно (расширение) будет доступно конкретно только этому пользователю?*

    Reply
  15. flyDrag

    (14) Да, верно..

    Reply
  16. pafftis

    завтра опробуем в таком случае…..

    Спасибо нужная вещь!

    Reply
  17. pafftis

    Не получается, пытался пытался.

    Мне нужно сделать расширение, и это расширение могло использовать только часть пользователей. Проще говоря переделываю форму реализации товаров и услуг под сенсорное управление.

    Добавил форму в расширении, изменил как мне нужно — Открываю стандартный 1с. Все стандартно — добавляю Расширение — всё естественно меняется, но мне нужно что бы всё менялось только у некоторых пользователей.

    Думал данная статья поможет, всё сделал, вроде но не чего не получается. Всё равно у всех пользователей изменённая форма.

    Reply
  18. flyDrag

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

    (17)

    Reply
  19. rrider

    Так то все работает, только назначенные роли периодичекский «слетают» и приходится переназначать роли командой «Назначить роль пользователю». Вероятно платформенный косяк, версия 8.3.13.1809.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *