【发布时间】:2011-03-01 18:21:22
【问题描述】:
在 SQL Server 2005 Reporting Services 中,我尝试评估一个表达式,该表达式输出一个数组,我尝试将其与我的报告一起传递给我的 VBScript 代码。 我的参数值是 事业部 MC 光盘 杜
join函数正确输出字符串BU-MC-CD-DU
然后我在表达式中使用 split 函数来拆分值并作为数组输出
=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
代码没有错误,但文本框中没有显示任何值。有人可以告诉我这是为什么吗?
非常感谢,
【问题讨论】:
-
只是多此一举,但您使用的是
option explicit,没有使用on error resume next,而且您在最后一个函数中包含MsgBox debug,不是吗? -
谢谢自动化,我不认为它是数据问题。问题似乎是将数组从表达式传递到报告代码中定义的 VB 脚本函数。假设我只是将连接表达式的字符串输出传递给 VB-Script 函数,然后将其拆分到那里的代码中,它就可以工作了。虽然仍然不确定为什么上面的代码不起作用!
标签: reporting-services vbscript reportingservices-2005