【问题标题】:How to design textbox visibility expression in SSRS?如何在 SSRS 中设计文本框可见性表达式?
【发布时间】:2014-04-23 21:36:54
【问题描述】:

我有一个 RDL,其表格/文本框可见性设置为:

=iif(Fields!question_caption.Value = "OBJECTIVE 1",false,true)

我试图让这个文本框仅在 question_caption 记录 =“OBJECTIVE 1”时才显示名为“narrative”的值。我怎样才能做到这一点?目前,此文本框不显示任何具有上述逻辑的内容。如果这有什么不同,我会将叙述字段存储在占位符中。

以下是一些示例数据:

create table #dummy_data
(
question_caption varchar(max),
narrative varchar(max)
)
insert #dummy_data values('1st week dates','week 1'),('2nd week dates','week 2'),('3rd week dates','week 3'),('OBJECTIVE 1','obj 1'),
('5th week dates','week 5')
select * from #dummy_data

【问题讨论】:

    标签: tsql expression visibility ssrs-2008-r2


    【解决方案1】:

    我认为您的可见性表达没有任何问题。但是,在您的问题中,您将两个不同的事情作为一个整体进行讨论(即可见性和在占位符中显示值)。

    如果表达式返回 false,hidden 属性将显示一个对象(tablix、文本框、图像、图表、容器等),并在表达式返回 true 时隐藏对象。当我说隐藏时,我的意思是它会将对象从网格中移除,如果一切设置正确,周围的对象将被移动以填充隐藏对象现在的空白空间。

    显示(或不显示)是完全不同的事情。要显示或隐藏一个值,您可以将以下表达式放在占位符的 value 属性中:

    =IIF(Fields!question_caption.Value = "OBJECTIVE 1",Fields!narrative.Value,"")
    

    请注意,我已将其设置为,如果 question_caption 字段的所需值存在,它将显示 narrative 字段的值。否则,它将返回一个空字符串。这将保持报表的布局,但仅根据某些标准显示所需的值或空字符串。

    至于您目前遇到的问题,我不确定为什么会发生这种情况。我会首先检查您的表达式中的 Objective 1 硬编码值中是否存在拼写错误。

    如果这没有帮助,请发表评论并让我知道有关您的问题的更多信息,我会尽力提供帮助。

    【讨论】:

      猜你喜欢
      • 2011-09-10
      • 1970-01-01
      • 2019-10-04
      • 2017-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-22
      • 1970-01-01
      相关资源
      最近更新 更多