我有一份SSRS报告,其中有几个级别的向下钻取。数据汇总为顶级视图,但我需要根据其中一列的类型显示不同的向下钻取报告。
例如:
表1 - 苹果
Name Cost
Fuji 1.5
Gala 3.5
表2 - 南瓜
Name Cost
Pumpkin 2
Gourd 4.5
我有一个存储过程聚合这些并将它们放在一个表中,以显示顶级报告。即:
Name Cost ItemType
Apples 5 1
Squashes 6.5 2
实际上,这两个表有不同的列,我需要在钻取报告中显示。是否可以查看ItemType列并深入查看两个子报告中的一个,具体取决于它的值?
答案 0 :(得分:1)
您可以在子报表中添加ItemType
作为参数。然后从主报告中链接或跳转到子报告并传递参数配置选项卡中的Fields!ItemType.Value
。
答案 1 :(得分:1)
如果您需要在两个或更多个不同的子报告之间进行选择,请将文本框上操作的ReportName属性设为这样的表达式。
=IIF(Fields!ItemType.Value = 1, "subReport_Apples", "subReport_Oranges")
如果你有一把以上的SWITCH可能会更好
= SWITCH (
Fields!ItemType.Value = 1, "subReport_Apples",
Fields!ItemType.Value = 2, "subReport_Oranges",
Fields!ItemType.Value = 3, "subReport_Lemons",
True, "subReport_AnythingElse"
)
如果您有很多项类型,请考虑将子报告的名称添加到数据库,从而创建包含ItemType
和subReportName
的新表。然后,您可以在查询中加入此项并获取实际的子报表名称。然后,文本操作的ReportName属性将只是Fields!SubReportname.Value