SSRS报告 - 动态参数导致可怕的缓慢

时间:2017-08-23 20:15:23

标签: sql-server dynamic reporting-services parameters dataset

我使用一系列参数和数据集构建了一个SSRS报告,用户指定了一个季节(第一个参数)。有几个数据集 - 见下文。

第一个是程序:名为LRP_Weekly_Stats,返回9个字段(包括,位置,事件数据,选项,季节和其他几个。

第二个数据集拉动 - 视图中所有不同的季节 - 被发送到参数下拉。 select distinct season from myview它只显示/返回season

存在2个附加数据集

select distinct location from myview where my season = parameter season

 select distinct option from myview where my season = parameter season

这些数据集中的每一个分别返回locationoption

enter image description here

我们无法将其构建为单个数据集,因为5个位置中的每个位置都与4个选项相关联,并且返回的数据会自行乘以。

我视图中的数据如下所示

Location         option
-------------------------
Location1        option1
Location1        option2
Location1        option3
Location1        option4
Location1        option5
Location2        option1
Location2        option2
Location2        option3
Location2        option4
Location3        option1
Location3        option2
Location3        option4
Location3        option5
etc. 

为了让参数显示每个位置一次,每个选项1显示参数下拉,我们会进行两次单独的查询。

我没有构建视图并且无法调整视图,即使我可以将数据设置为每个位置都可以拥有每个选项。

所以我的两个数据集每个都按季节返回可能的位置和/或选项的不同列表。

在SSRS报告中的参数中,设置如下所示:

enter image description here

所以从我的数据集中提取进入我参数的数据。对于三个参数中的每一个。 location和option_1和option_2。代码本身在5秒内运行,但由于所有这些链接,运行报告需要30多分钟。这是完全不可接受的(我无法删除下拉数据,因为用户需要它)。

有关如何简化或提高效率的任何建议。请帮忙。

1 个答案:

答案 0 :(得分:0)

根据您对初始问题的评论中的回复,我认为问题可能在报告程序本身,也可能是渲染问题。我会看一下主要报表查询的性能调优。如果不了解有关报告架构的更多详细信息,我担心自己不能更具体。