常见的二维数据透视表(交叉表)通过横向和纵向展示数据,进行一些简单的汇总运算,而传统的数据透视表功能单一,汇总方式简单,已经无法满足现代大数据量各种条件分析,因此多维透视表应运而生。

clipboard.png

多维透视表在功能强大的同时,创建难度也会随之提高

  • 多层分组嵌套的复杂的组织结构

  • 复杂的汇总分析公式的编辑

  • 小计和总计的区分等等要面临的复杂问题

如果用代码实现,可能复杂程度不堪想象,更不用谈大数据量级别下报表加载的性能问题。而使用现有的简单报表工具,功能单一无法针对这一特征来满足复杂透视表的创建功能。

葡萄城报表具备的矩表控件,能够满足多维透视表创建的复杂功能。本文以【商品销售额与赠送金额百分比】这一典型的多维透视表为示例,使用矩表,无需编码,通过拖拽来实现多维透视表。

报表结构分析

行: 按照区域和省份,嵌套2层分组。

列:按照月份分组,动态列。

解决方案

  1. 使用矩表控件

  2. 添加2级行分组,首先按照区域分组,其次按照省份分组

  3. 按照省份进行小计;

  4. 列使用“月份”分组,分组下面嵌套三列。

多维透视表实现

1.新建报表模板

2.添加数据源和数据集

3.添加矩表控件

添加矩表控件到设计界面,会发现有类似[ 符号,表示分组,即可根据具体数据动态生成行。会发现设计器下面的矩表分组管理器;
4.添加行分组

选中,行分组单元格,右击添加行分组,选择“子分组”

clipboard.png

添加列分组

根据以上分析,列分组是根据月份而定的,因此只需要默认的一个列分组就足够了,所以不需要添加其他列分组;

添加“销售额”,“搭增”,“比例”静态列:

选中“列分组单元格”插入列,选择分组内-右侧,添加三列;

添加完成之后,插入行,选择分组内-下方;

clipboard.png

clipboard.png

6.添加“总合计”列;

选中列分组单元格,插入列(三列),选择分组外—右侧

clipboard.png

7.绑定数据字段

表结构已经基本完成,接下来就是绑定数据字段;

  1. 添加行分组数据,首先从报表资源管理器中选择“区域”字段,拖拽到行分组单元格;

  2. 拖拽“省份”字段到 子分组单元格;

  3. 拖拽“月份”字段到 列分组单元格;

效果如图:

clipboard.png

8.添加其他字段

可通过选中单元格,右上的字段logo来选择对应的数据字段:

clipboard.png

添加省份合计

选中:省份单元格,选择添加合计->分组后面;会自动添加合计行;

效果图:

clipboard.png

10.修改样式

报表设计就完成了,接下来需要做的就是调整报表样式。

clipboard.png

效果预览

clipboard.png

转载请注明出自:葡萄城报表


葡萄城技术团队
2.7k 声望28.6k 粉丝

葡萄城创建于1980年,是专业的软件开发技术和低代码平台提供商。以“赋能开发者”为使命,葡萄城致力于通过各类软件开发工具和服务,创新开发模式,提升开发效率,推动软件产业发展,为“数字中国”建设提速。