【问题标题】:Adding Details to a MS Report Viewer report without resorting to Subreports/drill down向 MS 报告查看器报告添加详细信息,而不使用子报告/向下钻取
【发布时间】:2015-07-20 15:09:38
【问题描述】:

我之前使用过 Crystal Rpt 和 VB6 报表设计器,现在我正在转向 Microsoft Report Viewer。

我实际上正在尝试实现一些非常简单的事情,但我似乎无法以简单的方式找到如何做到这一点:

我有一个订单列表,其中每一行由订单 ID、客户名称和地址组成。 我可以在报告查看器中列出它们。

接下来,我希望能够在每个订单下方的某行中显示项目列表:

+ORDER 1, Customer A, Cust Address
|-- Product 1 for Order 1
|-- Product 2 for order 1
+ORDER 2, Customer B, Cust Address
|-- Product 1 for Order 2
....

我知道我可以通过子报表链接这些信息,但对于这样一个简单的场景来说,这似乎有点过头了。

在(非常)旧的 VB6 报表设计器中,可以将子部分添加到报表中,并通过参数将主部分与子部分链接,而无需通过整个子报表功能,将所有内容保持在一个单一报告。

在报表设计器/查看器中是否有这样的方法来实现这一点(即添加子部分,避免使用子报表)?

谢谢 佩德罗

【问题讨论】:

    标签: c# vb.net reporting-services report-designer


    【解决方案1】:

    如果您使用 Groups 和 sub-tablix,您应该可以在 1 个报告上完成所有操作。

    1. 创建带有标题行和详细信息行的表格,并将名为“详细信息”的默认行组更改为订单,并将其分组到您的订单号:

    1. 在订单编号下插入另一行“组内 - 下方”,然后合并所有单元格。

    2. 在合并单元格中插入一个矩形,然后在矩形顶部插入一个表格。在那里添加您的产品字段。 (在下图中,父表中的所有内容都是灰色的,而子表中的所有内容都是白色的)

    运行此命令时,由于 Product 行与 Order 行位于同一分组内,因此每次显示该行时,它只会显示与该 Order 关联的 Products(假设您的查询已正确链接它们)。

    希望这会有所帮助!告诉我!

    【讨论】:

    • 非常感谢您的回复。我只是想澄清一件事:在这种方法中,我必须只使用 1 个数据集对吗?即我应该执行一个基本上列出所有产品的查询,并且每一行都包含订单信息以及产品数据。一旦我分组,报告引擎会为我安排一切,构建这个 2 级视图是否正确?我问的原因是因为理想情况下我希望能够让详细信息使用单独的数据集,该数据集将根据我选择在 Datatset1 中显示的内容提取和链接信息
    • 正确 - 我的方法假设您拥有 1 个数据集中的所有数据。
    • 非常感谢您的帮助。我一直在使用这个工具,当我掌握了它的窍门后,一切都变得如此简单和直接。我真的很喜欢结果。在同一个报告中包含多个数据集和多个 Tablix 的能力非常适合将多个来源整合到一个页面中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-14
    相关资源
    最近更新 更多