【发布时间】:2021-09-14 21:16:31
【问题描述】:
我的质量工程师要求我根据他们手动填写的文档创建一份报告。乍一看,这似乎是一个很容易的请求。这绝非易事。该报告显示了两次检查的结果,我有一个参数,用户可以在其中选择一项检查。正如现在所掌握的那样,在选择一次检查时,此报告运行得很好,但我期待能够同时运行两种检查的报告。而且,这就是我遇到麻烦的地方。
问题是我在标题中有一个文本框,它引用了报告中标识检查的表中的值。当我将参数设置为多值参数并全选时,报告仅显示整个报告中的一项检查。是否可以让用户选择两个检查但让报告分别运行它们?我有一个表的数据集和该表中用于标识检查的列。我尝试了多值参数,并尝试使用数据集属性中的过滤器选项,但我得到了相同的结果。
【问题讨论】:
-
你的问题真的不清楚,我很难理解它。我不知道这是否是您要问的,但通常当您有一个多值参数时,您会在报表上显示选定的参数标签,而不是数据集中的值。因此,如果您允许您的用户选择“选项 1”或“选项 2”或两者,您可以编写一些逻辑来显示所选参数值的标签。但是一些澄清细节确实有助于解决这个问题。
-
我的查询,我在 WHERE 子句中有一个用于检查的参数。因此,当用户选择检查时,它将提取该数据。如果用户选择 XRAY,标题下方将显示“XRAY”。同样,如果他们选择 NEUTRON。正如我所提到的,如果您选择一项检查或另一项检查,它将正确显示在标题下方。但是,如果您同时选择两项检查,则整个报告的标题下只会显示一项,而不管显示的是哪些检查数据。 - 大卫
-
您的数据源可能会在每次“检查”时返回多行。同样,每次检查由多行组成。所以你现在需要在报表中使用分组。还可能您希望在打印时每次检查都在新页面上开始(也可能出于显示目的)。
-
我已经添加了一个答案,但是在阅读了 cmets 之后,如果您唯一的问题是显示两个参数标签,那么您可以使用类似
=JOIN(Parameters!Inspection.Label, " ") -
List 控件允许您根据分组条件重复报告的各个部分。因此,您添加列表,并告诉它要分组的内容,然后将报表组件添加到列表中,它们将显示按列表行当前显示的内容过滤的数据。因此,这将允许您根据需要在每次“检查”中重复或多或少地重复您的报告。
标签: sql-server reporting-services