Как в СКД заставить отчет отображать параметры поумолчанию?
Доброе утро, профессионалы в СКД!
Имеется отчет на СКД. Два параметра: ДатаНачала и ДатаОкончания. По задумке, они должны у пользователя автоматически заполняться после интерактивного открытия отчета следующим образом: ДатаНачала - первый день текущего месяца, ДатаОкончания - текущая дата со временем. Я сделал соответствующие настройки в СКД. Но по факту параметры не заполняются чем мне надо, а сохраняют значения с предыдущего открытия отчета. Намекните, пожалуйста, в чем же косяк?
Имеется отчет на СКД. Два параметра: ДатаНачала и ДатаОкончания. По задумке, они должны у пользователя автоматически заполняться после интерактивного открытия отчета следующим образом: ДатаНачала - первый день текущего месяца, ДатаОкончания - текущая дата со временем. Я сделал соответствующие настройки в СКД. Но по факту параметры не заполняются чем мне надо, а сохраняют значения с предыдущего открытия отчета. Намекните, пожалуйста, в чем же косяк?
Прикрепленные файлы:
Найденные решения
(4) Тогда совету использовать:
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры
3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт
Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда
НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл
Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда
ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры
3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт
Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда
НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл
Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда
ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4) Тогда совету использовать:
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры
3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт
Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда
НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл
Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда
ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
1. в ОМ ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов добавить свой отчет:
ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ИмяОтчета);
ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
2. в модуле отчета пишем процедуру
Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт
Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = ИСТИНА;
КонецПроцедуры
3. Добавляете там же процедуру
Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт
Если ТипЗнч(Контекст) = Тип("ФормаКлиентскогоПриложения") Тогда
НастройкиНаПечать = НовыеНастройкиКД.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТребуемыйПараметр"));
ИдентификаторНастройки = НастройкиНаПечать.ИдентификаторПользовательскойНастройки;
Для каждого ЭлементНастройки Из НовыеПользовательскиеНастройкиКД.Элементы Цикл
Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ИдентификаторНастройки Тогда
ЭлементНастройки.Значение = ТребуемоеЗначение;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот