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