Отчет на СКД: Долгий вывод результата

1. Bovori 2 24.12.18 10:15 Сейчас в теме
Здравствуйте уважаемые форумчане. Вопрос такой.
Имеется: База УТ 10(пиленная, серверный вариант,MSSql), платформа 8.3.10.2299, отчет на СКД, построенный полностью на макете, без программного вывода. Вычисляемых полей нет. На тестовой базе результат за 2 месяца выводится секунд за 20-25.
В рабочей базе, в консоли запросов, запрос из макета за текущий месяц выполняется за 10 секунд. Тот же запрос в СКД да 2! последних дня выводится минут 25-30, за месяц не дождался вывода. Висит на "Вывод отчета" и все. В чем может быть проблема? Кэш чистил, сервер ребутился.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. magvay_k 64 24.12.18 11:09 Сейчас в теме
Ну первое, что приходит в голову, посмотреть как строит запрос СКД в "МакетКомпоновки", возможно он устанавливает отбора не оптимально
3. Bovori 2 24.12.18 11:22 Сейчас в теме
magvay_k, спасибо. Имеете в виду в профайлере SQL?
14. herfis 500 24.12.18 18:10 Сейчас в теме
(3) Не. Там где-то в дебрях то ли компоновщика макета то ли еще какого-то объекта компоновки можно глянуть уже "пережеванный" СКД запрос.
Всякие продвинутые консоли СКД умеют показывать. Я просто давно инструментами разработчика для этого пользуюсь.
В общем, нужно сравнить ожидания с тем, что СКД реально выполнять собирается.
4. IgorXml 725 24.12.18 11:26 Сейчас в теме
В модуле отчета может быть при инициализации изменение запроса СКД.
5. Bovori 2 24.12.18 11:35 Сейчас в теме
IgorXml,нет, чистый СКД, программных изменений и вывода нет. Я сам его делал.
6. magvay_k 64 24.12.18 12:48 Сейчас в теме
(5) Параметры напрямую в запрос передаешь или через отборы?
7. Bovori 2 24.12.18 12:50 Сейчас в теме
magvay_k, отборов нет, параметры передаются из вкладки "Параметры" формы настроек. Стандартно.
8. magvay_k 64 24.12.18 12:51 Сейчас в теме
Хм, тогда только через технологический журнал. Еще поробуй платформу обновить.
9. vynosmozga 5 24.12.18 12:56 Сейчас в теме
А если в кофигураторе СКД выгрузить в файл и загрузить снова, потом по пробовать сформировать еще раз?
10. Bovori 2 24.12.18 15:41 Сейчас в теме
Забавно, в тестовой базе профайлер замечательно отлавливает пакеты запроса из отчета, а на рабочем в профайлере пусто, как будто запрос на сервер не транслируется....
(9) vynosmozga, спасибо, сейчас попробую.
11. Bovori 2 24.12.18 16:00 Сейчас в теме
(9) vynosmozga, не помогло. Даже по новой отчет создал, с нуля, такая же ерунда... Вообщем сегодня ночью админы сервак полностью перегрузят(на него грешу), ежели не поможет, тады мистика))
12. olga1512 6 24.12.18 16:00 Сейчас в теме
Попробуйте переписать несколько таблиц запроса для сравнения, возможно там много вложенных запросов, в скд желательно использовать временные таблицы с соединениями они работают быстрее. Либо в запросе проверить допустим данные выбираются полностью без ограничения. Например выбор всех элементов справочника номенклатура, или всех записей из регистра, там нужно условие наложить, чтобы ограничить объем данных. Также может быть в регистре сведений наложено условие отбора не в самой таблице регистра а на вкладке условие
13. Bovori 2 24.12.18 16:10 Сейчас в теме
(12)olga1512, вложенных запросов нет, 12 пакетов. Непонятно другое ведь, почему на тестовом сервере таже база(полугодичной давности по данным) за два месяца в отчете выдает 30 т. с лишним строк за 30 секунд, а в рабочей за два дня не получается вывести вообще.. Ерунда какая то..
15. farron 24.12.18 19:27 Сейчас в теме
У меня была следующая ситуация с типовым отчетом в ЗКБУ 3:
Там долго выполнялась строка "КомпоновщикМакета.Выполнить". Я выдергивал текст запроса в консоли СКД, выполнял его в консоли запросов (он выполнялся там 2 секунды) и сравнивал с текстом запроса в профайлере. Тексты и время выполнения были идентичны. Т.е долго "думала" сама платформа.
Я бы посоветовал сделать то же самое. Таким образом вы поймете, что конкретно занимает большую часть времени: выполнение запроса, выполнение компоновщика или вывод результата.
16. Bovori 2 25.12.18 07:45 Сейчас в теме
(15)NecroDog, спасибо за совет, но как я уже писал, программного вывода нет и в профайлере на рабочем сервере пусто, как будто запрос на сервер не уходит.. Появилась идея сделать всеж программный вывод с передачей в СКД готового результата запроса, то есть тз. Не мытьем так катаньем..
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот