SSRS - 如何在SSRS中组合多个数据集?

时间:2017-07-12 14:22:19

标签: sql-server reporting-services sql-server-2016

下面的仪表板图片显示了我需要在SSRS中创建的结构。每个红色框表示不同的数据集,因此有14个潜在的数据集总计不同的信息。

每个查询都使用ROW_NUMBER进行汇总,这使我能够限制报告中显示的行数,因此我不知道如何组合查询以减少来自14个不同数据集的数量并保留此功能。

此报告由学校提供,因此每个数据集只需要显示该学校的数据,我需要每个学校分页。

可以使用SSRS创建这样的报告吗?是这样,有什么选择可以做到这一点吗?我会使用列表,表格等吗?

这不会在服务器上发布,只需要每年运行几次作为.pdf。从本地机器。但是数据是在sql-server上的。

谢谢。

enter image description here

2 个答案:

答案 0 :(得分:1)

是的,它可以完成,但性能可能会受到影响。为每个部分创建一个小报告:没有标题,没有页脚,只是您希望在仪表板上显示的内容。然后创建一个" master"使用表格进行报告 - 我将第一部分创建为此报告,以便表格具有数据源 - 然后将其他报告作为子报告添加到主表格的单元格中。您可以在主报告和子报告之间创建链接,例如在标题中包含摘要信息,在子报告中包含详细信息,但您不必这样做。

你对如何在视觉上组织它有点受限制,因为你只能水平合并细胞,而不是垂直合并细胞,但你可以通过(颤抖)创建一个包含子报告的报告并将其作为分报告到主人。但这可能会像冰箱里的蜥蜴一样慢。

希望这是有道理的,但如果你对子报告的研究很少,你就会弄明白。

答案 1 :(得分:0)

听起来你有很多完全不同的数据集,所以我的第一点是将这些全部放在一个报告上是否恰当?但是,如果是,那么这个答案似乎可以解决你的问题

use two different datasets in single report

  

您可以在一个报告的不同报告区域中使用两个不同的数据集。例如,如果您有两个数据集,可以说DS1显示EmployeeDetail,DS2显示SalesInfo。您可以在两个表中单独使用它们,一个显示Employees Details,另一个显示Sales Info。如果您计划合并此数据并在一个表中使用它,则这些是选项。

推荐选项:重新编写查询以创建包含您希望以表格方式显示的可能数据的单个数据集。

可行但速度会慢很多:在主报表中的表中使用DS1,其中每行包含Epmloyee详细信息,Wihtin表示Row调用Sub-Report传递EmployeeDetail&key;该键与SalesInfo中的列相关。创建显示SaledInfo数据的子报告,在主报告中将此报告从DS1传递给该子报告。

否则可能会考虑将其拆分为多个报告。