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