Просмотр отчетов занимает много времени для загрузки отчетов
У меня есть форма, которая печатает все элементы, это то, что пользователи видят при первой загрузке формы:
В этом отчете печатаются несколько страниц с изменением только 9 столбцов. Общее количество страниц составляет 4652, и загрузка всех этих страниц в просмотрщик отчетов занимает 5 минут. Каждый элемент имеет две страницы, в общей сложности 2326 пунктов.
Когда пользователь нажимает кнопку предварительного просмотра
страница 1 отчета
** страница 2 отчета **
Во второй раз, когда я запускал тот же отчет, он загружал отчет из кэша за время 1 и 1/2 минуты, что является существенной разницей
Мой вопрос заключается в том, что я могу сделать, чтобы повысить эффективность отчета. База данных и приложение находятся на одной машине, и производительность ужасна, пользователь хочет установить приложение на 4 заводах с сервером sql, а производительность будет еще большей проблемой из-за того, что несколько человек будут иметь доступ приложение, у нас будут узкие места в сети. С точки зрения Sql Server я добавил индексы, обновил статистику, попытался выяснить, есть ли способ заставить запрос извлекать результаты быстрее, но с точки зрения средства просмотра отчетов и конструктора отчетов, я не знаю, какая помощь будет очень полезной. оценили.
2 ответа
Добавьте некластеризованные индексы к столбцам, которые вы используете в предложении Where.
Если данные в режиме реального времени не обязательны (скажем, полчаса или часовая задержка приемлемы), вы можете попробовать использовать моментальные снимки отчета.
Проще говоря, он заранее генерирует отчет и сохраняет его в течение определенного времени, поэтому загрузка почти всегда должна быть мгновенной. Подвох, как я уже упоминал выше, заключается в том, что в отчете не всегда отображаются последние данные.