繁体   English   中英

嵌套组中的SSRS总和

[英]SSRS Sum in nested groups

我有一个表,其中包含年,月,产品,尝试次数和成功尝试次数。

数据按年份,月份和产品分组。

我需要按产品添加%成功(成功/尝试),然后按月份再按年份进行分组。

在我一个月又一个月地工作之前。 因此,我能够使用Sum(success.value,“ period”)/ Sum(attempts.value,“ period”)来执行此操作。

但是,如果有嵌套组,该怎么办?

我确实看到了有关添加参数“递归”的信息,但尚未使它起作用。

聚合隐式地发生在当前级别的范围内。 通常, =SUM(Fields!Amount.Value) ,Reporting Services会自动处理聚合。

如果您具有以下分组,则仅使用=SUM(Fields!Amount.Value) ,聚合=SUM(Fields!Amount.Value)隐式工作:

Year    Month    Product    Aggregation
2013                        Sums all products for all months for 2013
        January             Sums all products for January 2013
                 Widget     Sums all Widgets for January 2013
                 Gadget     Sums all Gadgets for January 2013
        February            Sums all products for February 2013 
                 Widget     Sums all Widgets for February 2013
                 Gadget     Sums all Gadgets for February 2013
2014                        Sums all products for all months for 2014
        January             Sums all products for January 2014
                 Widget     Sums all Widgets for January 2014
                 Gadget     Sums all Gadgets for January 2014
        February            Sums all products for February 2014 
                 Widget     Sums all Widgets for February 2014
                 Gadget     Sums all Gadgets for February 2014

在您的情况下,无论嵌套的数量如何,隐式聚合都可以正常工作-Reporting Services将为您全力以赴。 因此,此表达式应适用于分组的每个级别:

=Sum(Fields!Success.Value) / Sum(Fields!Attempts.Value)

SUM将在当前分组级别的范围内隐式执行。 如果这没有发生,则可能是您的分组操作不正确。 看一下组属性,看看该分组实际上是在什么级别上进行分组的; 外部组应为Year,下一个组Month和最后一个最内层的Product。

这不会将所有的一月进行分组,它表示当该字段更改时,它应该为上一个组打印一个组页脚,为下一个组打印一个组页眉。 在2013年1月更改为2月时,会触发组更改; 2014年1月更改为2月时,也会触发组更改。不同的1月,在Year较高级别的分组范围内。

您需要通过在SQL语句中使用ORDER BY [Year], [Month], [Product]或对Tablix进行排序,来确保数据按分组所需的顺序排列。 否则,字段的顺序将不正确,并且由于字段的顺序随机,组更改将不断触发。

如果要在当前作用域之外进行聚合,则只需要显式定义作用域。 例如,如果要添加每行占数据集总数的百分比,则需要显式使用数据集作为聚合范围,因此我将在详细行中使用此计算:

=SUM(Fields!Amount.Value) / SUM(Fields!Amount.Value, "MyDataset")

请注意, 递归参数仅用于具有层次结构数据的表,即父/子关系,例如员工的组织结构图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM