欢迎大家持续关注葡萄城控件技术团队博客,更多更好的原创文章尽在这里~~
常见的二维数据透视表(交叉表)通过横向和纵向展示数据,进行一些简单的汇总运算,而传统的数据透视表功能单一,汇总方式简单,已经无法满足现代大数据量各种条件分析,因此多维透视表应运而生。
多维透视表在功能强大的同时,创建难度也会随之提高
- 多层分组嵌套的复杂的组织结构
- 复杂的汇总分析公式的编辑
- 小计和总计的区分等等要面临的复杂问题
如果用代码实现,可能复杂程度不堪想象,更不用谈大数据量级别下报表加载的性能问题。而使用现有的简单报表工具,功能单一无法针对这一特征来满足复杂透视表的创建功能。
葡萄城报表具备的矩表控件,能够满足多维透视表创建的复杂功能。本文以【商品销售额与赠送金额百分比】这一典型的多维透视表为示例,使用矩表,无需编码,通过拖拽来实现多维透视表。
报表结构分析
行: 按照区域和省份,嵌套2层分组。
列:按照月份分组,动态列。
解决方案
1. 使用矩表控件
2. 添加2级行分组,首先按照区域分组,其次按照省份分组
3. 按照省份进行小计;
4. 列使用“月份”分组,分组下面嵌套三列。
多维透视表实现
1. 新建报表模板
2. 添加数据源和数据集
3. 添加矩表控件
添加矩表控件到设计界面,会发现有类似[ 符号,表示分组,即可根据具体数据动态生成行。会发现设计器下面的矩表分组管理器;
4. 添加行分组
选中,行分组单元格,右击添加行分组,选择“子分组”
5. 添加列分组
根据以上分析,列分组是根据月份而定的,因此只需要默认的一个列分组就足够了,所以不需要添加其他列分组;
添加“销售额”,“搭增”,“比例”静态列:
选中“列分组单元格”插入列,选择分组内-右侧,添加三列;
添加完成之后,插入行,选择分组内-下方;
6. 添加“总合计”列;
选中列分组单元格,插入列(三列),选择分组外—右侧
7. 绑定数据字段
表结构已经基本完成,接下来就是绑定数据字段;
1. 添加行分组数据,首先从报表资源管理器中选择“区域”字段,拖拽到行分组单元格;
2. 拖拽“省份”字段到 子分组单元格;
3. 拖拽“月份”字段到 列分组单元格;
效果如图:
8. 添加其他字段
可通过选中单元格,右上的字段logo来选择对应的数据字段:
9. 添加省份合计
选中:省份单元格,选择添加合计->分组后面;会自动添加合计行;
效果图:
10. 修改样式
报表设计就完成了,接下来需要做的就是调整报表样式。
效果预览
转载请注明出自:葡萄城报表
相关阅读: