所以,假设我有以下字符串
THIS IS STUFF (MORE STUFF)
如何让字符串在 SSRS 的文本框中格式化?
THIS IS STUFF
(MORE STUFF)
此数据是从查询中的单个字段中提取的,我将无法手动注入断线。
此外,有时(更多的东西)不在现场。
额外的例子:
所以,假设我有以下字符串
THIS IS STUFF (MORE STUFF)
如何让字符串在 SSRS 的文本框中格式化?
THIS IS STUFF
(MORE STUFF)
此数据是从查询中的单个字段中提取的,我将无法手动注入断线。
此外,有时(更多的东西)不在现场。
额外的例子:
您需要在字符串中插入换行符,即将文本框表达式设置为:
="THIS IS STUFF" & vbcrlf & "(MORE STUFF)"
所以单个文本框中的表达式:
将呈现为:
即使字符串可以放在一行上,您也可以看到有一个换行符。
评论后编辑
好的,我们需要在报表级别处理各种现有字符串。
为此,我建议使用自定义代码,即类似以下的函数:
Function SplitString (fieldValue As String) As String
If IsDBNull(fieldValue) OrElse IsNothing(fieldValue) Then
SplitString = ""
Else If InStr(fieldValue, "(") > 0
SplitString = RTrim(Left(fieldValue, InStr(fieldValue, "(") - 1)) & _
vbcrlf & Right(fieldValue, Len(fieldValue) - InStr(fieldValue, "(") + 1)
Else
SplitString = fieldValue
End If
End Function
我建议这是因为 SSRS 表达式非常脆弱,并且缺少短路意味着对一个字符串有效的内容可能会显示#Error
在另一个字符串上。你可以用大量的IIf
语句来解决这个问题,但自定义代码更简洁,更容易理解。
您可以使用如下表达式调用该函数:
=Code.SplitString(Fields!MYFIELD.Value)
在文本框表达式中或作为数据集中的计算字段。以上适用于我的数据: