组合SSRS中的行并仅将某些值相加

时间:2015-07-13 08:33:05

标签: reporting-services ssrs-2012

在SSRS BI 2012中,我做了如下所示的报告。当作业中断时,例如在周末,报告中有另一行具有相同版本号的行。在下面的示例中,它是版本3.

如果特定orderNo的版本号相同,然后汇总Netto和ActualTime而不是Bruto和PlannedTime,有没有办法合并线?

OrderNo    Ver Netto   Bruto   PlannedTime ActualTime
123456     1    1000    1050    01:50       01:45
           2    1000    1050    01:50       01:45
           3    500     1050    01:50       00:30
           3    500     1050    01:50       00:45

2 个答案:

答案 0 :(得分:1)

是的,您需要做的是根据版本号设置一个组。然后对于Netto的列,ActualTime而不是普通列将它们设置为函数。对于具有Bruto和计划时间的Sum函数SUM(...)的函数,我假设您没有求和,因为它们是相同的?在这种情况下,只需将函数设置为取第一个值。

答案 1 :(得分:1)

关于你的问题:

  

如果特定orderNo的版本号相同,然后汇总Netto和ActualTime而不是Bruto和PlannedTime,有没有办法合并线?

我认为如果您使用表达式和作用域列总计自定义文本框是可能的。查看this

如果您从数据源获取数据,则更容易。 假设Bruto和PlannedTime列对于特定版本保持相同,并且您有一个这样的表: enter image description here

您可以使用数据集中的以下查询:

select OrderNo,Ver,Sum(Netto) as Netto
,Max(Bruto) as Bruto, Max(PlannedTime) as PlannedTime,
DATEADD(ms, SUM(DATEDIFF(ms, '00:00:00.000', ActualTime)), '00:00:00.000') as ActualTime
from Interruption
group by OrderNo, Ver

从此数据集中,您可以使用表格组件。将您的时间列格式化为您的requeriment。

enter image description here

使用我构建的表组件:

enter image description here

试一试,希望这可以帮到你。