SSRS 2016 - 如何计算组中两个值之间的百分比差异?
SSRS 2016 - How to calculate a percentage difference between two values in a group?
我正在创建一个报告,显示日期 运行ge 之前和日期 运行ge 之后的商品销量。
我 运行 遇到麻烦的部分是日期 1 和日期 2 的总销售额之间的百分比差异。
商品在某一周内可以没有销售。
用户可以在项目 ID 参数中 select 多个项目 ID。
如果需要,我可以将问题更新为 post 我的 SQL 查询。
我试过的
因为我在项目 ID 上放置了一个组,所以我认为 First
和 Last
函数会起作用。
这是我在 PCT 栏上的表达方式。
=(Last(Fields!total_sales1.Value, "Date1")- First(Fields!total_sales1.Value, "Date1")) / First(Fields!total_sales1.Value, "Date1") * 100
但是当我 运行 报告时,我得到以下结果。
我需要 PCT 列中的表达式,它会给出每个项目对的百分比差异。
看起来你的范围不正确。检查按项目 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
您可能必须处理被零除的问题,但在添加任何复杂功能之前先尝试这个。
我正在创建一个报告,显示日期 运行ge 之前和日期 运行ge 之后的商品销量。
我 运行 遇到麻烦的部分是日期 1 和日期 2 的总销售额之间的百分比差异。
商品在某一周内可以没有销售。 用户可以在项目 ID 参数中 select 多个项目 ID。
如果需要,我可以将问题更新为 post 我的 SQL 查询。
我试过的
因为我在项目 ID 上放置了一个组,所以我认为 First
和 Last
函数会起作用。
这是我在 PCT 栏上的表达方式。
=(Last(Fields!total_sales1.Value, "Date1")- First(Fields!total_sales1.Value, "Date1")) / First(Fields!total_sales1.Value, "Date1") * 100
但是当我 运行 报告时,我得到以下结果。
我需要 PCT 列中的表达式,它会给出每个项目对的百分比差异。
看起来你的范围不正确。检查按项目 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
您可能必须处理被零除的问题,但在添加任何复杂功能之前先尝试这个。