同时隐藏具有相同表达式的 SSRS 报告中的多行或多列
Hide multiple rows or columns in SSRS report with same Expression at same time
我有一个包含 Tablix/table 的报告,其中包含我通过 Column/Row 可见性对话框使用表达式有条件地隐藏的行和列集。
例如,如果我有 3 个列,我希望它们都具有相同的表达式来确定它们的可见性,有什么方法可以实现这一点,而无需为每个列打开“列可见性”对话框并输入适当的表达式?
我试过选择多个列,但右键单击上下文菜单不再提供“列可见性”选项(显示为灰色),我还尝试了列的隐藏 属性 (可以通过选择多列来批量修改),但这只会停止呈现列,在它们曾经所在的位置留下空白 space(而不是列可见性的工作方式,列在列的右侧)隐藏的列被移动以填补空白,就像在 Excel sheet).
中隐藏列一样
是否有可能实现我所追求的,或者我是否必须继续为每个 column/row 打开 Column/Row 可见性对话框我希望有条件地 hide/show?
Select 您要有条件地隐藏的列,然后按 F4
查看属性 Window。查找 Visibility 节点并使用 Hidden
属性 设置条件表达式。
表达式的计算结果应为 True
(隐藏)和 False
(显示)。
如果这有帮助,请告诉我。
如果您要控制其可见性的列彼此相邻,您可以为它们创建一个列组并通过组管理可见性。
- 在适当的级别添加一个新的列组,以便只包含相关的列。
- 如果您已有列组,这可能是子组或相邻组。
- 如果没有,您可以通过将数据集字段从报表数据拖到组窗格中来创建初始列组。
- 在新组中插入新列,并将现有相关列中的数据移动到组中。
- 新组不需要重复,所以在它的属性 window 中设置
Group on:
为纯文本值,例如"1".
- 将所需的可见性设置输入属性的可见性页面 window。
- 对于组内的每个单独的列,将
Hidden
属性 设置为 False,以删除可能干扰的任何其他表达式或设置。
不完全是您要查找的内容,但可能是中间点 - 这可以应用于除可见性之外的许多其他内容(例如背景颜色、工具提示)- 使用查看代码直接编辑 RDL。这有一个额外的好处,即能够实现每列几乎相同的更改,而不是使用最少的鼠标来实现相同的更改。
通常我会在设计器中按照我喜欢的方式设置一列,然后在其他列下设置 copy/paste。在可见性的情况下寻找 <TablixColumnHierarchy><TablixMemebers>
。您将看到一个空的 <TablixMember />
项目列表以及您已设置一列的扩展 <TablixMember><Visibility><Hidden>=...
块。只需将该块复制粘贴到感兴趣位置的空项目上(不幸的是,您需要将其计算在内,因为没有标识符)。
额外提示:如果您犯了错误或想稍后更改某些内容,您可以一次替换所有表达式(允许使用可选的正则表达式)。
请记住先备份或签入您的工作,因为如果您出错,设计者可能无法再次正确打开该报告:-)
我有一个包含 Tablix/table 的报告,其中包含我通过 Column/Row 可见性对话框使用表达式有条件地隐藏的行和列集。
例如,如果我有 3 个列,我希望它们都具有相同的表达式来确定它们的可见性,有什么方法可以实现这一点,而无需为每个列打开“列可见性”对话框并输入适当的表达式?
我试过选择多个列,但右键单击上下文菜单不再提供“列可见性”选项(显示为灰色),我还尝试了列的隐藏 属性 (可以通过选择多列来批量修改),但这只会停止呈现列,在它们曾经所在的位置留下空白 space(而不是列可见性的工作方式,列在列的右侧)隐藏的列被移动以填补空白,就像在 Excel sheet).
中隐藏列一样是否有可能实现我所追求的,或者我是否必须继续为每个 column/row 打开 Column/Row 可见性对话框我希望有条件地 hide/show?
Select 您要有条件地隐藏的列,然后按 F4
查看属性 Window。查找 Visibility 节点并使用 Hidden
属性 设置条件表达式。
表达式的计算结果应为 True
(隐藏)和 False
(显示)。
如果这有帮助,请告诉我。
如果您要控制其可见性的列彼此相邻,您可以为它们创建一个列组并通过组管理可见性。
- 在适当的级别添加一个新的列组,以便只包含相关的列。
- 如果您已有列组,这可能是子组或相邻组。
- 如果没有,您可以通过将数据集字段从报表数据拖到组窗格中来创建初始列组。
- 在新组中插入新列,并将现有相关列中的数据移动到组中。
- 新组不需要重复,所以在它的属性 window 中设置
Group on:
为纯文本值,例如"1". - 将所需的可见性设置输入属性的可见性页面 window。
- 对于组内的每个单独的列,将
Hidden
属性 设置为 False,以删除可能干扰的任何其他表达式或设置。
不完全是您要查找的内容,但可能是中间点 - 这可以应用于除可见性之外的许多其他内容(例如背景颜色、工具提示)- 使用查看代码直接编辑 RDL。这有一个额外的好处,即能够实现每列几乎相同的更改,而不是使用最少的鼠标来实现相同的更改。
通常我会在设计器中按照我喜欢的方式设置一列,然后在其他列下设置 copy/paste。在可见性的情况下寻找 <TablixColumnHierarchy><TablixMemebers>
。您将看到一个空的 <TablixMember />
项目列表以及您已设置一列的扩展 <TablixMember><Visibility><Hidden>=...
块。只需将该块复制粘贴到感兴趣位置的空项目上(不幸的是,您需要将其计算在内,因为没有标识符)。
额外提示:如果您犯了错误或想稍后更改某些内容,您可以一次替换所有表达式(允许使用可选的正则表达式)。
请记住先备份或签入您的工作,因为如果您出错,设计者可能无法再次正确打开该报告:-)