使用 SSRS 报告参数接受来自 ASP.NET 网络应用的逗号分隔整数
Use SSRS report parameter to accept comma separated integer from ASP.NET web app
- 在 SSRS 中,我有一个整数类型的参数。
- 参数值是从数据集中绑定的,因此在加载报表后我们可以 select 参数和 运行 报表。
- 我的情况是我必须在不影响现有功能的情况下从 Web 应用程序传递相同的参数。与“1,2,3”一样,这些是存在于下拉列表中的 ID。
详细说明问题:
我在 SSRS 数据集中有一个查询,它带有一个参数 employeeIds
(这是一个多 select 参数)查询是这样的,其中 EmployeeTable.Id in (@employeeIds)
当我使用 SQL 分析器并看到针对我的数据库执行的查询时,它看起来像这样 EmployeeTable.Id in (21,34,56,81)
很好,到这里为止一切正常。现在我需要从 ASPX 页面调用相同的报告而不显示 SSRS 过滤器窗格(所以我必须构建我的参数并传递给 SSRS 报告)
这是我尝试传递参数的方式
parameters(10) = New ReportParameter("employeeIds", "21,34,56,81")
这是抛出如下错误
Cannot cast varchar to integer
如果我将我的 Report 参数更改为字符串,这将破坏 SSRS 参数过滤器逻辑,所以我不能这样做。在不干扰当前工作的 SSRS 报告的情况下,如何将此参数从代码传递到报告?
非常感谢任何帮助!
如果我没看错,您正在尝试在 aspx 页面中打开报表,并希望将参数 employeeIds
设置为特定值来打开它。因此,您正在考虑一次将 employeeIds
的参数值设置为多个值。
可能看起来像这样:
parameters(10) = New ReportParameter("employeeIds", new string[] {"21","34","56","81"})
当为一个参数提供多个值时,您需要将它们放在一个数组中。查看 here 了解更多信息。
- 在 SSRS 中,我有一个整数类型的参数。
- 参数值是从数据集中绑定的,因此在加载报表后我们可以 select 参数和 运行 报表。
- 我的情况是我必须在不影响现有功能的情况下从 Web 应用程序传递相同的参数。与“1,2,3”一样,这些是存在于下拉列表中的 ID。
详细说明问题:
我在 SSRS 数据集中有一个查询,它带有一个参数 employeeIds
(这是一个多 select 参数)查询是这样的,其中 EmployeeTable.Id in (@employeeIds)
当我使用 SQL 分析器并看到针对我的数据库执行的查询时,它看起来像这样 EmployeeTable.Id in (21,34,56,81)
很好,到这里为止一切正常。现在我需要从 ASPX 页面调用相同的报告而不显示 SSRS 过滤器窗格(所以我必须构建我的参数并传递给 SSRS 报告)
这是我尝试传递参数的方式
parameters(10) = New ReportParameter("employeeIds", "21,34,56,81")
这是抛出如下错误
Cannot cast varchar to integer
如果我将我的 Report 参数更改为字符串,这将破坏 SSRS 参数过滤器逻辑,所以我不能这样做。在不干扰当前工作的 SSRS 报告的情况下,如何将此参数从代码传递到报告?
非常感谢任何帮助!
如果我没看错,您正在尝试在 aspx 页面中打开报表,并希望将参数 employeeIds
设置为特定值来打开它。因此,您正在考虑一次将 employeeIds
的参数值设置为多个值。
可能看起来像这样:
parameters(10) = New ReportParameter("employeeIds", new string[] {"21","34","56","81"})
当为一个参数提供多个值时,您需要将它们放在一个数组中。查看 here 了解更多信息。