【问题标题】:Passing parameters between reports in SSRS 2005在 SSRS 2005 中的报告之间传递参数
【发布时间】:2010-11-14 20:39:55
【问题描述】:

我对 SSRS 2005 比较陌生。我已经构建了简单的报告和电子表格,但我才刚刚开始深入研究 SSRS/RDL 的乐趣世界。我正在尝试将一个(自定义/非查询)参数从一个报告 (*.rdl) 传递给另一个。虽然从逻辑上讲我想添加一个全局变量,但似乎没有任何直接的方法/技术可以做我想做的事。似乎每个页面/报告都有自己的参数,并且报告不允许共享彼此的信息。

我试图根据用户选择的选项简单地隐藏对象/项目。如果用户选择选项 A 或 B,我想根据他们的选择简单地隐藏多个报告(在同一个项目中)上的某些对象。我只是检查任何给定对象中可见性属性的表达式中的参数值。真的没有什么复杂的。我已经对其进行了测试,并且仅在 一个 报告上就可以了。但是尝试让一份报告读取另一份报告上的值,这样做没有明确的路径。

现在我已经习惯了 SSRS,我相信有“普通”程序员的方式,然后是“SSRS”方式。两者都是互斥的。所以要么我正在尝试做一些永远不会被允许的事情,这是一个“按设计构建”的功能和/或我做错了。

想法?建议?也许我的做法是错误的。

【问题讨论】:

    标签: reporting-services rdl


    【解决方案1】:

    好的,所以只有几种方法可以将参数从一页传递到下一页。我(最终)发现我只是想将一个布尔值从一个传递到另一个。数据不是来自数据库,而是手动的(“真/假”)。起初我以为我需要类似于全局变量的东西,SSRS 中有一些内置的全局变量。但正如我发现的那样,您不能向该集合添加任何内容。

    所以在这份报告中,我有一张图片指向报告的“下一页”。在该对象/图像中,您可以在该对象/图像上设置导航参数。到目前为止是有道理的。

    在下一页上,您的报告参数必须与从下一页列出变量的位置相匹配。我猜 SSRS 将基于非键的数组从一个报告传递到下一个报告,因此索引/位置对于获取正确的参数至关重要。因此,箭头允许您调整参数顺序。这就是让我知道的原因,但我认为 SSRS 更擅长于传递的参数必须在名称上匹配,而不是位置匹配。

    (恕我直言)在我看来,SSRS 已经/尝试/必须保持相当静态。没有真正意义上的事件、OO 等,但 SSRS 似乎将 VB、VBA(表达式)、SQL/T-SQL 中的元素完全拼接在一起,并产生了一个可用的产品。我想这就是我的新手观点。我相信它会随着时间而改变。

    【讨论】:

      【解决方案2】:

      使用子报表可能会为您提供所需的功能。否则,我所知道的将参数从一个报告“传递”到下一个报告的唯一另一种方法是使用查询字符串。

      【讨论】:

      • 谢谢,我会试试子报告。当然,我有一个 rdl 页面调用另一个报告页面,该页面是 10 多个子报告的母版页,所以我会尝试跳过一个步骤,看看它是否有效。
      • 就我在这个问题上搜索谷歌而言,将参数从一份报告传递到它的子报告尚未对我起作用。显然人们已经让这个工作,但我还没有让它这样做。
      • Querystring 是不必要的,但我设法弄清楚如何传递参数。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多