gpt4 book ai didi

reporting-services - SSRS 2008 多行数据在报表中显示为一行

转载 作者:行者123 更新时间:2023-12-01 10:06:30 25 4
gpt4 key购买 nike

我有一份报告将一个数据字段返回到 Tablix 控制字段。数据字段包含数据库中的多行信息。下面的例子。在 SQL Server 中,
“Dan Chief - Ceo - Indiana Office”
“Dan Chief -” & vbcrlf & “Ceo” & “- Indiana Office”

vbcrlf 不显示在 SQL Server 中,但我已通过在 SSRS 中使用 instr() 确认它们存在。

我希望数据这样显示。我可以删除连字符和空格。
丹长
总裁
印第安纳办公室

但在 SSRS 报告中,它显示在一行中。我选中/打开了自动增长复选框,但仍然没有。

欢迎提出任何想法。

谢谢。

最佳答案

有两个方向可以实现这一目标。您想要的方法取决于您是否将文本格式化为 HTML(右键单击单元格中的文本,选择 Placeholder Properties。如果标记类型是 HTML,请使用下面的第一种方法。)

听起来像您将这些呈现为 HTML,因为如果您设置为 None,vbcrlf 将显示。

将文本视为 HTML:

您需要将 vbcrlf 替换为 <br/>标签。如果您在报表中使用嵌入式代码,这是最简单的。在报告的代码中创建一个函数:报告菜单,报告属性 -> 代码部分。

Public Function ReplaceLineBreaks(ByVal s As String) As String
Dim strBuilder As New System.Text.StringBuilder(s)
If s.Contains(vbCrLf) Then
strBuilder.Replace(vbCrLf, "<br/>")
Return strBuilder.ToString()
Else : Return s
End If
End Function

现在设置您的字段以使用此代码:=Code.ReplaceLineBreaks(字段!ColumnA.Value)

如果您不将文本视为 HTML

在这种情况下,vbCrLf 应该被保留和显示,所以如果这确实是您存储在 SQL 中的内容,那么您应该没问题。如果字符串中有一些其他字符,则可以更改我在上面提供的 ReplaceLineBreaks 函数以插入 vbCrLf。

关于reporting-services - SSRS 2008 多行数据在报表中显示为一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9929793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com