SSRS掩码连续的行

时间:2015-10-06 09:34:22

标签: reporting-services ssrs-2012

这是我的问题

我有一个包含5个行组的结果集,在显示的另一个日期(组外)我需要显示一个数字,但是为了缩小表格,我想掩盖所有跟随第一个的数字。

我的虚构数据集示例(销毁产品列表):

BRAND   MODEL   SUB-MODEL PRICE   DATE       SERIAL(always an integer)
A1      M1      SM-M11    100.0   2015-09-01             100001
A1      M1      SM-M11    100.0   2015-09-01             100002
A1      M1      SM-M11    100.0   2015-09-01             100003
A1      M1      SM-M11    100.0   2015-09-01             200005
A1      M1      SM-M11    100.0   2015-09-01             200006
SkyNet  T800    101       112.0   1984-10-26               1235
SkyNet  T1000   T1001     1000.0  1991-07-01               1287
SW      R2      D2        130.0   1977-05-25               5351
SW      R2      D2        130.0   1977-05-25               5352             
SW      R2      D2        130.0   1977-05-25               5353

以下是应该展示的内容

------------------------------------------------------------------------
|  BRAND |  MODEL | SUB-MODEL | PRICE  | DATE       | SERIAL           |
------------------------------------------------------------------------
| A1     | M1     | SM-M11    | 100.0  | 2015-09-01 | 100001 to 100003 |
| A1     | M1     | SM-M11    | 100.0  | 2015-09-01 | 200005 to 200006 |
| Skynet | T800   | 101       | 112.0  | 1984-10-26 | 1235             |
| SW     | T1000  | T1001     | 1000.0 | 1991-07-01 | 1287             |
| SW     | R2     | D2        | 130.0  | 1977-05-25 | 5351 to 5353     |
------------------------------------------------------------------------

如果我想根据此表达式隐藏行

=CStr(Previous(Fields!Column6.Value)+1) = Cstr(Fields!Column6.Value)

它不起作用,只有Column6可以被这样的例外隐藏,并且它会离开" hole"在我的报告中,因为行组仍然出现在行前面。

我怎么能实现这个目标?

2 个答案:

答案 0 :(得分:0)

听起来您应该使用分组来处理 - 无论是在数据集的源查询中,还是在报表本身中。如果我在报告中这样做,根据您的示例数据集,我将有一个表格,对所有这些列的值进行分组:

BRAND
MODEL
SUB-MODEL
PRICE
DATE

看起来SERIAL的第一位数字也有分组(即(1)00001,(1)00002,(2)00005)。由于SERIAL是一个整数,你应该可以使用像=Left(CStr(Fields!SERIAL.Value), 1)这样的分组表达式,然后使用=Min(Fields!SERIAL.Value) & " to " & Max(Fields!SERIAL.Value)

之类的单元格表达式

答案 1 :(得分:0)

我找到了一个解决方案但没有SSRS:我通过修改已完成的查询修改了数据集的结果。解决方案与此帖有关:Group consecutive rows that are incremented by 1。我没有尝试使用SSRS做同样的事情。