1C. Пример получение результата СКД отчета

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

Вызываем отчет «Маркетинговый план» сделаного на основе СКД.
Установка параметр «Вероятность». И отбора по ключу «Основание.МВЗ.СПО»

Отчет 				= Отчеты.МаркетинговыйПлан.Создать();		
Схема				= Отчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");	
КомпоновщикМакета	= Новый КомпоновщикМакетаКомпоновкиДанных; 	
КомпоновщикНастроек	= Новый КомпоновщикНастроекКомпоновкиДанных;
ПроцессорКомпоновки	= Новый ПроцессорКомпоновкиДанных;
ПроцессорВывода		= Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;	
ТабДок				= Новый ТабличныйДокумент; 	

// Типы переменных:
// Схема		- СхемаКомпоновкиДанных	
// Настройки 	- НастройкиКомпоновкиДанных
// насПланЕБП	- ЗначениеПараметраНастроекКомпоновкиДанных
// Макет		- МакетКомпоновкиДанных
	
ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(Схема);	
КомпоновщикНастроек.Инициализировать(ИсточникДоступныхНастроек);

// --- установка параметров
Настройки	= Схема.НастройкиПоУмолчанию;  	

насВероятнось = Настройки.ПараметрыДанных.Элементы.Найти("Вероятность"); 
насВероятнось.Использование = Истина;
насВероятнось.Значение = Веротяность;	

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

// --- компануем
Макет 		= КомпоновщикМакета.Выполнить(Схема, Настройки);  	
ПроцессорКомпоновки.Инициализировать(Макет,,,Истина); 
ПроцессорВывода.УстановитьДокумент(ТабДок); 
ПроцессорВывода.Вывести(ПроцессорКомпоновки); 		

Добавить комментарий

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