Здравствуйте уважаемые форумчане. Вопрос такой.
Имеется: База УТ 10(пиленная, серверный вариант,MSSql), платформа 8.3.10.2299, отчет на СКД, построенный полностью на макете, без программного вывода. Вычисляемых полей нет. На тестовой базе результат за 2 месяца выводится секунд за 20-25.
В рабочей базе, в консоли запросов, запрос из макета за текущий месяц выполняется за 10 секунд. Тот же запрос в СКД да 2! последних дня выводится минут 25-30, за месяц не дождался вывода. Висит на "Вывод отчета" и все. В чем может быть проблема? Кэш чистил, сервер ребутился.
Имеется: База УТ 10(пиленная, серверный вариант,MSSql), платформа 8.3.10.2299, отчет на СКД, построенный полностью на макете, без программного вывода. Вычисляемых полей нет. На тестовой базе результат за 2 месяца выводится секунд за 20-25.
В рабочей базе, в консоли запросов, запрос из макета за текущий месяц выполняется за 10 секунд. Тот же запрос в СКД да 2! последних дня выводится минут 25-30, за месяц не дождался вывода. Висит на "Вывод отчета" и все. В чем может быть проблема? Кэш чистил, сервер ребутился.
По теме из базы знаний
- Нестандартная расшифровка СКД или расшифровка одного отчета СКД при помощи другого отчета СКД с выбором варианта настроек (в управляемых формах, методика + пример для УТ11)
- Простой пример отчета на СКД. Программное формирование, расшифровка, работа с параметрами и отборами
- Работа с СКД в продукте "Infostart Toolkit"
- Как я с отчетом СКД боролся (произвольный макет)!
- По-настоящему свои макеты в отчетах СКД. Исследование процесса компоновки и генерация кода отчета
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) Не. Там где-то в дебрях то ли компоновщика макета то ли еще какого-то объекта компоновки можно глянуть уже "пережеванный" СКД запрос.
Всякие продвинутые консоли СКД умеют показывать. Я просто давно инструментами разработчика для этого пользуюсь.
В общем, нужно сравнить ожидания с тем, что СКД реально выполнять собирается.
Всякие продвинутые консоли СКД умеют показывать. Я просто давно инструментами разработчика для этого пользуюсь.
В общем, нужно сравнить ожидания с тем, что СКД реально выполнять собирается.
Попробуйте переписать несколько таблиц запроса для сравнения, возможно там много вложенных запросов, в скд желательно использовать временные таблицы с соединениями они работают быстрее. Либо в запросе проверить допустим данные выбираются полностью без ограничения. Например выбор всех элементов справочника номенклатура, или всех записей из регистра, там нужно условие наложить, чтобы ограничить объем данных. Также может быть в регистре сведений наложено условие отбора не в самой таблице регистра а на вкладке условие
(12)olga1512, вложенных запросов нет, 12 пакетов. Непонятно другое ведь, почему на тестовом сервере таже база(полугодичной давности по данным) за два месяца в отчете выдает 30 т. с лишним строк за 30 секунд, а в рабочей за два дня не получается вывести вообще.. Ерунда какая то..
У меня была следующая ситуация с типовым отчетом в ЗКБУ 3:
Там долго выполнялась строка "КомпоновщикМакета.Выполнить". Я выдергивал текст запроса в консоли СКД, выполнял его в консоли запросов (он выполнялся там 2 секунды) и сравнивал с текстом запроса в профайлере. Тексты и время выполнения были идентичны. Т.е долго "думала" сама платформа.
Я бы посоветовал сделать то же самое. Таким образом вы поймете, что конкретно занимает большую часть времени: выполнение запроса, выполнение компоновщика или вывод результата.
Там долго выполнялась строка "КомпоновщикМакета.Выполнить". Я выдергивал текст запроса в консоли СКД, выполнял его в консоли запросов (он выполнялся там 2 секунды) и сравнивал с текстом запроса в профайлере. Тексты и время выполнения были идентичны. Т.е долго "думала" сама платформа.
Я бы посоветовал сделать то же самое. Таким образом вы поймете, что конкретно занимает большую часть времени: выполнение запроса, выполнение компоновщика или вывод результата.
(15)NecroDog, спасибо за совет, но как я уже писал, программного вывода нет и в профайлере на рабочем сервере пусто, как будто запрос на сервер не уходит.. Появилась идея сделать всеж программный вывод с передачей в СКД готового результата запроса, то есть тз. Не мытьем так катаньем..
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот