Имя: Пароль:
1C
1С v8
Медленная работа СКД
,
0 kiman
 
21.05.22
00:25
Доброго всем времени суток. Есть большой запрос страниц на 15 (приводить в теме его не вижу смысла), этим запросом отбирается 20 тысяч строк из множества таблиц, время на выполнение запроса уходит 2 минуты. Однако если этот запрос добавить в отчет на СКД, отчет формируется 15 минут. Уже в СКД обрезал все лишнее - вычисляемые поля, условное оформление, связанные наборы данных... Остался голый запрос, параметры (коих тоже не мало) и вывод в <детальные записи>. Подскажите в какую сторону копать, что не делал, время формирования отчета не сократилось ни на секунду.

УТ 10 обычные формы. Результаты отчета выводятся в ТабДок на форме.
1 echo77
 
21.05.22
13:44
(0) Время компоновки результата в таблицу значений, а не в табДок так же 15 минут? Вывод большого объема данных в табличный документ тоже не быстро.
2 ДедМорроз
 
21.05.22
17:17
СКД в запросы добавляет дополнительные поля.
Если очень интересно,можно включить технологический журнал по событиям sdbl и посмотреть,какие запросы выполняются,и в чем разница.
3 OldCondom
 
21.05.22
17:24
(1) this.
если сложно программно в тз выгрузить, измени запрос, последнюю итоговую таблицу положи во временную и из нее потом "выбрать первые 1 * из ВТ.Итоговая".Скорее всего те же 2 минуты будет.
4 kiman
 
21.05.22
20:09
(1) Сделал вывод в таблицу значений, время не намного уменьшилось было 890 сек. на .Вывести, стало 690.
5 Злопчинский
 
21.05.22
20:38
6 Выпрь
 
21.05.22
20:58
Обычно скд получает представления в основном запросе. Поэтому вывод в таблицу не должен быть существенно дольше
7 timurhv
 
21.05.22
22:33
(0) Отборы в изначальном запросе выставляли в первых выборках в секции ГДЕ, в СКД {ГДЕ} только в последней?
8 VS-1976
 
22.05.22
08:57
Попробуй убрать роли для полей выборки

https://xn----1-bedvffifm4g.xn--p1ai/бесплатное/2021-06-24-roli-polej-v-skd-i-programmnaya-rabota/
9 echo77
 
22.05.22
11:42
(4) Схему в консоль СКД, выполнить в консоли все те же настройки, что в эталонной медленной программе. Смотреть текст запроса, сгенерированный компоновщиком уже в консоли запросов. Я так делаю.
10 echo77
 
22.05.22
11:44
Могу показать как все это сделать https://solvery.io/ru/mentor/akrynetsky
11 ptiz
 
22.05.22
13:28
(0) "из множества таблиц". По очереди отключать таблицы, может удастся найти проблемную.
12 DrZombi
 
гуру
23.05.22
07:43
(0) Рассмотрите вариант, такой, что часть данных, готовить заранее, а в отчет выводить уже рассчитанные данные :)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший