本文将介绍如何创建带有汇总的多组钻取表格报表,并提供子总计和总计的示例。虽然使用报表向导可以轻松设计多个分组和钻取操作,但也可以通过变通方法手动创建。
右键单击“数据集”文件夹以创建新的数据集。在 SSMS 中编写以下代码,展示我们为本 SSRS 多级分组钻取表格报表示例准备的数据集。
用于本 SSRS 多组钻取表格及汇总示例的 Sql 查询是:
SELECT Cat.[EnglishProductCategoryName] AS Category,
SubCat.[EnglishProductSubcategoryName] AS SubCategory,
Prod.EnglishProductName AS ProductName, Prod.Color,
SUM(Fact.OrderQuantity) AS Orders, SUM(Fact.TotalProductCost) AS ProductCost,
SUM(Fact.SalesAmount) AS Sales, SUM(Fact.TaxAmt) AS Tax
FROM FactInternetSales AS Fact
INNER JOIN DimProduct AS Prod ON Fact.ProductKey = Prod.ProductKey
INNER JOIN DimProductSubcategory AS SubCat ON Prod.ProductSubcategoryKey = SubCat.ProductSubcategoryKey
INNER JOIN DimProductCategory AS Cat ON SubCat.ProductCategoryKey = Cat.ProductCategoryKey
GROUP BY Cat.[EnglishProductCategoryName], SubCat.[EnglishProductSubcategoryName],
Prod.EnglishProductName, Prod.Color
创建 SSRS 多组钻取表格及汇总
我们已设计了一个产品销售表格报表,并设置了字体和颜色。要创建带有汇总的多组钻取表格报表,我们需要一个分组依据列。因此,在“行组”下,单击“详细信息”旁边的向下箭头,选择“添加组”和“父组”。我选择“子类别”列作为分组依据。接下来,勾选“添加组页眉”选项以在每个子类别旁边添加一个额外的空白行(阶梯状)。请参阅“在表格中添加分组”报表文章。
右键单击“订单”并选择“添加总计”选项以添加子总计。对“产品成本”和“销售额”列执行相同操作。接下来,右键单击“产品名称”和“颜色”下方的空白列,选择“合并单元格”选项进行合并。选择子总计单元格,进入其属性以更改行背景颜色。
要添加 SSRS 多级分组钻取表格报表及汇总,请单击“子类别”旁边的向下箭头,选择“添加组”和“父组”。请选择“类别”作为分组依据,并勾选“添加组页眉”选项。

要获取类别级别的总计,请右键单击“订单总计”列,选择添加总计选项。然后,对“产品成本”和“销售额”列执行相同操作。请更改背景颜色。接下来,右键单击空白列以合并这些单元格。
要添加总计,请右键单击“类别”级别的总计,选择“添加总计”选项。请将背景颜色更改为金色。接下来,合并类别和子类别级别的空白单元格。请参阅“为 SSRS 报表添加总计和子总计”文章以了解步骤。
钻取操作
转到“详细信息”部分,选择“组属性”。

单击“可见性”选项卡,选择“隐藏”选项以在报表初始运行时隐藏完整详细信息行。接下来,勾选“此报表可以切换显示”,并从可用列表中选择“子类别”。

接下来,转到子类别的组属性。

在“可见性”选项卡下,选择“隐藏”选项以隐藏子类别行。接下来,勾选“此报表可以切换显示”,并选择“类别”。

在 SSRS 报表预览中,您可以看到一个阶梯状的多级分组表格报表,具有钻取操作、每个产品类别的子总计和总计。
在报表预览中,您可以看到每个子类别旁边都有一个小的加号按钮,它还显示每个产品子类别的子总计。单击加号按钮可查看子类别,然后再单击一个加号可查看该特定子类别的详细报表。

如果您不习惯类别和子类别旁边的额外空白行单元格,请右键单击并选择“删除行”选项。我将再次向您展示 SSRS 多组钻取表格及汇总报表预览。

再次查看,它比之前的表格更整洁,因为没有空白行。让我展开一些类别和子类别,看看子总计和总计。
