Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 мая 2024, 01:10

СКД, очищаются параметры после формирования отчета

Автор Sekeretteni, 28 апр 2023, 14:22

0 Пользователей и 1 гость просматривают эту тему.

Sekeretteni

Добрый день!
Отчет на скд.
Добавляю код в модуль объекта для выбора варианта отчета в зависимости от значения параметра на форме ("отбор по дате", булево)
Данные формируются корректно, но после формирования очищаются все параметры на форме.
Что с этим кодом не так?   

ОтборПоДатеПараметрСхемы = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ОтборПоДате");
   ОтборПоДате = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(ОтборПоДатеПараметрСхемы.ИдентификаторПользовательскойНастройки).Значение;
      
   Если ОтборПоДате = Истина Тогда
      лкВариантОтчета = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("СортировкаПоДате");
      КомпоновщикНастроек.ЗагрузитьНастройки(лкВариантОтчета.Настройки);
   ИначеЕсли  ОтборПоДате = Ложь Тогда
      лкВариантОтчета = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("Основной");
      КомпоновщикНастроек.ЗагрузитьНастройки(лкВариантОтчета.Настройки);   
   КонецЕсли;
     
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
   МакетКомпоновки = КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных, ЭтотОбъект.КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки);

LexaK

Sekeretteni, так вы перегружаете компановщик, новыми данными из настроек варианта!
КомпоновщикНастроек.ЗагрузитьНастройки(лкВариантОтчета.Настройки);
после этой команды верните назад (пропишите нужные) Параметры, да и все
если помогло нажмите: Спасибо!

Sekeretteni

LexaK, подскажите, пожалуйста, как правильно это сделать?

LexaK

Sekeretteni, слетают параметры при переходе на вариант = "СортировкаПоДате" ?


если да, то после формирования отчета, верните основной варинат, этими командами

      лкВариантОтчета = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("Основной");
      КомпоновщикНастроек.ЗагрузитьНастройки(лкВариантОтчета.Настройки);   

Получилось?
если помогло нажмите: Спасибо!

Sekeretteni

LexaK, параметры слетают при обоих вариантах отчета. Очищаются как раз после КомпоновщикНастроек.ЗагрузитьНастройки(лкВариантОтчета.Настройки)
Вы всё верно подсказали, но не могу понять, как переделать, чтобы не затирать эти значения.
Screenshot_5.png
Screenshot_6.png 

LexaK

логика такая
Перед загрузкой варианта отчета
получить копию пользовательских настроек (это там находится то что пользователь ввел в параметры)
После загрузки варианта отчета
загрузить данные из полученных пользовательских настроек.

вот команд пока нет под рукой. (поищу еще)
если помогло нажмите: Спасибо!

LexaK

вот команда по загрузки Пользовательских настроек

КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(РезультирующиеНастройки);
если помогло нажмите: Спасибо!

Sekeretteni

LexaK, вот так вроде работает. Посмотрите, пожалуйста
Screenshot_7.png

LexaK

нет, именно пользовательские настройки нужны
Параметры и отбор
если помогло нажмите: Спасибо!

Sekeretteni

LexaK, теперь всё хорошо, кроме параметра "отбор по дате", он отрабатывает, но очищается
Посмотрите, пожалуйста, что я делаю не так?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск