一个字段的总和减去另一个 SSRS 表达式的总和

Sum of one field minus sum of another SSRS Expression

我正在处理一份 SSRS 报告。我想做的是从一个字段自己的数据集中获取一个字段的值,然后从另一个数据集中减去另一个字段的值。我可以做这个;然而,这些值是分组的,所以它没有给我一个单独的值,而是给我:(all 的总和已完成)-(all 的总和已完成前一年)。

这是我用于列 "Compared to last year"

的表达式
=SUM(Fields!Completed.Value, "MTDSales") - SUM(Fields!Completed.Value, "MTDminus1")

"MTDSales""MTDMinus1" 是 2 个独立的数据集。 MTDSales 数据集是按公司分组的当月销售结果 MTDMinus1 数据集是本月的去年数字,因为我分别比较了这两个月。

我必须在一份报告中执行此操作,我从一个数据库中提取当前数据,从数据仓库中提取旧数据并进行合并。您需要做几件事:

1.建立匹配字段

这可以像单列一样简单。如果您需要匹配多个字段,则需要将计算字段添加到您可以匹配的每个数据集。假设您需要匹配公司和财政年度以及每个数据集 returns 一年的数据,这可能看起来像 match_id (假设数值 - 否则您可能需要使用 | 或其他东西作为分隔符):

`="A" & Fields!fin_year.Value & "B" & Fields!cust_id.Value`

2。检索数据到源字段。

在您的 Tablix 中添加一列,因为您必须保留查找到的值:

=Lookup(Fields!matchId.Value, Fields!matchId.Value, Fields!Completed.Value, "MTDminus1")

3。使用数据

现在您可以聚合数据或进行任何您希望的进一步计算,就好像该字段是原始数据集的一部分一样。