0
beholder13
30.07.12
✎
10:46
|
Доброго времени суток, господа и дамы.
Имеется отчет на 97 полей, формирующийся из некой информационной базы (назовем ее ИБ1). Также имеется некая информационная база (ИБ2), из которой требуется получить данные и вывести отдельной строкой под результатами запроса из ИБ1. К ИБ2 посредством COM-соединения коннектимся, берем требуемые данные и кладем в локальную переменную (таблицу значений) в модуле отчета, с этим проблем нет. Наборы данных в макете КД отчета меняю на объединение, которому подчиняется запрос к ИБ1 и набор данных - объект, в котором проставлены поля аналогично родительскому набору. Программно таблица значений из ИБ2 прикручивается к этому набору данных, кнопочка "Сформировать" переписывается от руки примерно таким образом:
НастройкиСКД = КомпоновщикНастроек.Настройки;
СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
ВнешниеНаборыДанных = Новый Структура;
ВнешниеНаборыДанных.Вставить("ТЗ_ИБ2", тзДанныеИБ2);
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,НастройкиСКД,ДанныеРасшифровки);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,ВнешниеНаборыДанных,ДанныеРасшифровки);
ДокументРезультат = ЭлементыФормы.Результат;
ДокументРезультат.Очистить();
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ДокументРезультат.Показать();
В итоге хочу иметь под исходным запросом еще одну строку с данными из второго набора, чего не наблюдаю. Прошу, объясните, что я делаю не так?
|
|
1
beholder13
30.07.12
✎
10:48
|
Ах да, плюс к тому, исходный запрос выполняется так раз в 10-15 дольше, чего тоже не хотелось бы
|
|