如何在Reporting Services中缩小“list”对象

时间:2008-11-04 23:46:57

标签: sql-server reporting-services

我在SSRS 2005中的'list'对象中包含一个表和一个关联的图表。我使用表达式来确定表和图表的可见性,但是当表和图表不可见时,一个丑陋的大空白空间(否则它们将被渲染的位置)出现在报告中。

如果只渲染了一些对象,是否有任何“缩小”列表对象的功能?

例如,我有一个包含3个项目的列表:

一个

ç

项目B不符合可见性标准,因此其可见性设置为false。结果是:

A

C

但我想:

一个
ç

有什么建议吗?

4 个答案:

答案 0 :(得分:1)

我不确定我是否完全理解这个问题,但是,为什么不过滤结果而不是改变它们的可见度?我有类似的问题,我的解决方案是重做报告,我发现可见性很有问题而不是有用。

答案 1 :(得分:0)

据我所知,列表高度会根据其中控件的可见性自动增长和缩小。如果是表格或图表,请确保将可见性设置为整个控件。

答案 2 :(得分:0)

另一种解决方案是在表格中显示您的项目,并将表格放在列表中。

  1. 将每个主题放在一个表格行(表格标题)中。
  2. 根据项目的可见性设置表格行的可见性。
  3. 如果一个项目的可见性设置为“隐藏”,则整个表格行将被隐藏,并且根本不会显示。

    祝你好运

答案 3 :(得分:0)

我刚刚解决了这个问题。可见性将负责使项目不可见,但该行仍然是空的。

我的结果:

如果填充A和C,但B为空。

标题A
领域A
标题C
C栏

解决方案:

  1. 使用尽可能小的单个文本框创建列表区域(例如,1行)。
  2. 将文本框的CanGrow和CanShrink属性设置为true
  3. 使用所有报告字段填充文本框。
  4. 修改报告标题的表达式,如果关联字段为空,则写入“”,否则写入字段标题和返回行字符。
  5. 修改报表字段的表达式,如果为空,则写入“”,否则写入字段和返回行字符。
  6. 示例标题表达式: = IIf(Len(Fields!Highlights.Value)> 2,“Highlights”+ VbCrLf,“”)

    示例字段表达式: = IIf(Len(Fields!Highlights.Value)> 2,Fields!Highlights.Value + VbCrLf,“”)