【问题标题】:SSRS report with multiple child tables具有多个子表的 SSRS 报告
【发布时间】:2013-05-31 09:57:04
【问题描述】:

所以我正在处理 SSRS 2008 中的发票报告。该数据库包含 4 个相关表:
- 工单
- 劳动力
- 材料
- 服务(分包商)

显然,工单表包含有关整个工单的所有相关信息(我们显示位置、优先级等内容)。对于这个发票报告,我需要在顶部显示工单详细信息,然后显示工单上使用的人工、材料和服务(每个都有总计),然后显示整个成本的完整总计工单。

我的问题是这样的:我可以做一个适用于工单 + 任何一个子表的数据集,但是我不知道如何做这三个!我不能简单地为 WONUM 做一个参数,上面有 3 个(或 4 个)表,因为这个报告上会有很多工作订单(每页一个)。当我使用包含 Work Order 表和一个子表的数据集时,我按 WONUM 分组,然后在每个实例之间进行分页符。

关于如何处理它的任何想法?我遇到的大多数答案都说创建一个巨大的“联合所有”数据集,然后对其进行分组,或者为每个子表使用子报表。但是,我们会将此报表导出到 Excel,并且有人告诉我,导出时子报表无法正确呈现。

非常感谢任何和所有帮助!谢谢!

编辑:

以下是我想使用的 4 个查询:

这会检索所有需要计费的工单:

SELECT wonum, description, location FROM workorder WHERE billable=1 AND status='COMP'

这会检索工作订单的人工(由@wonum 指定)

SELECT regularhrs, laborrate, totalcost FROM labor WHERE refwo=@wonum    

这会检索工作订单的材料(由@wonum 指定)

SELECT description, quantity, unitcost, totalcost FROM material WHERE refwo=@wonum

这会检索工作订单(由@wonum 指定)的服务(分包商小时数)

SELECT description, hours, laborrate, totalcost FROM service WHERE refwo=@wonum

所以正如我在原帖中所说,我的第一个查询检索所有需要计费的工单,然后对于每个工单(每页一个),我需要检索人工、材料和服务并显示在工单详情下方的 3 个表格中,然后在工单发票上填写总成本(在每个工单的末尾,而不是所有工单的末尾)

如果这也有帮助,我可以获取我当前报告的屏幕截图。请在 cmets 中告诉我!

【问题讨论】:

  • 如果您可以提供基本的表结构和您希望结果如何显示的示例,那将非常有帮助。一般来说,我会加入(而不是联合)所有表,并使用一个数据集在表中进行分组。
  • @StevenWhite - 我会画出草图并提供我使用的 4 个查询

标签: sql-server-2008 reporting-services ssrs-2008 ssrs-grouping


【解决方案1】:

您的查询应该是这样的

SELECT WO.wonum, WO.description as WorkorderDescription, WO.location, L.regularhrs, L.laborrate, L.totalcost,
M.description as MaterialDescription, M.quantity, M.unitcost, M.totalcost as MaterialCost,
S.description as ServiceDescription, S.hours, S.laborrate, S.totalcost as ServiceCost
FROM workorder AS WO
INNER JOIN labor AS L on L.refwo = WO.wonum
INNER JOIN material AS M on M.refwo = WO.wonum
INNER JOIN service AS S on S.refwo = WO.wonum
WHERE billable = 1 AND STATUS = 'COMP'

这将有效地将您需要的信息收集到一个数据集中。您将需要使用分组功能在 SSRS 中设置表格。如果您在正确设置表格布局方面遇到困难,您可能需要做一些额外的研究。

【讨论】:

  • OK 这就是我的恐惧。我将尝试使用该查询和分组,看看结果如何。如果成功,我会将其标记为已接受的答案!再次感谢!
猜你喜欢
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-10
  • 2017-03-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多