Reporting services SSR保持“确定”;“块”;“文本的定义”;原子的;在报表标题中

Reporting services SSR保持“确定”;“块”;“文本的定义”;原子的;在报表标题中,reporting-services,Reporting Services,我有一些文本我想保持“原子”在一个报告标题。所涉案文为“期间结束日期:1998年1月15日”。如果这段文字在下面结束就可以了,但是我想把整段文字放在一行。但是,这必须是动态的,因为文本会动态地增长和收缩——有时服务器、数据库和公司名称会很短,所有内容都放在一行中,有时甚至数据库名称也需要换行 这就是我在表达式中定义它的方式 保持它的“原子性”是可能的吗?正如评论所说,您基本上有两个选择,要么使文本框足够宽,以适应可能出现的公司、服务器、数据库和结束日期的任何可能组合,您可以使用max(len

我有一些文本我想保持“原子”在一个报告标题。所涉案文为“期间结束日期:1998年1月15日”。如果这段文字在下面结束就可以了,但是我想把整段文字放在一行。但是,这必须是动态的,因为文本会动态地增长和收缩——有时服务器、数据库和公司名称会很短,所有内容都放在一行中,有时甚至数据库名称也需要换行

这就是我在表达式中定义它的方式


保持它的“原子性”是可能的吗?

正如评论所说,您基本上有两个选择,要么使文本框足够宽,以适应可能出现的公司、服务器、数据库和结束日期的任何可能组合,您可以使用max(len([您的字段])在SQL中,确定可能的最大字符数,然后根据字体信息计算出宽度——或者,您可以将单独的信息块放入单独的文本框中,并对其进行排列,但这对您来说是最美观的。就我个人而言,我会在一行上有一个公司名称框,下面是服务器和数据库,下面是结束日期。当然,这取决于你的喜好

@Jeff.Clark,我想你需要重新考虑一下设计。我同意@Viking的评论。据我所知,您试图实现的目标在SSRS中是不可能的(保持Can Grow=False),并且希望将其包装在字段级别而不是单词级别。我尝试在占位符中使用它,但它正在分割字段


然而,若你们的要求是非常关键的,无论你们必须以这种方式做什么,我认为你们可以通过确定单元格在一行中可以容纳的最大字符数,然后减去字段长度和文本的总和(例如:“每个工资周期的总数”)来实现并在字符串中找到插入
VBCRLF
的位置,以便将其余数据转到下一行。如果没有原始表达式,我将无法提供准确的更新表达式,但它将嵌套IIF以获得
VBCRLF
的位置。我个人不喜欢这种方法,因为它需要在报表设计级别进行大量处理,可能会影响报表的整体性能,而且在维护报表时也不太美观

你能粘贴SSRS报告的设计吗?如果你对设计非常好奇,那么为什么你要使用单个文本框并试图将所有内容显示为单个字符串?您应该拆分表达式并将值放在不同的文本框中,以便您所需的设计格式可以保持不变。@好奇地跳过XML?这是什么意思?“如果这段文字放在下面就可以了,但我想把整段文字放在一行”如果“期限结束日期:1998年1月15日”放在第二行就可以了,但我希望整段文字放在第二行,而不是分开。呃,我是一个独立的承包商,所以更多的是关于业务需求:)感谢您的输入!