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