Блог Программиста 1С


Нажмите, чтобы связаться со мной:

WhatsApp: 8 919 352 82 17
почта: meshkova.a.s@mail.ru
Telegram: blogpro1c
VK: vk.com/kursy_po_1c

  • Услуги программиста 1С Удаленно

  • Статьи
  • Скачать Отчеты/Обработки
  • Курс Сам себе Программист 1С
  • Курс — АНАЛИТИК 1С
  • Контакты/Стоимость работы

Почему Профиль групп доступа не назначает Роль

23.08.2022 от Программист 1С 3 Комментарии

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

Роли

Роли в конфигураторе 1С

Очень неприятно, много работы впустую. В чем же может быть дело? Мне известно 2 причины, рассмотрим их в данной статье.

1. Нужно запустить обработку Обновление вспомогательных данных

Данная обработка может быть либо встроена в конфигурацию, либо ее можно найти на диске ИТС. Эту обработку нужно запускать после добавления новых ролей. Она обновит данные в справочнике «Идентификаторы объектов метаданных». Причем порядок ваших действий должен быть такой:

  • Снять галочки в правах пользователей с вашего нерабочего профиля
  • Удалить нерабочий профиль
  • Запустить обработку
  • Создать новый профиль с вашей новой ролью
  • Назначить профиль пользователям

Если у вас планируется обновление конфигурации можете вместо запуска обработки выполнить его, т.к. во время обновления все эти функции тоже запускаются.

2. Назначение новой роли пользователю с правами Администратора

Если вы проделали все предыдущие пункты, но ваш профиль групп доступа все равно не назначает роли и права, обратите внимание  на такой момент — в типовых конфигурациях 1С последних версий, если у пользователя есть роль Администратор или Полные права то вы не сможете присвоить ему какую-либо другую роль. Это прописано в коде программы и при назначении ролей идет проверка «Если роль Администратор или Полные права тогда» назначение ролей пропускается.

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

Покажу вам, один пример как я поступила в данной ситуации, может это конечно не лучший вариант, но со свой задачей он справляется.

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

Что было сделано:

  1. Создан новый профиль групп доступа без ролей
  2. Назначен нужному пользователю (При этом данные о назначении автоматически записываются в справочник «Группы доступа»)
  3. При создании на сервере форм элемента и списка прописан следующий код:
1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ГруппыДоступаПользователи.Пользователь КАК Пользователь
|ИЗ
| Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи
|ГДЕ
| ГруппыДоступаПользователи.Ссылка.Наименование = ""Управление пользователями""";
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
МассивПользователей = Новый Массив;
МассивПользователей = РезультатЗапроса.ВыгрузитьКолонку("Пользователь");
Если МассивПользователей.Количество()>0 Тогда
Если МассивПользователей.Найти(ПараметрыСеанса.ТекущийПользователь) = Неопределено Тогда
Отказ = Истина;
Сообщить("Недостаточно прав!")
КонецЕсли;
КонецЕсли;

В коде выполняется проверка, назначен ли текущему пользователю новый, созданный мной профиль, «Управление пользователями».

Надеюсь статья была вам полезна, если остались вопросы, вы всегда можете обратиться ко мне.

Если вы хотите научиться самостоятельно справляться с задачами, с которыми обычно вы обращаетесь к Программистам 1С — приглашаю Вас на мой курс Аналитик 1С

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

👆 Там делюсь секретами работы в 1С, о которых вы никогда не узнаете от программистов. 🤫

Похожие записи:

    Нарушение прав доступа! При открытии внешней обработки 1С Если при попытке открытия внешней обработки в 1С 8.3 вы...
    Автозапуск 1С с открытием внешней обработки В данной статье описано, как настроить автозапуск 1С с открытием...
    Вывести сообщение пользователю с привязкой к конкретной строке табличной части. В том случае, когда производится проверка в табличной части с...
    Ошибка при входе в 1С — Сервер баз данных не обнаружен Иногда при работе с 1С возникает очень неприятная ошибка —...

Категории: Статьи Метки: 8.3, Пользователи

От Программист 1С

Просмотреть все записи от Программист 1С по этой ссылке.

Комментарии

  1. Олег:
    15.09.2020 в 06:11

    Господи и почему эту информацию так сложно было найти, спасибо автору

    Ответить
    • Программист 1С:
      15.09.2020 в 06:27

      Пожалуйста, рада что пригодилось)

      Ответить
  2. Нина:
    15.11.2021 в 10:52

    Спасибо огромное! Очень изящное и краткое решение!

    Ответить

Добавить комментарий Отменить ответ

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

ИП Мешкова Алена Сергеевна
ИНН 745311572100
ОГРНИП 323745600072332
Сведения об образовательной организации
Лицензия на осуществление образовательной деятельности № Л035-01235-74/02016029
Эл. почта: meshkova.a.s@mail.ru
Copyright © 2015-2025
Публичная оферта
Политика обработки персональных данных
Согласие на обработку персональных данных
Согласие на получение рекламной и информационной рассылки
Яндекс.Метрика