具有条件的 Reporting Services 组
Reporting Services group with a condition
我有这个源数据:
首先我想按 "Name" 分组(我已经做了这部分),之后我想创建 "category" 列,如果 "Name" 组有任何行类型 1 = A,则类别为 "X" else category = "Z"
这是我想要的结果:
如何获取报告服务中的类别组列?
我的实际方法是编辑 SQL 查询以提供报告并添加逻辑以在其中添加组。我认为这是不可能的,或者您无权访问 SQL 层,所以这里有一种完全在 SSRS 中完成的方法:
- 在您的
Name
组中向右插入另一列
对于字段表达式,对name字段值做lookupset,检查结果中是否存在A
=IIF(Array.IndexOf(Lookupset(Fields!Name.Value, Fields!Name.Value, Fields!Type1.Value, "DatasetName"), A) > -1, "X", "Z")
如果您构建表达式零碎,请使用以下表达式首先检查您的查找集是否正常工作:
=JOIN(LookupSet(...), ",")
然后添加 IIF(Array.IndexOf(...,A) > -1, X, Z)
以查看返回的数组是否包含您的 "A" 值。
我有这个源数据:
首先我想按 "Name" 分组(我已经做了这部分),之后我想创建 "category" 列,如果 "Name" 组有任何行类型 1 = A,则类别为 "X" else category = "Z"
这是我想要的结果:
如何获取报告服务中的类别组列?
我的实际方法是编辑 SQL 查询以提供报告并添加逻辑以在其中添加组。我认为这是不可能的,或者您无权访问 SQL 层,所以这里有一种完全在 SSRS 中完成的方法:
- 在您的
Name
组中向右插入另一列 对于字段表达式,对name字段值做lookupset,检查结果中是否存在A
=IIF(Array.IndexOf(Lookupset(Fields!Name.Value, Fields!Name.Value, Fields!Type1.Value, "DatasetName"), A) > -1, "X", "Z")
如果您构建表达式零碎,请使用以下表达式首先检查您的查找集是否正常工作:
=JOIN(LookupSet(...), ",")
然后添加 IIF(Array.IndexOf(...,A) > -1, X, Z)
以查看返回的数组是否包含您的 "A" 值。