SSRS 使用提供的参数打开子报告

SSRS Open sub report with provided parameters

我有一个包含 5 个参数的报告,我想从该报告中打开另一个包含 13 个参数的报告。 当我尝试打开此报告时,它说缺少某些参数。 我想知道是否有可能,如果我不传递参数,那么它应该在报告和 SQL 查询中忽略这些参数(所有这些都是多值参数)。 我不能使用“允许空值”,因为它们是多值参数。

This is main report

These are parameters in sub report which i want to call

有人可以帮我吗?或者我需要每次都用精确的参数创建单独的子报告

有两种常用的方法。

使用列表默认值填充参数 在您的子报表中,以@service 为例。如果您可以从数据库中获取服务列表,然后创建一个数据集来提供不同服务的列表,请将其用作参数的默认值。然后当你不从主报表传递任何东西时,子报表将使用所有服务。

将默认参数值设置为固定常数 另一个选项是将子报表参数设置为默认值,例如 *all,然后在它传递给子报表的数据集查询时处理它。

所以数据集查询可能类似于

SELECT *
  FROM myTable
  WHERE location in (@location)
    AND (service = '*All' OR service IN(@Service)