Две Процедуры Автосохранения и Автовосстановления реквизитов Объекта


Автоматическое сохранение реквизитов в Обработке или Отчёте, или в любом другом объекте

Бывает часто нужно сделать сохранение реквизитов в какой-нибудь обработке, если реквизитов мало, то это не так трудно,  например, пишешь:

    СохранитьЗначение("Дата", Дата);

а потом при открытии

    Дата = ВосстановитьЗначение("Дата");

Но! Бывает реквизитов много и они часто меняются в процессе разработки, что создаёт лишнюю работу по исправлению комбинаций Сохранить/Восстановить.

Вышеперечисленные обстоятельства подтолкнули на создание процедур автоматического сохранения значений реквизитов.

//-автосохранятор
Процедура автосохранятор_СохранитьРеквизиты(Объект)
   
М = Объект.Метаданные();
   
имя = М.Имя;
    для каждого
Рекв из М.Реквизиты цикл
       
Имя_сохр = М.Имя+"__"+Рекв.Имя;
       
СохранитьЗначение(Имя_сохр,Объект[Рекв.Имя]);
    КонецЦикла;
КонецПроцедуры

Процедура
автосохранятор_ВостановитьРеквизиты(Объект)
   
М = Объект.Метаданные();
   
имя = М.Имя;
    для каждого
Рекв из М.Реквизиты цикл
       
Имя_сохр = М.Имя+"__"+Рекв.Имя;
       
//СохранитьЗначение(Имя_сохр,Объект[Рекв.Имя]);
       
Объект[Рекв.Имя] = ВосстановитьЗначение(Имя_сохр);
    КонецЦикла;
КонецПроцедуры


В качестве примера использования этих функций выложил обработочку для 8.2, но сам код будет работать и на 8.1, и 8.0

Файлы обработки:

-