Имя: Пароль:
1C
1С v8
Проверить доступна ли роль у другого пользователя
,
0 Boudybuilder
 
27.09.18
15:34
Здравствуйте, друзья. Есть такая задача.

Находим пользователя:

Пользователь = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору();

Проверяем содержит ли роль:
Пользователь.Роли.Содержит(Метаданные.Роли.ФанРедактированиеЧека);

Но коллекция Роли - пустая. Даже если УстановитьПривилегированныйРежим(Истина);  

Как быть? Ведь нужно проверить доступна ли роль другого пользователя, когда у текущего нет полных прав. Заранее спасибо.
1 Гипервизор
 
27.09.18
15:42
Проверяли что именно находится в "Пользователь"?
2 Boudybuilder
 
27.09.18
15:44
Пользователь    -     ПользовательИнформационнойБазы
3 Cool_Profi
 
27.09.18
15:44
"Примечание:

Доступно только пользователю с административными правами."
4 Гипервизор
 
27.09.18
15:47
(2) Это понятно. А вот какой именно пользователь там? Тот самый "другой", который нужен?
5 Гипервизор
 
27.09.18
15:49
(3) + 1, потому и спрашиваю ибо:
"В случае, если пользователь имеет административные права, то допускается поиск любого пользователя. Если пользователь не имеет административных прав, то по уникальному идентификатору допускается поиск только того пользователя, под которым данный пользователь аутентифицировался."
6 Boudybuilder
 
27.09.18
15:50
(3) Да, а как быть?

Ведь задача такова, что клиент захотел чтобы после проведения форма ЧекККМ ТолькоПросмотр = истина.

По внешнему событию, мы подносим к сканеру информационную карту, закрепленную за неким пользователем у которого есть роль на редактирование ЧекККМ. И нужно проверить, есть ли у этого пользователя по Информационной карте роль, тогда ТолькоПросмотр = Ложь.

Как иначе решить если не через роль, не знаю. Может через регистр дополнительные права?
7 Гипервизор
 
27.09.18
15:55
(6) а если чек уже пробит? все равно юзеру с волшебной картой разрешить редактирование??
8 FIXXXL
 
27.09.18
16:05
(6) если конфа на БСП, можно вытащить из регистров(справочников) подсистемы управления доступом, там это завязано на ИдентификаторыМетаданных
да и типовой код в БСП под это есть ЕМНИП
Ошибка? Это не ошибка, это системная функция.