none
使用SQL Server 报表服务的时候,如何获得SharePoint列中不同的值? RRS feed

  • 常规讨论

  • 您可以使用自定义代码,从而获得不同的记录。

    以下是详细的步骤:
    1. 新建一个和主数据集一样的数据集,然后创建一个隐藏的参数,获取新数据集的一个字段中的所有记录.
    2. 创建一个函数用来剔除相同的记录。
        这是代码:
        Public Shared Function RemoveDups(ByVal items As String) As String
        Dim noDups As New System.Collections.ArrayList()
        Dim SpStr
        SpStr = Split(items ,",")
        For i As Integer=0 To Ubound(Spstr)
        If Not noDups.Contains(SpStr(i).Trim()) Then
        noDups.Add(SpStr(i).Trim())
        End If
        Next
      Dim uniqueItems As String() = New String(noDups.Count-1){}
        noDups.CopyTo(uniqueItems)
        Return String.Join(",", uniqueItems)
      End Function
    3. 创建另一个参数用来过滤主要的数据。
        请将可用值设置为:
         =Split(Code.RemoveDups(JOIN(Parameters!ISSUE_STATUS_TEMP.Value, ",")), ",")
        默认值可以自主选择,例如第一个值:
        =Split(Code.RemoveDups(JOIN(Parameters!ISSUE_STATUS_TEMP.Value, ",")), ",").(0)
    4. 选择主数据集并且打开这个数据集的属性窗口。
    5. 在“过滤器”选项卡中,将过滤器设置为:
         表达式:被过滤的字段
         运算符:=
         值: =Parameters!Region.Value

    这个”Region”参数是我们在第三步中创建的参数。现在,我们可以获得SharePoint列中不同的值。

    2011年10月19日 1:24
    版主