首页 > 解决方案 > 在报表标题中显示列值

问题描述

需要在 Lookupset 中传递一列,我正在做如下

="Billing Code: "+Code.JoinDistinct(LookupSet(Fields!BillingCode.Value, Fields!BillingCode.Value, Fields!BillingCode.Value, "DataSet1"),",")

并且功能是

public shared function JoinDistinct(
  dups as object(),
  delimiter as string
) as string

  dim result as string = ""
  system.array.sort(dups)

  for i as integer = 0 to dups.length - 1
    if i <> 0 then result += delimiter
    if i = 0 orElse dups(i) <> dups(i-1) then result += dups(i)
  next i

  return result

end function

结果

计费代码:,,,A,,,,,,

如何删除多余的逗号

标签: reporting-services

解决方案


您尝试做的事情当然是可能的,但需要一些解决方法。该Join函数旨在处理一组值。您使用的列,即使它在该范围内可能有多行,也不是数组。您可以使用该LookupSet函数将行作为数组获取并将它们传递给Join函数。如果您可能要删除重复的值,则必须添加自定义代码来处理它。

这是一个如何做到这一点的例子:https ://stackoverflow.com/a/27141955/2033717

让我知道这是否回答了您的问题。


推荐阅读