【问题标题】:ReportViewer Web Control and Dynamic Connection StringsReportViewer Web 控件和动态连接字符串
【发布时间】:2009-05-20 20:30:45
【问题描述】:

所以我在 Reporting Services 2005 中有一个报告。其中有一个参数 (ConnectionString),它确定报告将使用哪个数据源。它还有其他几个参数,它们是从 ConnectionString 参数中选择的数据源派生的下拉列表。

在报表管理器中,这很有效。所有的下拉菜单一开始都是灰色的。当您选择数据源时,页面重新查询/重绘以及其他参数的所有可用参数值都将根据对这些字段的查询进行填充。

然而……

在 ReportViewer Web 控件中,当报表首次加载时,所有其他参数字段都只是空文本框,而不是下拉框。为 ConnectionString 参数选择不同的数据源不会重新查询/重新绘制其他参数。

我一直在翻阅 ReportViewer 编程参考,看看是否有某种方法可以复制报告管理器在某些参数更改时使用报告查看器重新加载网页的方式,但我找不到任何没有的东西在我可怜的 .NET 头上。

有什么想法吗?

【问题讨论】:

    标签: reporting-services parameters reportviewer dynamic-data parameter-passing


    【解决方案1】:

    不确定这是否有帮助,但我确实有一个建议。我会尝试从报告中拉出下拉框的逻辑并将它们放在 ASP.net 页面中。然后将参数传递给报表并控制渲染/刷新。

    HTH

    【讨论】:

    • 这就是我们最终所做的——我们使用了一些内置的 ASP.NET 事件来适当地重新加载下拉框。我认为有点麻烦,但最终还是要走的路。
    【解决方案2】:

    更新:事实证明,您必须为任何参数提供默认值,这反过来会影响报告中的其他参数,以便下拉框在初始化时正确加载。另请注意,这是递归的 - 因此,如果您有一个影响另一个影响另一个参数的参数的参数,则第一个和第二个参数都必须具有默认值。

    【讨论】:

      猜你喜欢
      • 2015-08-04
      • 2012-09-04
      • 1970-01-01
      • 2023-03-25
      • 1970-01-01
      • 2016-06-22
      • 2018-09-20
      • 2014-02-05
      • 2014-08-08
      相关资源
      最近更新 更多