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

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

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

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

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

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

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

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

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

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

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

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

комментария 4

  1. naf2000:

    В типовых есть работа с файлами. Без кода. Без костылей. Без велосипедов.

    • В Греции тоже все есть, но далеко.
      Проблема типовых в их плохой документированности.
      Если я не прав, приведи мне статью на ИТС, как записывать в файл в кодировке без BOM.

      • naf2000:

        Как твой вопрос соотносится с тем, что ты не использовал типовой код?

        • Я смогу ответить, если буду понимать, о каком типовом коде идет речь.
          Но если такой код и существует, то я не знаю о его существовании. А 1С мне никак не помогает его узнать.
          О какой функции БСП идет речь?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *