Содержание:
1. Стандартные хранилища настроек в 1С
2. Как создать собственное хранилище настроек
Иногда очень удобно сохранить используемые настройки отчета, обработки или любого другого важного объекта, чтобы не тратить время на однообразное заполнение их вручную. Для этих целей используется хранилище настроек в 1С. Существует стандартное хранилище настроек в 1С и хранилище настроек, созданное программистом. Поговорим о них подробнее.
1. Стандартные хранилища настроек в 1С
Существует несколько стандартных хранилищ настроек в 1С:
1) ХранилищеВариантовОтчетов
2) ХранилищеПользовательскихНастроекОтчетов
3) ХранилищеНастроекДанныхФорм
4) ХранилищеОбщихНастроек
5) ХранилищеСистемныхНастроек
6) ХранилищеПользовательскихНастроекДинамическихСписков
Каждое применяется для своих целей, соответствующих названию хранилища.
2. Как создать собственное хранилище настроек
Также есть возможность создать собственное хранилище настроек. Объект хранилище настроек в 1С находится в дереве конфигурации на закладке общие.
Методы для взаимодействия с хранилищами одинаковы и для хранилищ настроек, и для общих хранилищ.
Методы:
1. Сохранить (КлючОбъекта, КлючНастройки, ЗначениеНастройки, ОписаниеНастройки, ИмяПользователя) – Сохраняет настройку или несколько настроек в хранилище 1С.
2. Загрузить(КлючОбъекта, КлючНастройки, ОписаниеНастройки, ИмяПользователя) – загружает настройку из хранилища.
3. ПолучитьСписок(КлючОбъекта, ИмяПользователя) – возвращает список настроек для одного объекта.
4. Удалить(КлючОбъекта, КлючНастройки, ИмяПользователя) – удаляет настройку из хранилища настроек.
Пример кода в 1С:
КлючОбъекта = "ОтчетПроводки";
КлючНастроек = "ОтчетПроводки";
Настройки = Новый Структура();
Настройки.Вставить("НачалоПериода",Отчет.НачалоПериода);
Настройки.Вставить("КонецПериода",Отчет.КонецПериода);
Есть еще такой пример кода в 1С:
ХранилищеОбщихНастроек.Сохранить(КлючОбъекта, КлючНастроек, Настройки);
Восстановление настроек происходит таким образом:
КлючОбъекта = "ОтчетПроводкиБух";
КлючНастроек = "ОтчетПроводкиБУХ";
СтруктураНастроек = Неопределено;
Попытка
СтруктураНастроек = ХранилищеОбщихНастроек.Загрузить(КлючОбъекта,КлючНастроек);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Если СтруктураНастроек = Неопределено Тогда
Сообщить("Настройки не были восстановлены");
Иначе
ЗаполнитьЗначенияСвойств(Отчет,СтруктураНастроек);
КонецЕсли;
Код подходит как для конфигурация на базе платформы 8.2, так и на базе 8.3.
Специалист компании ООО «Кодерлайн»
Скунцева Евгения