如何在 SSRS 中添加基于搜索的多值参数?
How to add a search based multivalued parameter in SSRS?
我有一个 SSRS 报告,在多值参数的过滤器(参数不是 SSRS 过滤器)中有 10,000 条记录。因此,在参数的下拉列表中定位值要困难得多。我需要在报告中添加一个基于搜索的多值参数,以便于过滤。请指导我这样做或发短信给我任何其他可能的建议。
谢谢
您可以使用两个参数执行此操作。
假设您有一大堆客户名单。
在你的第一个参数中(我们称之为 cSearch
)这只是一个纯文本参数,不是多值。
在你的第二个参数中使用类似
的数据集查询
SELECT CustomerID, CustomerName
FROM myCustomers
WHERE CustomerName LIKE '%' + @cSearch + '%'
填写完第一个参数后,当您单击第二个参数时,它将仅填充匹配值。
编辑更详细的解释
为了进一步说明这一点,我整理了一份非常快速的报告来说明我的意思。如果这不是您想要的,那么请编辑您的问题,添加尽可能多的细节、设计的屏幕截图、您期望看到的模型、参数状态的所有排列等。
我为此使用了 Adventure Work LT 示例数据,以防您想遵循它。
创建新报告
创建一个新的数据集(如果需要作为数据源)
将数据集的查询设置为
SELECT CustomerID, CompanyName
FROM [AdventureWorksLT2019].[SalesLT].[Customer]
WHERE CompanyName LIKE '%' + @cSearch + '%'
ORDER by CompanyName
添加数据集时,将生成一个名为 cSearch
的新报告参数。
转到此参数的属性并执行以下操作
设置 Allow blank value ("")
将默认值设置为表达式 =""
这将在第一个报告 运行s 时将参数设置为空字符串。
接下来,添加另一个名为“pCustomers”的参数
将其设置为“允许多个值”
将可用值设置为您的数据集,select CustomerID
作为值字段,公司名称作为标签字段。
接下来将默认值设置为同一数据集,并再次选择 CustomerID 作为值字段。
现在,当您第一次 运行 报告时,cSearch
参数为空,因此所有公司名称都列在您的第二个参数中。
如果我们随后在搜索参数中键入“world”并按回车键,则会更新第二个参数值...
我有一个 SSRS 报告,在多值参数的过滤器(参数不是 SSRS 过滤器)中有 10,000 条记录。因此,在参数的下拉列表中定位值要困难得多。我需要在报告中添加一个基于搜索的多值参数,以便于过滤。请指导我这样做或发短信给我任何其他可能的建议。
谢谢
您可以使用两个参数执行此操作。
假设您有一大堆客户名单。
在你的第一个参数中(我们称之为 cSearch
)这只是一个纯文本参数,不是多值。
在你的第二个参数中使用类似
的数据集查询SELECT CustomerID, CustomerName
FROM myCustomers
WHERE CustomerName LIKE '%' + @cSearch + '%'
填写完第一个参数后,当您单击第二个参数时,它将仅填充匹配值。
编辑更详细的解释
为了进一步说明这一点,我整理了一份非常快速的报告来说明我的意思。如果这不是您想要的,那么请编辑您的问题,添加尽可能多的细节、设计的屏幕截图、您期望看到的模型、参数状态的所有排列等。
我为此使用了 Adventure Work LT 示例数据,以防您想遵循它。
创建新报告
创建一个新的数据集(如果需要作为数据源)
将数据集的查询设置为
SELECT CustomerID, CompanyName
FROM [AdventureWorksLT2019].[SalesLT].[Customer]
WHERE CompanyName LIKE '%' + @cSearch + '%'
ORDER by CompanyName
添加数据集时,将生成一个名为 cSearch
的新报告参数。
转到此参数的属性并执行以下操作
设置 Allow blank value ("")
将默认值设置为表达式 =""
这将在第一个报告 运行s 时将参数设置为空字符串。
接下来,添加另一个名为“pCustomers”的参数
将其设置为“允许多个值”
将可用值设置为您的数据集,select CustomerID
作为值字段,公司名称作为标签字段。
接下来将默认值设置为同一数据集,并再次选择 CustomerID 作为值字段。
现在,当您第一次 运行 报告时,cSearch
参数为空,因此所有公司名称都列在您的第二个参数中。
如果我们随后在搜索参数中键入“world”并按回车键,则会更新第二个参数值...