SSRS 2016-如何计算一组中两个值之间的百分比差异?

时间:2019-05-02 15:02:02

标签: reporting-services ssrs-grouping ssrs-2016

我正在创建一个报告,该报告显示日期范围之前和之后的商品销售情况。

我遇到麻烦的部分是日期1和日期2的总销售额之间的百分比差异。

项目在某周不能销售。 用户可以在商品ID参数中选择多个商品ID。

我可以根据需要更新问题以发布SQL查询。

我尝试过的事情

自从我对项目ID进行分组以来,我认为FirstLast函数将起作用。

这是我在PCT栏上的表达。

=(Last(Fields!total_sales1.Value, "Date1")- First(Fields!total_sales1.Value, "Date1")) / First(Fields!total_sales1.Value, "Date1") * 100

但是当我运行报告时,我得到以下结果。

enter image description here

我需要在PCT列上添加一个表达式,以便为每个项目对提供一个百分比差异。

1 个答案:

答案 0 :(得分:0)

您的范围似乎不正确。检查在行中按项目ID分组的行组(假设行组称为“ yourItemRowGroupName”)。

然后更改您的表达式以使用该范围而不是“ Date1”。

实际上,您可能根本不需要该作用域,因为它应该在表达式所在的作用域内工作(在您的情况下,在您的ItemID组中)。

所以尝试

=(Last(Fields!total_sales1.Value)- First(Fields!total_sales1.Value)) / First(Fields!total_sales1.Value) * 100

或..

=(Last(Fields!total_sales1.Value, "yourItemRowGroupName")- First(Fields!total_sales1.Value, "yourItemRowGroupName")) / First(Fields!total_sales1.Value, "yourItemRowGroupName") * 100

您可能需要处理被零除的问题,但是请先尝试从零开始,然后再添加更多复杂性。