Reporting Services:动态添加过滤器到服务器报告

时间:2010-02-24 07:35:53

标签: reporting-services ssrs-2008

我有一些基于服务器的报告(* .rdl),它从SQL Server 2008视图返回数据。 用户希望能够动态地添加过滤,例如,

  • 仅显示语言=英语的数据,
  • 仅显示给定单位部门的数据

或类似的东西。过滤标准的数量相当小(四或五)。

但我该怎么做?我在服务器上有我的RDL,在报告数据集中有基本查询(SELECT (fields) FROM MyView WHERE ......) - 如何动态添加过滤?

我希望我能够定义数据集过滤器,但是当RDL被渲染时似乎必须存在这些过滤器(例如它们成为报告RDL本身的一部分)。

每个条件的可能值太多,我可以简单地将它们添加为列表并定义IN (list of values)种类的过滤器......

任何想法?思考?我错过了什么吗?


解决方案:我通过在报表数据集上使用过滤选项来解决它,我在开始时设置为“虚拟”过滤器,报告所有内容,然后我更新它以过滤实际列和值用户在UI中指定。到目前为止工作得很好!

2 个答案:

答案 0 :(得分:1)

它不是动态的(在某种意义上,用户每次都必须重新运行报告),​​但是如果您只有四个或五个具有多个值的参数,那么简单的解决方案就是添加一个多选参数每个人的报告默认为“全部”。

是否有原因导致用户无法使用不同的参数重新运行报告?

或者我误解了你的动态是什么意思?

答案 1 :(得分:0)

如果我理解你的问题:

您可以使用参数进行过滤。如果您有一个使用ReportViewer控件显示报表的应用程序,请将此条件作为参数传递给您的报表。您可以通过此参数管理可见性或数据过滤。