Как в СКД заставить отчет отображать параметры поумолчанию?

1. user1089020 15.11.24 08:58 Сейчас в теме
Доброе утро, профессионалы в СКД!

Имеется отчет на СКД. Два параметра: ДатаНачала и ДатаОкончания. По задумке, они должны у пользователя автоматически заполняться после интерактивного открытия отчета следующим образом: ДатаНачала - первый день текущего месяца, ДатаОкончания - текущая дата со временем. Я сделал соответствующие настройки в СКД. Но по факту параметры не заполняются чем мне надо, а сохраняют значения с предыдущего открытия отчета. Намекните, пожалуйста, в чем же косяк?
Прикрепленные файлы:
Найденные решения
5. glek 120 15.11.24 11:40 Сейчас в теме
(4) Тогда совету использовать:
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт

Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры

3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт

Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда

НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл

Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда

ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;

КонецЕсли;

КонецЦикла;

КонецЕсли;
КонецПроцедуры
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. glek 120 15.11.24 11:09 Сейчас в теме
(1) Отчет на БСП? Встроенный или внешний?
4. user1089020 15.11.24 11:35 Сейчас в теме
(3) Простой отчет на СКД. Не внешний, встроен в конфигурацию. БСП имеется, в отчете используется.
5. glek 120 15.11.24 11:40 Сейчас в теме
(4) Тогда совету использовать:
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт

Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры

3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт

Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда

НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл

Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда

ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;

КонецЕсли;

КонецЦикла;

КонецЕсли;
КонецПроцедуры
6. user1089020 15.11.24 16:47 Сейчас в теме
(5) Все отлично работает во внешнем отчете (параметры выставляются какие надо). Но не пойму почему в аналогичном внутреннем отчете не исполняется код модуля объекта отчета? (отладка не заходит в модуль, параметры не выставляются).
2. vladimir_korshun 87 15.11.24 09:54 Сейчас в теме
Создай форму, и в событии при Открытии, устанавливай параметры.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот