СКД многократное обращение к функции вычисляемого поля. #809822


#0 by Толич
Добрый день. Столкнулся с непонятной для меня ситуацией: В отчете СКД, который заполняется не программно, есть два вычисляемых поля. В выражении вычисляемых полей находится функция, которая возвращает числовое значение и находится в общем модуле. Значения вычисляемых полей добавлены в ресурсы. В отчете нет группировок. Есть только единственная группировка по детальным записям. При отладке отчета столкнулся с тем, что по одной строке данных программа заходит 4 раза в одну функцию вычисляемого поля и 4 раза в другую. Т.е. 4 раза делаются одни и те же вычисления. Отчет формируется корректно, но очень уж медленно. Попробовал поэкспериментировать. Если я убираю одно вычисляемое поле, то функция выполняется два раза. Если я делаю три вычисляемых поля, то каждая из трех функций выполняется по 8 раз. Кто сталкивался с данной проблемой? Подскажите как сделать, чтобы каждое вычисляемое поле вычислялось только один раз. Заранее спасибо.
#1 by Ненавижу 1С
отбор и сортировка есть по ним? а вообще да, медленные они
#2 by Толич
Есть отбор и сортировка. Я пробовал их убирать. Результат такой же. Многократно вычисляются одни и те же данные.
#3 by FIXXXL
оберни в повторноеИспользование, мож ускорит
#4 by Толич
Спасибо. Действительно решение было найдено с помощью нового модуля с повторным использованием:На время вызова. Скорость заполнения отчета увеличилась в 3 раза.
#5 by Armando
А расход памяти как?
#6 by Толич
Все нормально. Не заметил скачка.
#7 by Ненавижу 1С
а в 8.2 модуль должен быть только глобальный?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С