教程:添加分组和总计 (Reporting Services)

在设置报表字段的格式后,向 Reporting Services 报表添加分组和总计以便组织和汇总数据。

在本教程中,可了解:

  • 将报表中的数据分组以组织相关信息。
  • 添加总计以汇总不同级别的数据。
  • 设置分组数据和总计的格式以提高可读性。

先决条件

在报表中对数据进行分组

可以对 SQL Server Reporting Services (SSRS) 报表中的数据进行分组。 对数据进行分组有助于将相关数据行组织成多个部分,使报表更易于阅读和解释。

  1. 在 Visual Studio 中打开“销售订单”报表定义文件 (.rdl)。

  2. 选择“设计”选项卡。

  3. 如果看不到“行组”窗格,请右键单击设计图面,然后选择“查看”>“分组”。

  4. 从“报表数据”窗格将 [Date] 字段拖到“行组”窗格。 将其置于显示为 = (Details) 的行之上。

    注意

    行控点中有一个方括号,用来表示组。 表在垂直点线的两侧各有一个 [Date] 表达式列。

    表的屏幕截图,其中显示了行句柄和两个日期表达式列。

  5. 从“报表数据”窗格将 [Order] 字段拖到“行组”窗格。 并将其放置到 Date 后面和 = (Details) 前面。

    “报表数据”字段的屏幕截图,其中显示了处于“日期”和“详细信息”之间的“订单”字段。

    注意

    行句柄中现在有两个方括号 ,用于表示两个组。 此表包含两个 [Order] 表达式列。

  6. 删除两根线条右侧的原始 [Date][Order] 表达式列。 选择并右键单击两个列的列句柄,然后选择“删除列”。 报表设计器将删除各个行表达式,以便只显示组表达式。

    表的屏幕截图,其中显示了选中的两列。

  7. 若要设置新 [Date] 列的格式,右键单击包含 [Date] 表达式的数据区域单元,然后选择“文本框属性”。

  8. 选择最左侧框中的“数字”,并从“类别”框中选择“日期”。

  9. “类型” 框中,选择 “2000 年 1 月 31 日”

  10. 选择“确定”

  11. 在“预览”选项卡上预览报表。

    表的屏幕截图,其中显示了预览报表。

向报表添加总计

可以将总计添加到报表中以汇总数据。 总计可帮助快速了解聚合值并增强报表的可用性。

  1. 切换到“设计”视图。

  2. 右键单击包含 [LineTotal] 表达式的数据区域单元,并选择“添加总计”。 报表设计器将添加一个带有每个订单的美元总金额的行。

  3. 右键单击包含 [Qty] 字段的单元,并选择“添加总计”。 报表设计器将向总计行添加每个订单的总数量。

  4. Sum[Qty] 单元左侧的空单元中,输入“订单总计”。

  5. 在添加了总计单元格的行中选择两个总和单元格和标签单元格。

  6. 选择“格式”>“背景颜色”>“浅灰色”。

  7. 选择“确定”

    格式化表的屏幕截图,其中显示了订单总计。

向报表添加每日总计

可以在报表中添加每日总计。 此步骤在每个日期分组结束时提供每日摘要,并帮助快速识别报表中的每日聚合。

  1. 右键单击 [Order] 表达式单元,然后选择“添加总计”>“之后”。 报表设计器添加了一个新行,其中包含 [Qty][Linetotal] 值的每日总计,并在 [Order] 表达式列的底部添加了字符串“Total”。

  2. 在相同单元中,在“Total”词前输入“Daily”一词,使其显示为“Daily Total”。

  3. 选择该单元和右侧相邻的两个单元及其之间的空单元。

  4. 选择“格式”>“背景颜色”>“橙色”。

  5. 选择“确定”

    格式化表的屏幕截图,其中显示了每日总计。

向报表添加总计

可以在报表中添加总计,以汇总整个报表中的所有数据。 总计提供全面摘要,使用户能够更轻松地一目了然地了解整体数据。

  1. 右键单击 [Date] 表达式单元,然后选择“添加总计”>“之后”。 报表设计器添加了一个新行,其中包含整个报表 [Qty][LineTotal] 值的总计,并在 [Date] 表达式列的底部添加了字符串“Total”。

  2. 在相同单元中,在“Total”词前输入“Grand”一词,使其显示为“Grand Total”。

  3. 选定“Grand Total”单元、两个 Sum() 表达式单元及其之间的空单元。

  4. 选择“格式”>“背景颜色”>“浅蓝色”。

  5. 选择“确定”

    格式化表的屏幕截图,其中显示了总计。

预览报表

切换到“预览”选项卡,以便在发布时查看报表。 在完成报表之前,查找可修复的任何错误或问题。

  1. 选择“预览”选项卡。

  2. 在“预览”工具栏中,选择“最后一页”,例如 。 “总计”值显示在报表末尾。

    格式化表的屏幕截图,其中显示了完整预览。

将报表发布到报表服务器(可选)

将已完成的报表发布到 Report Server。 此过程是可选的,涉及配置报表属性、设置目标服务器 URL 以及部署报表。 这一步骤对于通过 Web 门户向更广泛的受众提供报表并确保信息易于访问至关重要。

  1. 选择“项目”>“教程属性...”。

  2. TargetServerURL 中,输入 Report Server 的名称,例如:

    • http:/<servername>/reportserver
    • 如果在报表服务器上设计报表,则 http://localhost/reportserver 有效。
  3. 请注意,“TargetReportFolder”是根据项目名称命名的教程。 报表设计器将报表部署到此文件夹。

  4. 选择“确定”

  5. 选择“生成”>“部署教程”。

    如果看到类似以下“输出”窗口的消息,则表示部署成功。

    ------ Build started: Project: tutorial, Configuration: Debug ------  
    Skipping 'Sales Orders.rdl'. Item is up to date.  
    Build complete -- 0 errors, 0 warnings  
    ------ Deploy started: Project: tutorial, Configuration: Debug ------  
    Deploying to `https://[server name]/reportserver`  
    Deploying report '/tutorial/Sales Orders'.  
    Deploy complete -- 0 errors, 0 warnings  
    ========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========  
    ========== Deploy: 1 succeeded, 0 failed, 0 skipped ========== 
    

    如果看到错误消息,则确认你对 Report Server 有适当的权限并且已使用管理员权限启动了 SQL Server Data Tools。

  6. 打开具有管理员权限的浏览器。 例如,右键单击 Internet Explorer 图标,然后选择“以管理员身份运行”。

  7. 浏览到 Web 门户 URL。

    • https://<server name>/reports
    • 如果在报表服务器上设计报表,则 http://localhost/reports 有效。
  8. 选择“教程”文件夹,然后打开“销售订单”报表。

    “教程”文件夹的屏幕截图,其中显示了“主文件夹”面板。

你已成功完成了创建基本表报表教程的学习。