Сохранение, чтение и удаление настроек пользователя в 1С 8.3



&НаСервере

Процедура СохранениеЧтениеУдалениеНастроекПользователя()



// Сохранение произвольных настроек конкретного пользователя

НастройкиПользователя = Новый Структура;

НастройкиПользователя.Вставить("Фамилия", "Дарк");

НастройкиПользователя.Вставить("Имя", "Жанна");

НастройкиПользователя.Вставить("Пол", "Ж");

НастройкиПользователя.Вставить("Возраст", 19);



// Параметры: Ключ объекта, Ключ настроек, Настройки, Описание настроек, Владелец настроек,

ХранилищеОбщихНастроек.Сохранить("Отчет.ОСВ", "КлючНастроек", НастройкиПользователя, ,ИмяПользователя());



// Сохранение произвольных настроек для всех пользователей

ВсеПользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();

Для Каждого Пользователь Из ВсеПользователи Цикл

ХранилищеОбщихНастроек.Сохранить("Отчет.ОСВ", "КлючНастроек", НастройкиПользователя, ,Пользователь.Имя);

КонецЦикла;



// Чтение сохраненных настроек пользователя

ЧтениеНастроек = Неопределено;

Попытка

ЧтениеНастроек = ХранилищеОбщихНастроек.Загрузить("Отчет.ОСВ", "КлючНастроек",,ИмяПользователя());

Исключение

Сообщить("Не достаточно прав доступа к настройкам пользователя: "+ИмяПользователя());

КонецПопытки;



Если ЧтениеНастроек = Неопределено Тогда // Значит настроек нет

Сообщить("Не получилось прочитать настройки.");

Иначе // Чтение настроек

Сообщить("Имя:"+ЧтениеНастроек.Имя+"; Фамилия:"+ЧтениеНастроек.Фамилия+

"; Пол:"+ЧтениеНастроек.Пол+"; Возраст:"+ЧтениеНастроек.Возраст);

КонецЕсли;



// Удаление сохраненных настроек пользователя

ХранилищеОбщихНастроек.Удалить("Отчет.ОСВ", "КлючНастроек", ИмяПользователя());



// Удаление сохраненных настроек у всех пользователей

ХранилищеОбщихНастроек.Удалить("Отчет.ОСВ", "КлючНастроек", Неопределено);



КонецПроцедуры



✍️ @odin1C_rus