我的SQL08-R2数据库中有一个小的20行表,它有一个nvarchar(max)字段。在这个领域内,我写了各种CR / LF的文本(见下图):
出于某种原因,当我创建一个RDL文件并将此特定字段放在Reporting Services中的“表”中时,有时CRF / LF的显示正常,有时则不然。我一直在搜索和排除故障几个小时,但没有答案...
所有文字都显示但是换行符在某些行上有效,但在其他行上却没有。
有关如何正确渲染换行符的任何想法?
答案 0 :(得分:5)
感谢Cory的回复......它接近最终的作用:
=Replace(Fields!Header01.Value, Chr(13) ,Chr(10))
答案 1 :(得分:1)
我不知道这是否会起作用,但也许您可以尝试将表中的nvarchar(max)字段转换为表达式替换每个出现的换行符或回车符{{{ 1}}。或者您可能需要反过来:将CHAR(10) & CHAR(13)
替换为CHAR(10)
,将vbLf
替换为CHAR(13)
:
vbCr
或者:
=Replace(Fields!YourField.Value, VbCrLf, CHAR(10) & CHAR(13))
我不记得哪个更好用了,但我之前必须这样做才能帮助清理一些用户输入。由于数据库中的数据源,行为可能是“间歇性的”。如果他们从各种操作系统上的各种应用程序进行复制和粘贴,则换行和回车可能看起来不同或不存在。