reporting-services - SSRS 递归计数 - 如何仅为子级而不是父级获取聚合?

标签 reporting-services hierarchical-data

免责声明 : 我是 SSRS n00b,所以请不要吃太多烂番茄 :)

我有一个使用 Recursive Parent property 构建 Reporting Services 的员工和经理层次结构。 .这是一个粗略的表示:

-Jim Bob
   Ray
  -Steve
     Ricky Bobby
     Terry

例如,我需要统计史蒂夫手下的人数,但是当我调用 Count(Fields!EmployeeID.Value, "Details", Recursive) 时我得到 3 而不是 2 .当然,我可以在计数的情况下减去 1,但是当我需要一个总和时,这将不起作用。所以真正的问题是如何获得排除父级的递归聚合?

附加信息:我只有一个组,它是默认的详细信息组。它的设置就像 this example ,所以我按 EmployeeID 分组,并将递归父级设置为 ManagerID。

更新

我尝试过的一些解决方法无济于事:
  • 在组内添加一行 - 产生相同的结果,因为它仍与其他详细信息行处于同一范围内。
  • 添加小计 - 不起作用,因为它在详细信息组之外,因此它只呈现一次,而不是每个经理一次。

  • 有任何想法吗?

    最佳答案

    你可以考虑几件事。

    1)您可以在提供报告的 ​​SQL 查询中提供计数,然后使用简单地为每个组报告它

          =FIRST(Fields!FieldThatHasCount.Value).
    

    2) 您可以使用报表的代码块来迭代调用函数,增加共享变量的计数或在父部分和子部分之间进行某种算术运算以反射(reflect)报告出现时的计数。我知道根据 SSRS 版本以及报告中的复杂程度、嵌套、子报告等,我遇到了这种方法的复杂性。

    关于reporting-services - SSRS 递归计数 - 如何仅为子级而不是父级获取聚合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8916943/

    相关文章:

    asp.net - 禁用 ASP.Net ReportViewer 控件上的分页

    php - 动态处理多级类别结构

    c# - Winforms中的IHierarchyData和IHierarchicalEnumerable

    sql - SSRS。工作日功能

    ssrs-2008 - SSRS 2008 R2 - 将总计线添加到图表中

    reporting-services - 在 AX2012 中添加子报告的 SSRS 链接

    sql-server - 帮助从 SSRS 2008 中的不同数据库服务器中提取数据

    MySQL查询外键引用主键

    sql - 如何在 postgresql 中使用行的父级?

    mysql - 如何创建MySQL分层递归查询