首页 > 解决方案 > SSRS - 添加总数的百分比?

问题描述

我刚开始使用 SSRS,并且有一个如下所示的数据集。

在此处输入图像描述

我已经在这样的矩阵表中构建了它

在此处输入图像描述

我想显示每行总计占总计的百分比,因此对于所附图像,我想显示 35(咨询电话)占 47(总计)的百分比以及法律电话(12)的百分比共 (47)

我试过 =Fields!Calls.Value/sum(Fields!Calls.Value) 但这只是给了我 100% 的结果?

将不胜感激任何帮助

标签: reporting-servicesdaxssrs-2012

解决方案


您需要指定SUM()表达式的范围。

我将简要解释作用域的工作原理,然后得出答案。

SSRS 始终根据表达式的范围评估表达式,该范围通常由表/矩阵中表达式的物理位置定义。从您的设计中可以看出,所有 4 个文本框都显示相同的表达式,[SUM(Calls}]实际上是=SUM(Fields!Calls.Value). 然而,它们给出不同的结果,因为每个的范围不同。例如,第一个在类别行组和月份列组中,第二个在类别行组中但在总月份组中,依此类推......

好的,现在来回答!

假设

  1. 您的行组称为“CategoryGroup”(您将在主设计器下的行组面板中看到名称)
  2. 你的数据集被称为DataSet1

你的表情应该是

=SUM(Fields!Calls.Value, "CategoryGroup") / SUM(Fields!Calls.Value, "DataSet1")

这基本上读..

取当前 CategoryRowgroup 中所有行的调用列的总和,然后除以整个数据集的调用列的总和。

笔记

  • 范围名称必须用引号括起来并且区分大小写
  • 范围名称必须与行组或列组或数据集名称完全匹配。
  • , "CategoryGroup"范围参数可能可以省略,因为无论如何这应该是文本框的范围。

推荐阅读