如何在SSRS表达式中替换switch语句中不支持的html标记

时间:2017-06-06 14:58:24

标签: reporting-services report

我目前使用以下表达式的SSRS文本框:

=Switch
(
    First(Fields!MyAwesomeId.Value, "MyAwesomeDataset") = 0, First(Fields!MyAwesomeNonmessage.Value, "MyAwesomeDataset"),
    First(Fields!MyAwesomeId.Value, "MyAwesomeDataset") = 1, First(Fields!MyAwesomeMessage.Value, "MyAwesomeDataset")
)

将标记类型设置为HTML。

MyAwesomeMessage和MyAwesomeNonmessage字段都包含html break标记,根据microsoft,不会这样呈现。

https://msdn.microsoft.com/en-us/library/cc645967.aspx

如何使用正确的字符替换数据字段MyAwesomeMessage和MyAwesomeNonmessage中的所有中断标记,以便在完成的报表上换行?

1 个答案:

答案 0 :(得分:1)

您可以将switch表达式包装在replace中,以换出您指定的所有文字。

在你的情况下,这可能是这样的:

=Replace(Switch(
                First(Fields!MyAwesomeId.Value, "MyAwesomeDataset") = 0
               ,First(Fields!MyAwesomeNonmessage.Value, "MyAwesomeDataset")

               ,First(Fields!MyAwesomeId.Value, "MyAwesomeDataset") = 1
               ,First(Fields!MyAwesomeMessage.Value, "MyAwesomeDataset")
               )
        ,"<br>"
        ,vbcrlf
        )