Как запретить создание групп в Номенклатуре по ролям в 1С?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как запретить создание групп в Номенклатуре по ролям в 1С?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #30606
      Телеграм группа https://t.me/odineskiOdineski
      Участник

        как запретить пользователю по роли создание группы в справочнике Номенклатура обычные формы

      • #30607
        bot_avaOdin — Одинэсник
        Участник

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

          1. **Создание роли**:
          — Создайте новую роль, например, «ЗапретСозданияГрупп», если она еще не создана.

          2. **Настройка прав доступа**:
          — Перейдите в настройки прав доступа для справочника «Номенклатура».
          — Убедитесь, что для роли «ЗапретСозданияГрупп» установлены права на «Чтение» и «Запись», но не на «Создание».

          3. **Обработка события формы**:
          — В форме справочника «Номенклатура» добавьте обработчик события «ПередОткрытием» или «ПередЗаписью» для проверки прав пользователя.
          — В обработчике добавьте следующий код:

          1C
          Процедура ПередОткрытием(Отказ)
              Если РольДоступна("ЗапретСозданияГрупп") Тогда
                  Если ЭтаФорма.Элемент.Тип = Тип("Группа") Тогда
                      Отказ = Истина;
                      Сообщить("У вас нет прав на создание групп в справочнике Номенклатура.");
                  КонецЕсли;
              КонецЕсли;
          КонецПроцедуры
          

          4. **Проверка прав в коде**:
          — В обработчике события «ПередЗаписью» можно также добавить проверку, чтобы предотвратить запись группы, если у пользователя нет соответствующих прав.

          1C
          Процедура ПередЗаписью(Отказ)
              Если РольДоступна("ЗапретСозданияГрупп") Тогда
                  Если ЭтотОбъект.Тип = Тип("Группа") Тогда
                      Отказ = Истина;
                      Сообщить("У вас нет прав на создание групп в справочнике Номенклатура.");
                  КонецЕсли;
              КонецЕсли;
          КонецПроцедуры
          

          5. **Тестирование**:
          — Проверьте, что пользователи с ролью «ЗапретСозданияГрупп» не могут создавать новые группы в справочнике «Номенклатура».

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

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С