1

我正在尝试创建看起来应该是一个非常简单的矩阵报告,我希望有人可以提供帮助。我有返回销售区域、日期和销售额的数据集。要求是将不同时间段的销售额与当前日期进行比较。我想让我的矩阵看起来像这样:

   CurrentSales Date2Sales CurrentVSDate2 Date3Sales CurrentVSDate3
1 1000 1500 -500 800 200
2 1200 1000 200 900 300
3 1500 1100 400 1400 100

我可以得到从一列到下一列的差异,但我需要所有列来引用 CurrentSales 列。任何帮助将不胜感激。

目前我的数据集正在提取日期、地区、产品和销售额。然后我有三个参数,CurrentDate、PreviousMonth、PreviousQuarter。地区和产品是我的行组,日期是列组。接下来,我使用以下表达式在组内添加了一个列:=Sum(Fields!SalesAmount.Value)-Previous(Sum(Fields!SalesAmount.Value),"BookingDate"). 我知道这不正确,因为它将值与列组中的前一个日期进行比较,并且我需要与列组中的第一个日期进行比较。

4

2 回答 2

1

例子:

使用表达式,您可以:

=iif(Sum(Fields!SalesAmount.Value)= Previous(Sum(Fields!Date2Sales.Value)),

=iif(Sum(Fields!EndBalance.Value)=0, Nothing, Sum(Fields!EndBalance.Value)) 也可以使用 Switch。

于 2013-10-24T21:35:50.077 回答
0

获得此结果的最简单方法可能是在您的查询中。向返回的每一行添加一个字段,可能称为“当前销售额”。在那里使用相关子查询来获得正确的比较值。然后你的比较可以简单=Fields!Sales.Value - Fields!CurrentSales.Value或相似。

在报告级别有一些方法可以做到这一点,但它们更让人痛苦:我目前最喜欢的是使用嵌入在报告中的自定义代码。另一种方法是使用聚合的聚合。

于 2013-10-19T15:39:29.890 回答