SSRS 2005中的组的RowNumber

Fis*_*ury 11 reportingservices-2005 reporting-services ssrs-grouping

我在SSRS报告中有一个表,它只显示一个组,而不是表格详细信息.我想找出正在显示的项目的行号,以便我可以使用颜色条带.我尝试使用"Rowcount(Nothing)",但我获得了详细信息表的行号.

我的基础数据是这样的

ROwId   Team      Fan

1       Yankees   John
2       Yankees   Russ
3       Red Socks Mark
4       Red Socks Mary
...         
8       Orioles   Elliot
...         
29      Dodgers   Jim
...
43      Giants    Harry 
Run Code Online (Sandbox Code Playgroud)

我只显示组的表格如下所示:

ROwId   Team
2       Yankees
3       Red Socks   
8       Orioles
29      Dodgers 
43      Giants  
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像

ROwId   Team
1       Yankees
2       Red Socks   
3       Orioles
4       Dodgers 
5       Giants  
Run Code Online (Sandbox Code Playgroud)

Ian*_*ton 30

您可以使用RunningValue表达式执行此操作,例如:

=RunningValue(Fields!Team.Value, CountDistinct, "DataSet1")
Run Code Online (Sandbox Code Playgroud)

DataSet1 是底层数据集的名称.

考虑一下数据:

在此输入图像描述

创建一个简单的报告并比较这些RowNumberRunningValue方法可以显示RunningValue所需的结果:

在此输入图像描述


Joa*_*eal 8

你可以通过一点点的vbcode轻松实现这一点.转到报告 - 属性 - 代码并键入以下内容:

Dim rownumber = 0
Function writeRow()
  rownumber = rownumber + 1
  return rownumber
End Function
Run Code Online (Sandbox Code Playgroud)

然后在您的单元格上,使用调用此函数 =Code.writeRow()

一旦开始在表中使用组,RowNumber和RunningGroup函数就会开始获得一些奇怪的行为,因此更容易编写一些代码来执行您想要的操作.