Имя: Пароль:
1C
1С v8
Общий итог СКД
0 perlharbor
 
30.12.20
15:30
Всем привет!
Создал отчет на СКД, в общем модуле формирую табличный документ через ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент,записываю его в файл. Все работает как надо. Теперь хочу получить общие итоги (в табдокументе они выводятся, нужны их  значения). Ну, или, на худой конец, узнать без дополнительного запроса в модуле (быстродействие как-никак), есть ли вообще данные в этом отчете.
1 andrey2CC1
 
30.12.20
15:39
Можно найти в таб доке ячейку с определенной надписью, например "Итог" и от нее плясать, но это в том случае, если отчет не меняется пользователем, т.к. он может вообще вывод итогов убрать
2 toypaul
 
гуру
30.12.20
15:39
если "быстродействие как-никак" то проще проверить общие итоги в ТД вручную
3 Малыш Джон
 
30.12.20
16:00
(0)искать данные в таб доке - это утопия

выводи результат в тз, там и смотри (для вывода в файл можно ещё раз вывести в таб док):

        КомпоновщикМакет = Новый КомпоновщикМакетаКомпоновкиДанных;
    Макет = КомпоновщикМакет.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(Макет, , ДанныеРасшифровки);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
    ПроцессорВывода.УстановитьОбъект(ТЗСРезультатом);
    ПроцессорВывода.Вывести(ТЗСРезультатом);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
4 Малыш Джон
 
30.12.20
16:02
+(3) ПроцессорВывода.Вывести(ПроцессорКомпоновки) конечно в обоих случаях
5 perlharbor
 
30.12.20
16:21
(4) Этот вариант нравится) Спасибо
6 perlharbor
 
30.12.20
16:30
(3) ТЗДанные=Новый ТаблицаЗначений;
    
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(ТЗДанные);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);

Сделал так пишет неизвестный тип макета
7 perlharbor
 
30.12.20
16:36
Разобрался,надо в дерево выгружать
8 perlharbor
 
30.12.20
16:40
Точнее у макета тип указать ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений
9 perlharbor
 
30.12.20
16:45
Получается надо 2 раза отчет строить с разными типами макетов...