【问题标题】:SSRS show/hide tablix column programmatically based on parameter in rdl fileSSRS 根据 rdl 文件中的参数以编程方式显示/隐藏 tablix 列
【发布时间】:2011-07-25 17:07:39
【问题描述】:

我有一个包含 3 列 tablix 表的 SSRS rdl 文件,我想根据 rdl 参数以编程方式显示和显示任何列。

我可以通过将列的隐藏属性设置为表达式来实现:

=Parameters!ShowSecondColumn.Value

但是,问题是中间列隐藏的时候,列的空间还在。我需要的是第三列移动并占据第二列。

任何想法都会非常感激。

sss 2008 r2

【问题讨论】:

  • 您能否确认您正在设置实际的“列可见性”,而不仅仅是列中字段的可见性?以我的经验,当列可见性设置为隐藏时,隐藏列右侧的任何列都会占用隐藏列的空间。
  • @Kevin Fisher 谢谢。有用。我正在设置字段,而不是“列可见性”。谢谢!

标签: ssrs-2008 reporting-services ssrs-tablix


【解决方案1】:

感谢凯文·费舍尔。正如他所指出的,应该设置“列可见性”而不是字段可见性。

【讨论】:

    【解决方案2】:

    假设我的报告(SSRS 2005)有 5 列。我想根据用户选择的参数(所有 5 个列名的多选)显示/隐藏列。如下操作

    1) 创建一个字符串类型的参数(ColumnVisibility 是我的参数的名称),在“可用参数向导的“值”部分。

    2) 然后转到设计上的列属性。转到“可见性”并粘贴以下内容

    =iif(instr(Join(Parameters!ColumnVisibility.Value,","),"01")>0,false,true)

    3) 对所有列重复相同的操作,将 int 值增加 1..参见以下示例

    第二列 -

    =iif(instr(Join(Parameters!ColumnVisibility.Value,","),"02")>0,false,true)

    第三栏

    =iif(instr(Join(Parameters!ColumnVisibility.Value,","),"03")>0,false,true)

    等等。

    对于 SSRS 2008,当您右键单击该列时,您可以看到“列可见性”选项。将代码粘贴到每列的“根据表达式显示或隐藏”部分。

    希望这会有所帮助。

    阿文德

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多