Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

ХранилищеОбщихНастроек.Загрузить() возвращает неопределено при указании пользователя

ХранилищеОбщихНастроек.Загрузить() возвращает неопределено при указании пользователя
Я
   Тенепопятам
 
29.12.21 - 14:52
ХранилищеОбщихНастроек.Загрузить("КлючОбъекта","КлючНастроек") возвращает настройку текущего пользователя
ХранилищеОбщихНастроек.Загрузить("КлючОбъекта","КлючНастроек",,ПользователиКлиентСервер.ТекущийПользователь()) возвращает неопределено.

Для некоторых пользователей срабатывают корректно оба варианта. В чем может быть дело?
   ДенисЧ
 
1 - 29.12.21 - 14:53
Права?
   fisher
 
2 - 29.12.21 - 14:57
ПользователиКлиентСервер.ТекущийПользователь() ссылку на справочник пользователей возвращает. Ее представление может отличаться от имени входа.
   Тенепопятам
 
3 - 29.12.21 - 15:40
(1) Точно нет. Проверял под собой: для себя без параметра - норм, с параметром - неопределено, для первого пользователя - норм (с параметром), для второго тоже неопределено. (2) И так и сяк пробовал, и по ссылке и по наименованию строкой - результат одинаковый.
   fisher
 
4 - 29.12.21 - 15:49
(3) Если скопируешь один в один строку из наименования пользователя в КОНФИГУРАТОРЕ, то должно отработать.
   Тенепопятам
 
5 - 29.12.21 - 15:59
(4) Пробовал и так - результат аналогичный
   Тенепопятам
 
6 - 29.12.21 - 15:59
Может платформа глючит...
   Жан Пердежон
 
7 - 29.12.21 - 16:02
(3) какая ссылка, какое наименование? тебе говорят - логин нужен
   fisher
 
8 - 29.12.21 - 16:04
Может и платформа. Но чаще человеческий фактор.
Можешь еще под админом поглядеть внимательно на "проблемные" настройки. Инструментами разработчика например или самому обработку накидать. И посимвольно сравнить имя пользователя под которым они лежат в хранилище с тем, что ты ему скормить пытаешься.
   Тенепопятам
 
9 - 29.12.21 - 17:05
(8) Так и оказалось - видимо пользователя переименовали. Получается, что если параметр "пользователь" не указывать, то пользователь ищется по УИДу, а если указывать то по наименованию? Т.е. получается надо или пересоздавать пользователя или удалять его из хранилища? Методом Удалить() кстати удалить пользователя из хранилища не получилось - удалились только настройки.
   fisher
 
10 - 29.12.21 - 17:19
(9) Нет. Уиды пользователей в хранилище настроек не фигурируют. Только их названия, как они заданы в конфигураторе.
Цитата из СП: "В случае переименования пользователя прежние настройки не заменяются. Если будет создан пользователь, имя которого совпадает с именем прежнего пользователя, для него будут использованы существующие настройки."
   Тенепопятам
 
11 - 29.12.21 - 20:01
(10) Спасибо, разобрался. Меня ввело в заблуждение то, что настройку можно было получить в том числе по ссылке на справочник "Пользователи", если имя пользователя совпадает с именем пользователя ИБ.
   Тенепопятам
 
12 - 29.12.21 - 20:09
Хотя, даже не обязательно совпадает. Просто в некоторых случаях настройку можно было получить по ссылке или имени пользователя.
   hhhh
 
13 - 30.12.21 - 01:58
(12) там же вроде получить настройку другого пользователя можно только с административными правами. Если административных прав нет, то можно вытащить только свои настройки.
   Тенепопятам
 
14 - 30.12.21 - 09:25
(13) Я под админскими эксперименты проводил. Сам код тоже в РЗ крутится с админскими правами.
   fisher
 
15 - 30.12.21 - 09:56
(11) Метод принимает строку. При передаче ссылки происходило просто неявное преобразование ссылки к строковому типу (получение представления ссылки). В любых непонятных ситуациях надо первым делом в СП смотреть.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.