Сохранение таблицы в базе

Дал пользователю настроечную таблицу, чтобы он сам заполнял список скидок на товары.

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

Пользователю удобно использовать макет. Он может сохранять его в Excel, фиксируя предыдущие настройки, чтобы использовать их потом повторно, если понадобится.

Код по сохранению и восстановлению макета такой:

&НаСервере
Функция ПолучитьНастройкуПрограммы(ИмяНастройки, ИмяПользователя = «НесуществующийПользовательДляНастроекПрограммы») Экспорт
   
УстановитьПривилегированныйРежим(истина);
    Возврат
ХранилищеОбщихНастроек.Загрузить(«ОбщаяНастройкаПрограммы», ИмяНастройки,, ИмяПользователя);
КонецФункции

&НаСервере
Процедура СохранитьНастройкуПрограммы(ИмяНастройки, Значение, ИмяПользователя = «НесуществующийПользовательДляНастроекПрограммы») Экспорт
   
УстановитьПривилегированныйРежим(истина);
   
ХранилищеОбщихНастроек.Сохранить(«ОбщаяНастройкаПрограммы», ИмяНастройки, Значение,, ИмяПользователя);
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
   
ТДХранилище = ПолучитьНастройкуПрограммы(«УниверсальнаяТаблицаСкидокFixin»);
    Если
ТДХранилище <> Неопределено Тогда
       
ТД = ТДХранилище.Получить();
        Если
ТДХранилище <> Неопределено Тогда
           
ТабличныйДокумент.Очистить();
           
ТабличныйДокумент.Вывести(ТД);
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура СохранитьТаблицуСкидок(Команда)
   
СохранитьТаблицуСкидокНаСервере();
   
ПоказатьПредупреждение(, «Таблица скидок сохранена!»);
КонецПроцедуры

&НаСервере
Процедура СохранитьТаблицуСкидокНаСервере()
   
ТДХранилище = Новый ХранилищеЗначения(ТабличныйДокумент);
   
СохранитьНастройкуПрограммы(«УниверсальнаяТаблицаСкидокFixin», ТДХранилище);
КонецПроцедуры

Время факт: 0.5 час.