我正在使用Report Builder 2016,我试图在我的文本框中包含一个标记。但是,SSRS不会使用参数解释完整的URL字符串。例如,我的标签是以下
<a href=http://www.google.com?ID=123456>some text</a>
SSRS只能解释参数的等号:http://www.google.com?ID
。通过将文本框表达式的占位符属性切换回“从HTML测试”,我可以确认正在传入完整的URL字符串。
这是正在使用的完整表达式。这是在矩阵表中显示日历格式。 ID_URL
字段是完整的URL字符串:
=IIF(Fields!Site.Value <> ""
,JOIN(LOOKUPSET(Fields!DayNumberOfMonth.Value
,Fields!DayNumberOfMonth.Value
,Fields!ID_URL.Value
,"Month"
)
,"<br>"
)
,""
)
有关如何让SSRS用以下参数解释整个href
字符串的任何想法?
答案 0 :(得分:1)
由于源数据中包含URL,我认为您可以更轻松地显示您希望用户在文本框中看到的内容,并将文本框的Action
属性设置为ID_URL
字段中返回的网址。
如果您需要显示多个网址,您还可以将网址编码为不包含任何特殊字符。对于=
,这将是%3D
。我没有测试过这个,但我相信你也可以调用URLEncode
函数:
System.Web.HttpUtility.UrlEncode(YourUrl)
您需要添加一个程序集引用来执行此操作,如果您不确定如何,可以通过this tutorial进行操作。
如果您绝对无法使用汇编引用,则可以使用this W3Schools web page作为参考,为您拥有的任何特殊字符手动添加replace
函数。