VBScript, передающий массив в код SSRS VB - PullRequest
2 голосов
/ 01 марта 2011

В службах отчетов SQL Server 2005 я пытаюсь оценить выражение, которое выводит массив, который я пытаюсь передать в мой код VBScript с моим отчетом.Мои значения параметров: BU MC CD DU

Функция соединения правильно выводит строку BU-MC-CD-DU Затем я использую функцию разделения в выражении для разделения значений и вывода в виде массива как такового

 =Split(join(Parameters!ReportType.Value,"-"),"-",-1,1)

После этого я передаю массив в свой код VBScript в отчете, используя приведенное ниже выражение в текстовом поле:

=Code.debugReportVisible(Split(join(Parameters!ReportType.Value,"-"),"-",-1,1))

Моя функция VBScript выглядит следующим образом

function debugReportVisible(pSelectedReports() ) as String
  dim debug as String
  debug = CStr(pSelectedReports(0))
end function

код не является ошибкой, но в текстовом поле не отображается значение. Может кто-нибудь сказать, почему это так?

Большое спасибо,

1 Ответ

4 голосов
/ 02 марта 2011

Итак, я просто передал разделенную строку hypen (-) в функцию isReportVisible из моего выражения соединения, определенного для свойства hidden каждого подотчета (например, скрытое выражение видимости подотчета BU, как показано ниже)

=Code.isReportVisible(join(Parameters!ReportType.Value,"-"),"BU")  

function isReportVisible(pSelectedReports as String, pSubReport as String) as Boolean
      dim hidden as Boolean
      dim reportArray
      dim counter
      hidden = true
      counter = 0
      reportArray= Split(pSelectedReports,"-")
      for counter = 0 to UBound(reportArray)
      If reportArray(counter) = pSubReport Then
      hidden = false
      End If
    Next
      return hidden 
    end function

Надеюсь, это кому-нибудь поможет ...

...