【问题标题】:RDLC how to sum values from child group?RDLC如何对子组的值求和?
【发布时间】:2017-04-03 12:23:33
【问题描述】:

第二期:

我在 rdlc 报告中的表结构如下所示:

           |   BookCount   |
|Library1  |   [Value]     |
|City1     |   62          |
|Filial1   |   45          | 
|Filial2   |   17          |
|City2     |   40          |
|Filial3   |   40          |

按库名称分组的数据。然后按城市分组。

通过使用=SUM(),我收到了每个城市的书数,但现在我需要对 Cities bookcount 求和(而不是 [Value] 必须是 102),我不知道该怎么做(有函数帮助我可以,但前提是我需要在表格下方显示值)。我不能只因为表达而求和。

我怎样才能做到这一点?

【问题讨论】:

    标签: reporting-services report reporting rdlc


    【解决方案1】:

    您需要对行组之外的值求和。 在上图中,突出显示的单元格中的sum() 将汇总LibraryRowGroup 的所有值。上面单元格中的sum() 将对CityRowGroup 的所有值求和。

    例如,对于您的数据示例,突出显示的单元格将为您提供Filial1 值。上面的单元格将为您提供City1 值。如果您在其上方添加另一行,则在行组之外,它将为您提供所有数据的值,而与图书馆或城市无关。这与将所有城市相加或将所有图书馆相加 - 数据集中的总值相同。

    对于你的表达,你可以使用这个:

    =iif(sum(Fields!Active.Value) <= 0, 0, (sum(Fields!Active.Value) - sum(Fields!Taken.Value)) / sum(Fields!Ordered.Value))
    

    【讨论】:

    • 我明白了,但我只是为此更新了我的问题,因为它具有误导性。我不是通过 BookCount 字段,而是通过 sum 中的表达式获得 BookCount。如果它们在字段内(就像在您的示例中一样,但是表达式呢...
    • 你的表情是什么样的?您对 Library 和 City 使用相同的表达式吗?
    • 简而言之,Filial 是 =IIF(Fields!Active.Value&gt;0, SUM(SUM(Fields!Active.Value)-Fields!Taken.Value)/Fields!Ordered.Value, Nothing),而 City 则非常薄,但在 SUM 之内。对于图书馆,这是我的问题,它应该如何寻找图书馆?
    • 更新了我的答案以包含这个表达式。
    • 感谢您的努力,但没有。这行不通。它只是数学上的错误。仅当 activeorder 永远不为 0 时,它才可能正常工作。如果其中任何一个为 0,则图书计数为 0。
    猜你喜欢
    • 2020-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-12
    • 2018-06-29
    • 2016-06-05
    相关资源
    最近更新 更多