Отчет через stimulsoft вэб страницу очень медленный.
Добавлено: 04 ноя 2016, 11:48
Здравствуйте.
Sql запрос, который выполняется через веб страницу стимул софт зависает на ms sql server-е Но при этом если запускать sql запрос на sql management studio запрос отрабатывает нормально. Обе запроса делаются из удаленного компьютера.
Проект сделан ASP.net MVC 5. База данных(MS sql server 2012) очень много записей.
Стимул софт дизайнер версии 2015.1. Версии библиотеки в ASP.net вэб приложении Stimulsoft.Base, Version=2015.1.0.0,
Stimulsoft.Base, Version=2015.1.0.0, Stimulsoft.Report.Mvc, Version=2015.1.0.0.
В проекте есть отчеты где делаются запрос
по не нагруженным таблицам- они отрабатывают нормально. Есть отчет где
запрос идет по нагруженным таблицам. Когда sql скрипт выполняется на
прямую в бд запрос отрабатывает, когда отчет выполняется через веб приложение
ASP.net через веб станицы стимул софт очень долго отрабатывает.
В станице проблемного отчета используется следующие компоненты:
Дата начала(datetime), Дата конца(datetime), Пост(Varhcar). Результат отображается в таблице.
Скрипт запроса из sql профайлера.
Sql запрос, который выполняется через веб страницу стимул софт зависает на ms sql server-е Но при этом если запускать sql запрос на sql management studio запрос отрабатывает нормально. Обе запроса делаются из удаленного компьютера.
Проект сделан ASP.net MVC 5. База данных(MS sql server 2012) очень много записей.
Стимул софт дизайнер версии 2015.1. Версии библиотеки в ASP.net вэб приложении Stimulsoft.Base, Version=2015.1.0.0,
Stimulsoft.Base, Version=2015.1.0.0, Stimulsoft.Report.Mvc, Version=2015.1.0.0.
В проекте есть отчеты где делаются запрос
по не нагруженным таблицам- они отрабатывают нормально. Есть отчет где
запрос идет по нагруженным таблицам. Когда sql скрипт выполняется на
прямую в бд запрос отрабатывает, когда отчет выполняется через веб приложение
ASP.net через веб станицы стимул софт очень долго отрабатывает.
В станице проблемного отчета используется следующие компоненты:
Дата начала(datetime), Дата конца(datetime), Пост(Varhcar). Результат отображается в таблице.
Скрипт запроса из sql профайлера.
Код: Выделить всё
exec sp_executesql N'SELECT DISTINCT
p.Number AS PostNumber,
p.NameRu AS Post,
Count(p.NameRu) AS Total,
Sum(CASE WHEN d.PublicCode = ''0'' THEN 1 ELSE 0 END) AS CountNorth,
Sum(CASE WHEN d.PublicCode = ''2'' THEN 1 ELSE 0 END) AS CountEast,
Sum(CASE WHEN d.PublicCode = ''4'' THEN 1 ELSE 0 END) AS CountSouth,
Sum(CASE WHEN d.PublicCode = ''6'' THEN 1 ELSE 0 END) AS CountWest
FROM Traffic t
INNER JOIN Camera ON t.CameraId = Camera.Id
INNER JOIN Direction d ON d.Id = Camera.DirectionId
INNER JOIN Apk ON Apk.Id = Camera.ApkId
INNER JOIN Post p ON p.Id = Apk.PostId
WHERE t.GCRecord = 0
AND t.FixationDateTime >= @StartDate
AND t.FixationDateTime <= @EndDate
AND p.Number != 111
AND (case when @Apk_Post = '''' then @Apk_Post else p.NameRu end) = @Apk_Post
GROUP BY p.Number, p.NameRu
ORDER BY Post;
',N'@StartDate datetime,@EndDate datetime,@Apk_Post varchar(100)',@StartDate='2016-10-09 00:00:00',@EndDate='2016-11-04 00:00:00',@Apk_Post='Абая - Ауэзова'