我正在尝试只计算组HourTarget总数。
7:00 8:00 HourTarget
Line 1 2715 1008 3224
A 2307 1008 3224
B 408 0 3224
Line 2 2308 2432 2656
A 2308 2432 2656
Line 3 2318 1622 2800
A 345 1258 2800
B 762 0 2800
C 1211 364 2800
由于HourTarget的总和,我试图达到8680。但是我得到17504.这是因为数据库表中的HourTarget是该行上运行的每个产品的记录,但目标与行而不是产品有关。我如何只计算集团总数?
这样的事情不起作用:
=Sum(Max(Fields!HourTarget.Value))
答案 0 :(得分:21)
由于您使用的是SSRS 2008R2,因此可以使用该版本中添加的聚合功能的聚合。
你走在正确的轨道上;您只需要在表达式中添加范围值。
我正在使用您的数据版本,并构建了一个简单的Tablix:
请注意,我创建了一个名为 Line 的小组。
要获取Sum
HourTarget 列的Max
,请使用以下表达式:
=Sum(Max(Fields!HourTarget.Value, "Line"))
这会为每个行组提供Max
,然后获取这些<{1}}。
现在我们有您所需的价值:
在SSRS 2008R2之前,没有简单的方法可以做到这一点;通常会向DataSet添加一个额外的列,并在报告中显示预聚合值。
答案 1 :(得分:0)