GoncharovNN
9/8/2018 - 10:09 AM

Алгоритм программного формирования отчета #СКД

Алгоритм программного формирования отчета #СКД

Результат.Очистить();
	
Настройки = КомпоновщикНастроек.ПолучитьНастройки();

ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;

КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);

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

// 1. Вариант упрошенный
//ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);

// 2. Вариант детальный
ПроцессорВывода.НачатьВывод();

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

ПроцессорВывода.ЗакончитьВывод();