Имя: Пароль:
1C
1С v8
В режиме 1С Предпри - программно получить данные по доступным ролям пользователя
0 FidelBoom
 
26.11.13
13:39
В режиме 1с предприятия, необходимо программно получить данные по доступным ролям пользователя, для последующей простановки ролей другому пользователю, возможно? Не могу найти... или хотя бы их вывести в список...мини отчет. но именно программно...
1 IamAlexy
 
26.11.13
13:40
в типовых есть соотв. процедуры и функци типа ролидоступны("...
2 ДенисЧ
 
26.11.13
13:41
ПользовательИнформационнойБазы.Роли (InfoBaseUser.Roles)
ПользовательИнформационнойБазы (InfoBaseUser)
Роли (Roles)
Использование:

Только чтение.
Описание:

Тип: РолиПользователя.
Содержит коллекцию ролей пользователя информационной базы.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Доступно только пользователю с административными правами.
3 FidelBoom
 
26.11.13
13:42
(2)  спасибо. А другому пользователю я могу программно проставить роли? Соответственно у меня полные права имеются. ?
4 dj_serega
 
26.11.13
13:42
РолиПользователя (UserRoles)
Элементы коллекции:

ОбъектМетаданных: Роль
Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются объект описания метаданного - Роль.

Методы:

Добавить (Add)
Очистить (Clear)
Содержит (Contains)
Удалить (Delete)

Описание:

Содержит коллекцию ролей пользователя.

Доступность:

Сервер, толстый клиент, внешнее соединение.
5 Ерепень
 
26.11.13
13:43
купить СП, я так понимаю, уже не предлагать?
6 dj_serega
 
26.11.13
13:44
(5) что-то в этом духе :)
(3)
ПользователиИнформационнойБазы.ТекущийПользователь().Роли.Добавить("ПолныеПрава")
7 FidelBoom
 
26.11.13
13:45
(6) Ок. Спасибо.
8 CepeLLlka
 
26.11.13
13:45
Функция ПолучитьСписокРолейПользователя(ИмяПользователя) Экспорт     
    СписокРолей = Новый Структура;
    Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени(ИмяПользователя);
    Для Каждого Роль ИЗ Пользователь.Роли Цикл
        СписокРолей.Вставить(Роль.Имя);
    КонецЦикла;
    Возврат СписокРолей;
    
КонецФункции
9 FidelBoom
 
26.11.13
13:53
(8)  Спасибо.
10 Sabbath
 
26.11.13
14:01
(2) подчеркну для автора

Доступно только пользователю с административными правами.
11 Sabbath
 
26.11.13
14:02
+(10) т.е. ни прочитать не добавить роли ты не от админа не сможешь, а тогда встает вопрос, зачем это надо) Не проще ли сразу поставить админу полные права?
12 CepeLLlka
 
26.11.13
14:03
(11)Сможешь.. Функцию что я привёл помещаешь в Привилегированный общий модуль и всё ок.
13 CepeLLlka
 
26.11.13
14:04
Ну или же просто
Глобальный контекст.ПривилегированныйРежим (Global context.PrivilegedMode)
Глобальный контекст (Global context)
ПривилегированныйРежим (PrivilegedMode)
Синтаксис:

ПривилегированныйРежим()
Возвращаемое значение:

Тип: Булево. Истина - включен привилегированный режим исполнения кода; Ложь - в противном случае.
Описание:

Определяет включение привилегированного режима исполнения кода.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

В режиме "Клиент" показывает, установлен ли привилегированный режим. В клиент-серверном - всегда Ложь.
См. также:

Глобальный контекст, метод УстановитьПривилегированныйРежим
14 Sabbath
 
26.11.13
14:05
(12) а да, так должно работать
15 Sabbath
 
26.11.13
14:07
(12) (13) ТС уже побежал делать, а ты не рассказал свой секрет))
16 CepeLLlka
 
26.11.13
14:09
Ничего страшного.. вернётся же..

Я просто пытаюсь помочь.. так как мне помогают тоже в том, чего я не знаю..
17 dj_serega
 
26.11.13
14:11
(16) В обычных ситуациях "человек в кепке" помогает :) А в сложных - волшебство мисты ;)
18 Sabbath
 
26.11.13
14:13
(16) может сделать, потестить от себя, внедрить на рабостях, а потом фин директор позвонит и скажет: эта ваша 1с вообще не работает)
19 Sabbath
 
26.11.13
14:13
+(18) *на радостях
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.