Что бы вывести свой макет до или после скд проблемы нет, делается это на ура следующим кодом.
Результат = ЭлементыФормы.Результат;
Результат.Очистить();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(ОтчетОбъект.СхемаКомпоновкиДанных, ОтчетОбъект.КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
//Определение Процессора компоновки
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
//Определение Процессора вывода
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ЭлементыФормы.Результат);
//Вывод таблицы
ПроцессорВывода.Вывести(процессорКомпоновки);
//Получение доп макета для шапки и подвала
Макет = ОтчетОбъект.ПолучитьМакет(“Подписи”);
//Вывод своего макета
Область = Макет.ПолучитьОбласть(“Надписи”);
ЭлементыФормы.Результат.Вывести(Область);
Тут я думаю всё понятно, мы програмно запускаем компановку и после вывода процессора опеределяем и выводим зарание созданый нами макет. Он выйдет после компоновки, что бы он вышел первым его нужно поставить перед выводом процессора компановки.