Сохранение таблицы в базе
Дал пользователю настроечную таблицу, чтобы он сам заполнял список скидок на товары.
Но нужно было сохранять эту таблицу в базе. Сперва думал о константах, потом о регистре в расширении. В итоге остановился на глобальных настройках программы и использую дополнительную внешнюю обработку.
Пользователю удобно использовать макет. Он может сохранять его в Excel, фиксируя предыдущие настройки, чтобы использовать их потом повторно, если понадобится.
Код по сохранению и восстановлению макета такой:
&НаСервере
Функция ПолучитьНастройкуПрограммы(ИмяНастройки, ИмяПользователя = «НесуществующийПользовательДляНастроекПрограммы») Экспорт
УстановитьПривилегированныйРежим(истина);
Возврат ХранилищеОбщихНастроек.Загрузить(«ОбщаяНастройкаПрограммы», ИмяНастройки,, ИмяПользователя);
КонецФункции
&НаСервере
Процедура СохранитьНастройкуПрограммы(ИмяНастройки, Значение, ИмяПользователя = «НесуществующийПользовательДляНастроекПрограммы») Экспорт
УстановитьПривилегированныйРежим(истина);
ХранилищеОбщихНастроек.Сохранить(«ОбщаяНастройкаПрограммы», ИмяНастройки, Значение,, ИмяПользователя);
КонецПроцедуры
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ТДХранилище = ПолучитьНастройкуПрограммы(«УниверсальнаяТаблицаСкидокFixin»);
Если ТДХранилище <> Неопределено Тогда
ТД = ТДХранилище.Получить();
Если ТДХранилище <> Неопределено Тогда
ТабличныйДокумент.Очистить();
ТабличныйДокумент.Вывести(ТД);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СохранитьТаблицуСкидок(Команда)
СохранитьТаблицуСкидокНаСервере();
ПоказатьПредупреждение(, «Таблица скидок сохранена!»);
КонецПроцедуры
&НаСервере
Процедура СохранитьТаблицуСкидокНаСервере()
ТДХранилище = Новый ХранилищеЗначения(ТабличныйДокумент);
СохранитьНастройкуПрограммы(«УниверсальнаяТаблицаСкидокFixin», ТДХранилище);
КонецПроцедуры
Время факт: 0.5 час.
В типовых есть работа с файлами. Без кода. Без костылей. Без велосипедов.
В Греции тоже все есть, но далеко.
Проблема типовых в их плохой документированности.
Если я не прав, приведи мне статью на ИТС, как записывать в файл в кодировке без BOM.
Как твой вопрос соотносится с тем, что ты не использовал типовой код?
Я смогу ответить, если буду понимать, о каком типовом коде идет речь.
Но если такой код и существует, то я не знаю о его существовании. А 1С мне никак не помогает его узнать.
О какой функции БСП идет речь?