如何将参数传递给子报告?

时间:2014-07-23 14:09:19

标签: sql-server-2008 visual-studio-2008 reporting-services ssrs-2008 bids

我有5个报告都有2个参数:startdate和enddate。

select *  from table where date between startdate and enddate

这是我所拥有的简化版本,但对于这个问题,它应该有效。

我需要在1个编译报告中包含所有表并链接所有参数。我想我可能会错误地解决这个问题。首先,我发布报告的服务器是SQL Server 2008,而不是SQL Server 2008 R2,所以我不认为我可以使用报告部分(如果我错了,请更正我) )。因此,我认为解决这个问题的最佳方法是使用子报表。我创建了一个新报告,其中包含其他报告作为子报告。在子报表属性中,我将startdate设置为:

=Parameters!startdate.Value

Startdate存在于新的最终报告中,并且具有默认值。我用enddate做了同样的事情。但是,当我运行它时,我收到错误"没有为子报告指定一个或多个参数,'子报告',位于:/ Subreport。"

我真的很感激任何帮助,我为这篇文章的篇幅道歉。我试图在网上找到这个,但我不能,所以我最终创建了一个帐户,以便我可以提出这个问题。

编辑:我从来没有找到解决这个问题的方法,但是我通过复制和粘贴表格并将相应的数据集添加到主报告中来实现我想要的结果。

1 个答案:

答案 0 :(得分:0)

首先,您必须在主报表中定义startDate和endDate以及将用作SubReport的所有报表。我不认为你正在绘制参数。 SSRS不会自动映射相同的命名参数。

  1. 将工具箱中的SubReport组件添加到主报告中
  2. 右键单击SubReport并选择子报告属性
  3. 从左侧列表视图中选择参数列表视图项 注意:如果SubReport包含在与主报表相同的vs项目中,则应该看到可用的SubReport参数。
  4. 将SubReport参数的名称映射到主报告的相关参数的值。