Как сохранять и восстанавливать настройки системы компоновки данных

miha 126 1 7 1

Через XML файл

//Сохранение настроек в файл может быть выполнено следующим образом (листинг 6.40):
//Листинг 6.40. Сохранение настроек
Процедура СохранитьНастройки(Кнопка)

    Настройки  = ОтчетОбъект.КомпоновщикНастроек.Настройки;
    НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO);
    Путь = СокрЛП(Константы.ПутьДоФайлов.Получить());

    Запись = Новый ЗаписьXML;
    
    Запись.ОткрытьФайл(Путь + "\config.xml");
    Запись.ЗаписатьОбъявлениеXML();
    
    НовыйСXDTO.ЗаписатьXML(Запись, Настройки, НазначениеТипаXML.Явное, ФормаXML.Элемент);
    
    Запись.Закрыть();

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

//Восстановление настроек из файла может быть выполнено следующим образом (листинг 6.41):
//Листинг 6.41. Восстановление настроек
Процедура ВосстановитьНастройки(Кнопка)

    Чтение = Новый ЧтениеXML;
    НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO);
    Путь = СокрЛП(Константы.ПутьДоФайлов.Получить());
    
    Чтение.ОткрытьФайл(Путь + "\config.xml");
    
    Настройки = НовыйСXDTO.ПрочитатьXML(Чтение);
    
    ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);

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

//В константе ПутьДоФайлов хранится путь до файла сохраняемых (восстанавливаемых) настроек.

//(с) Простые примеры разработки
1
Орфографическая ошибка в config (найдено 2): config

Комментарии

Cthulhu
#1, ред. 12 сентября 2022 20:45

складывать в реквизит объекта данных с типом хранилищезначения?
а с файлом чтобы не связываться - в памяти все компоновать (в Новый ПотокВПамяти())?
получилось бы гораздо интереснее imho


См. также

ПриСохраненииНастроекПодключенияВнешнейСистемы (БСП)

НастройкиСкрытияПерсональныхДанныхСистемы (БСП)

ИнтерактивноеИзменениеВыгрузкиСохранитьНастройки (БСП)

ПриЗаписиФормыНастройкиРегистрацииСобытий (БСП)

ПередНастройкойПараметровПодключения (БСП)

ИзменитьНастройкиСкрытияПерсональныхДанных (БСП)

ИнтерактивноеИзменениеВыгрузкиВосстановитьНастройки (БСП)

ХранилищеНастроекДанныхФормСохранить (БСП)

Модератору