Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Общий итог СКД

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

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

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

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

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.