【问题标题】:SSRS Hyperlink dual parameters errorsSSRS 超链接双参数错误
【发布时间】:2018-11-08 08:02:28
【问题描述】:

我正在尝试传递 SSRS 中的超链接以从文本框中打开新的 SSRS 报告(pdf 格式)。它目前已设置好并可以传递单个参数:

="http://servername/ReportServer_REPORTS16/Pages/ReportViewer.aspx?%2fdummy%2fDocuments%2fCertificate+of+Insurance+Issued&rs:Command=Render&PolicyNo=" & 参数!PolicyNo.Value &"&rs:Format=PDF"

但是当我添加第二个参数时:

="http://servername/ReportServer_REPORTS16/Pages/ReportViewer.aspx?%2fdummy%2fDocuments%2fCertificate+of+Insurance+Issued&rs:Command=Render&PolicyNo=" & 参数!PolicyNo.Value &"& Entitled="&Parameters!Entitled.Value &"&rs:Format=PDF"

我收到一条错误消息:

文本框的 ActionInfo.Action.Hyperlink 表达式 “Textbox48”包含错误:[BC30277] 键入字符“&”不 匹配声明的数据类型“对象”。

我已经完成了在谷歌上发现的所有类似错误,但无法弄清楚我哪里出错了。

【问题讨论】:

  • 这可能是您的字符串中在您的 & 和 Entitled 之间有一个空格 - &"& Entitled="& 应该是 & "&Entitled="&。它正在尝试解析到空间的链接。

标签: reporting-services ssrs-2012


【解决方案1】:

您需要将所有值转换为字符串,然后使用+ 运算符....

这是我的一份报告中的一个例子,它做同样的事情。

=IIF(Fields!PackSizeDesc.Value = Nothing, Nothing, 
"http://MyServername/ReportServer?/Brand+Value/_sub+SKU+Price+Details" 
 + "&CountryID=" + cStr(Fields!CountryID.Value)
 + "&CategoryID=" + cStr(Fields!CategoryID.Value)
 + "&RecordedPeriodID=" + cStr(Parameters!PeriodID.Value)
 + "&TMB=" + cStr(Fields!TrademarkBrandID.Value)
 + "&PriceStage=" + cStr(IIF(Fields!IsActualprice.Value = 1, 10, 11))
 + "&pm=" + cStr(Fields!PackMaterialID.Value)
 + "&pt=" + cStr(Fields!PackTypeID.Value)
 + "&ps=" + cStr(Fields!PackSizeID.Value)
 + "&psu=" + cStr(Fields!PackSizeUnitID.Value)
 + "&upp=" + cStr(Fields!UnitsPerPack.Value)
 + "&rc:Parameters=Collapsed")

注意:如果特定列中现在有值,则第一行只会禁用链接。这不会呈现为 PDF,但这不是您的问题的一部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 2019-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    相关资源
    最近更新 更多