Как программно заполнить значения параметров и отборов для отчета СКД

Программное заполнение параметров и отборов в СКД

Оглавление (нажмите, чтобы раскрыть)

Установка параметров

Установка параметров на обычных формах
Процедура ПриОткрытии()
	Параметр = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ВидНоменклатуры");
	Параметр.Значение = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
	Параметр.Использование = Истина;
КонецПроцедуры

Установка параметров на управляемых формах

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

Установка отборов

Пример заполнения отборов
НовыйОтбор = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйОтбор.Использование = Истина;
НовыйОтбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ИмяНужногоПоля");
НовыйОтбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
НовыйОтбор.ПравоеЗначение = "какое-то значение";
Ключи: |
Добавить комментарий

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