SSRS 2005中的字符串聚合

Dav*_*vid 10 .net reporting reportingservices-2005 reporting-services

使用BIDS 2005创建rdl报告.我想让报告聚合数据组中的所有字符串.我一直在寻找Concatenate(Fields!CompanyName.Value,","),或者Join等等的东西.但它必须迭代给定范围内的所有记录.

我正在以日历格式创建用户活动的报告(看起来像谷歌的月视图日历)但是如果用户在一天内有多个活动,我希望所有活动都显示在同一个"日期框"中.这是一个需要聚合的问题,还是有其他方法来获取SSRS报告来做到这一点,我试图找到一种方法让矩阵为我做,但我正在打击墙.

Pet*_*hia 11

在SSRS中进行聚合连接的常用方法是使用自定义代码.请看这里的例子:

http://blogs.msdn.com/suryaj/archive/2007/08/11/string-aggregation.aspx

这是基本形式的自定义代码:

Private CurrGroupBy As String = String.Empty
Private ConcatVal As String = String.Empty
Public Function AggConcat(GroupBy as String, ElementVal as String) as String
    If CurrGroupBy = GroupBy Then
        ConcatVal = ConcatVal & ", " & ElementVal 
    Else
        CurrGroupBy = GroupBy 
        ConcatVal = ElementVal 
    End If
    Return ConcatVal 
End Function
Run Code Online (Sandbox Code Playgroud)

在您要显示的分组级别跟随此表达式:

=RunningValue(
     Code.AggConcat(
         Fields!YourFieldToGroupBy.Value
       , Fields!YourFieldToConcat.Value
       )
   , Last
   , "YourGroupName" 
   )
Run Code Online (Sandbox Code Playgroud)

"YourGroupName"通常为"table1_Group1",如果它是第一个表和您在报表中创建的第一个组,并且未指定其他名称.