Как кодом удалить роль у пользователей (обычные формы)
Всем добрый.
Необходимо у огромной массы пользователей удалить одну роль.
Пишу след код:
Так вот, код везде идет. Удаляет, если после строчки "Пользователь.Роли.Удалить(Роль);" смотреть "Пользователь.Роли" - там роли которую я хочу удалить действительно нет. Но при повторном запуске обработки - она уже есть. Мне ещё необходимо как-то роли записать или что?
Необходимо у огромной массы пользователей удалить одну роль.
Пишу след код:
ПользователиМассив = ПользователиИнформационнойБазы.ПолучитьПользователей();
Для каждого СтрокаПользователи из ПользователиМассив Цикл
Если СтрНайти(СтрокаПользователи.ПользовательОС, "\\kry\testkry") Тогда // тут пока сделал проверку чисто по одному пользователю тестовому, потом условие будет другое
ИмяРоли = "МОЯ РОЛЬ"; // название тут конечно другое, своё внутрннее
Роль = Метаданные.Роли[ИмяРоли];
Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени(СтрокаПользователи.ПолноеИмя);
Если Пользователь <> Неопределено И Пользователь.Роли.Содержит(Роль) Тогда
Пользователь.Роли.Удалить(Роль);
КонецЕсли;
КонецЕСли;
КонецЦикла;
ПоказатьТак вот, код везде идет. Удаляет, если после строчки "Пользователь.Роли.Удалить(Роль);" смотреть "Пользователь.Роли" - там роли которую я хочу удалить действительно нет. Но при повторном запуске обработки - она уже есть. Мне ещё необходимо как-то роли записать или что?
По теме из базы знаний
- Свертка базы - или как свернуть базу УТ 10.3
- Подсистема прав доступа (анализ ролей, отладка RLS, английский код, обычные и управляемые формы)
- WEB-интерфейсы как механизм сбора и контроля данных в розничной сети. Инструменты и наработки
- DevOps для Плейстоцена. Скрещивание обычных форм толстого клиента с практиками CI/CD
- Отчеты с общей формой отчета. Типовые сценарии
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот