如何在SSRS中设计文本框可见性表达式?

时间:2014-04-23 21:36:54

标签: tsql expression visibility ssrs-2008-r2

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

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

我正在尝试使此文本框仅在question_caption record =“OBJECTIVE 1”时显示名为“叙述”的值。我怎样才能做到这一点?目前,此文本框不显示上述逻辑。如果存在任何差异,我将叙述字段存储在占位符中。

以下是您的一些示例数据:

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

1 个答案:

答案 0 :(得分:0)

我发现你的知名度没有任何问题。但是,在您的问题中,您将两个单独的事物作为一个讨论(即,可见性和在占位符中显示值)。

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

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

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

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

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

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