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