2

我有一个与此类似的 SSRS tablix:

+----------+-----------+--------+--------+
|  Total   | RowGroup  | Group1 | Group2 |
+----------+-----------+--------+--------+
| Perdiod1 | RowGroup1 | Value  | Value  |
|          | RowGroup2 | Value  | Value  |
| Perdiod2 | RowGroup1 | Value  | Value  |
|          | RowGroup2 | Value  | Value  |
| Perdiod3 | RowGroup1 | Value  | Value  |
|          | RowGroup2 | Value  | Value  |
+----------+-----------+--------+--------+

现在,对于每个时期,我想计算每个组中的计数。当我做:

Count(TableValue.Value, "Perdiod") 

我得到了该期间的总数(对于两个列组)。当我做

Count(TableValue.Value, "ColumnGroup")

我得到所有时期的总数。所以真的,我需要做的是这样的:

Count(TableValue.Value, "TablixRow", "TablixColumn")

这显然不存在。

所以“价值”应该是一个时期内一个组的总计数(因此,在上面给出的例子中,价值将在每个时期重复两次(每个行组一次))

有没有办法在 SSRS 的 tablix 中显示指定列和行组中所有值的计数?

4

2 回答 2

2

您只需要将聚合表达式添加到没有指定范围的矩阵详细信息字段中,例如:

=Count(Fields!Value.Value)

由于您不提供范围,因此聚合将在其当前范围内计算,对于这些值字段,该范围将是特定的组/期间组合。

评论/更新后编辑

嗯...我正在尝试一种简单的方法来做到这一点,但是空手而归...我四处乱逛,可以得到任何组合,除了你想要的组合。

基本上你正在寻找类似的东西:

=Count(Fields!Value.Value, "ParentRowGroup", "CurrentColumnGroup")

我想不出一种有效的方法来做到这一点。

老实说(对于 SSRS 来说,这不是第一次),这里阻力最小的路径是在生成它时将要显示为额外列的周期计数添加到 DataSet,然后只在矩阵的细节。

烦人,但是如果您可以控制 DataSet,那么它对于报告级别的难题是一个简单的解决方案。

于 2013-05-07T14:00:24.840 回答
0
=CountRows()
=CountRows("GroupByInitial")
=CountRows("GroupByInitial",Recursive)
于 2014-11-06T22:44:55.790 回答