reporting-services - 基于文本框或列的可见性的 SSRS 表达式
问题描述
是否可以检查 SSRS 中文本框的可见性(折叠/展开)并在表达式中使用它?
例如 :
=iif(Fields!column1 Is Visible,"Use this label","Use this other label")
我想要完成的是让列标题的初始值显示一些文本,当用户单击特定值时显示详细信息行(这是 Tablix),然后标题将更改为其他内容(例如初始报告状态是隐藏详细信息行并仅显示 Tablix 成员总计,因此当用户展开以查看详细信息列标题更改为“...数字”时,列显示“...总计”。
在通过 VBA 的 MS Access 中,我可以检查可见属性并基于此创建代码。到目前为止,还没有在 SSRS 2016 中找到类似的方法。
尝试设置可见性表达式以及设置表达式以更改文本框的值。
=IIF(Fields!accountnum.Value IS NOTHING OR Fields!accountnum.Value = TRUE,"Station #", "Station Count")
没有错误信息。我的结果应该是根据详细信息行是折叠(隐藏)还是展开(可见)来更改标题(文本框)值。
解决方案
要回答您的第一个问题:
当然这是可能的,只是不是他们想要的方式。这是一个简单的例子。假设您的可见性标准是以下表达式:
'Visibility expression
=IIF(Fields!Category.Value = "Visible", False, True)
现在您不用Is Visible
标准检查可见性,您只需再次使用相同的表达式。像这样:
=IIF(
IIF(Fields!Category.Value = "Visible",
Fale,
True) = True,
"This one is not visible",
"This one is visible")
回答你的问题:
他们按照你想要的方式去做,这是不可能的。但是您可以通过解决方法来做到这一点。使用两个选项将用户定义的参数添加到您的报告中:
- 显示详情
- 隐藏细节
然后将两个 tablix 添加到您的报告中。一个没有详细信息的 tablix 和一个包含您要显示的详细信息的 tablix。然后转到第一个 tablix Tablix Properties > Visibility并添加以下表达式:
=IIF(Parameters!VisibilityParameter.Value = "Display details", True, False)
以及其他 tablix 可见性的表达式:
=IIF(Parameters!VisibilityParameter.Value = "Hide details", True, False)
现在将根据参数结果显示带有或不带有详细信息的 talbix。
推荐阅读
- tensorflow - 如何对每个句子的bert模型输出做avg pool?
- reactjs - props 改变后 React 什么时候调用 AJAX 请求?
- ios - 从 Objective C 代码调用 @escaping 完成处理程序时出现 EXC_BAD_ACCESS 错误
- python - Pandas DataFrame read_csv 第一列作为字典中的键,第二列作为值(以简单的方式)
- c++ - 使用继承的程序,需要帮助验证正在输入的汽车的注册
- reactjs - 如何创建状态数据的副本减去 React 中的一些属性?
- javascript - 在组件上下文中获取 vuex 动作响应对象
- google-apps-script - 我可以在 Google Apps 脚本上为每小时的特定时间设置每小时触发器吗?
- javascript - Angular 9:禁用属性在 chrome 和 IE 11 中的不同行为
- arrays - For 循环不会识别二维数组的名称