Имя: Пароль:
1C
1С v8
Долгий вывод данных в СКД
0 МешочекЗнаний
 
06.02.17
08:03
День добрый.

Имеется отчёт на СКД, с ростом базы выполняется всё медленнее. Запустил замер производительности в 1С и получил такую картину: http://www.ximage.ru/index.php?id=1486357236

Как я понимаю (если не прав - поправьте) сам запрос отчёта выполняется быстро
МакетКомпоновки = КомпоновщикМакета.Выполнить 0,6 сек.

Вывод результата - медленно
ЭлементРезультата = ПроцессорКомпоновки.Следующий 5,5 сек

С чем это может быть связано?
1 jsmith82
 
06.02.17
08:06
А нельзя без Следующий вывести?
2 DrZombi
 
гуру
06.02.17
08:09
(0) Ошибка в строке № 30, левая связь выполненная избыточно.
...(телепат)... так же предсказываю, что в вашем запросе ведется отбор ВСЕЙ БД документов, за весь интервал работы в 1С, и с ростом сего момента, ваш отчет умирает со скоростью увеличения документа-оборота. :)
3 DrZombi
 
гуру
06.02.17
08:10
>>> С чем это может быть связано?

Рекомендую ошибку искать в руках разработчика :)
4 МешочекЗнаний
 
06.02.17
08:12
(1) Там отчёт на основе типового отчёта, он тянет общие типовые модули. Могу попробовать переписать, но через что если не ПроцессорКомпоновки.Следующий.

(2) Нет, запрос я перелопатил через профайлер скл. Избыточности выборки нет.
5 shamannk
 
06.02.17
08:15
(4) выложи запрос смеяться не будем.
6 DrZombi
 
гуру
06.02.17
08:20
(4) >>> ПроцессорКомпоновки.Следующий

Использовать типовой механизм вывода строчек отчета :)
7 МешочекЗнаний
 
06.02.17
08:25
(2) Навёл на мысль - запрос к консоли запросов отрабатывает за 0,5 сек, значит проблема в самой СКД. В отчете используются вычисляемые поля, попробовал сформировать отчет без них и формирует быстро.
Вроде всё, спасибо. Осталось придумать как запрос переписать, чтоб от вычисляемых полей избавиться.