Tom*_*Tom 8 matrix reporting-services ssrs-2008
想要在我的SSRS矩阵中添加一列,它将从该行的总列中获得百分比.
我正在使用以下表达式,但我的百分比保持100%(我假设这是因为总计被评估为最后一次,所以它只是做总计/总计?
=FORMAT((Fields!ID.Value/SUM(Fields!ID.Value)), "P")
Run Code Online (Sandbox Code Playgroud)
字段ID在SQL中计算,而不是SSRS.
例如
Site | Value 1 | %1 | Value2 | %2 | Total
1 | 20 | 50% | 20 | 50% | 40
Run Code Online (Sandbox Code Playgroud)
nik*_*trs 19
可能会发生这种情况,因为您需要为SUM函数定义正确的范围:
SUM(Fields!ID.Value,"group_name") 而不是平原 SUM(Fields!ID.Value)
更新:
我需要一些时间来做一个例子,因为我第一次回答你时没有提供报告服务.
您可以看到结果和字段值


如果没有关于组的设置的更多信息,很难提供详细信息,但是您应该将范围选项用于聚合运算符(如SUM或第一个):
=SUM(Fields!ID.Value, "NameOfRowGrouping") / SUM(Fields!ID.Value, "TopLevelGroupName")
Run Code Online (Sandbox Code Playgroud)
此外,为了保持清洁,您应该将格式移出表达式,并移动到包含您的值的占位符属性或文本框属性.