在SSRS

时间:2017-06-08 13:53:08

标签: sql-server ssrs-2012

我正在学习MSBI工具并遇到了SSRS中的一项要求,其中我们需要使用参数1约束报告参数2。 即如果我在[AdventureWorks2008R2]。[HumanResources]。[Department]表上设置参数,如果我选择" Group Name" (参数1)作为"制造" 然后"名称" (参数2)下拉列表应仅填充相关值("生产" "生产控制" )选择参数1值("制造")

我接触过OBIEE工具并且知道在此工具下我们在提示下有一个"约束" 选项来实现相同的目标。

我可以在SSRS下提出以下解决方案: 使用以下查询为每个参数创建了两个数据集。

参数1(GroupName)

 SELECT DISTINCT GroupName
    FROM            HumanResources.Department

参数2(DeptName)

SELECT        Name
FROM            HumanResources.Department
WHERE        (GroupName = @GroupName)

这很有用。但是,如果有5个这样的参数需要约束,那么使用这个解决方案我将不得不创建5个这样的数据集,并相应地为每个参数构建WHERE子句。 是否有更好的解决方案来实现相同的目标(应该......)

我是SSRS的新手,因此非常感谢这里的任何指示。 谢谢!

1 个答案:

答案 0 :(得分:1)

您所谈论的内容称为“级联参数”,它们的实现与您完全一样。你可以在这里阅读它们: Adding Cascading Parameters (SSRS)

因此,如果您需要实现5个此类参数,则必须为5个数据集编写5个查询,每个数据集包含先前数据集中定义的WHERE引用参数