0

我正在编写 SSRS 2008R2 中的英国损益报告,并且正在努力计算百分比

这是一个解释我的问题的例子

                 Detail     
Group1  Group2  Invoice Number  Value   %
Sales Total                       810   
        Uk Sales                  150   
                 UK964423          50   
                 UK452872         100   
        European Sales            450   
                 dkkmalk          200   
                 dkf682           250   

        Rest of World Sales       210   
                 USA12353         100   
                 CHIN25410        100   
                 AFGAN14422        10   

Variable Costs                    455   56%
        Material                  200   25%
                 Sand             150   
                 Steel             50   
        Wages                     225   28%
                 Basic Pay        175   
                 Overtime          50   
        Other Production Costs     30    4%
                 Packaging         20   
                 Consumables       10   

可变成本 56% 的百分比计算为可变成本除以销售总额 (455/810)。材料百分比是相似的材料总数除以总销售额 (200/810) 等等,工资和其他生产成本

请问我如何实现这些计算。在大多数情况下,我可以通过组标题中的这样一个公式来获得提名人:

=sum(iif (GroupFieldName.Value="Variable Costs",FieldValue.Value,nothing)

但是总销售额的分母我似乎无法计算!

欢迎提出任何建议,请记住我想“面向未来”SSRS2015 和 SSRS 2017 的公式/代码解决方案

提前致谢

4

1 回答 1

0

由于分组,您的表达式无法正常工作。分组将您的 FieldValues 分开,因此您的 SUM 仅获得组的总数。

该表达式应使用您的字段的总和除以数据集中的所有值。

=SUM(Fields!FieldValue.Value) / SUM(Fields!FieldValue.Value, "Dataset1")

由于 SSRS 检查除以零错误,您可能需要检查这种可能性。

=IIF(SUM(Fields!FieldValue.Value, "Dataset1") = 0, 0, SUM(Fields!FieldValue.Value) )
/ 
 IIF(SUM(Fields!FieldValue.Value, "Dataset1") = 0, 1, SUM(Fields!FieldValue.Value, "Dataset1")

对于 IIF,如果 SUM 为 0,则计算结果为 0/1,即 0,并避免除以零错误。

于 2019-06-04T23:30:39.637 回答