← 返回所有博客文章

报表,从来都是商业领域的主角,而随着商业智能(BI),大数据时代的到来,报表更加成为了业务系统的核心组成。因此传统的格式已经无法满足新的需求,最终用户期望在一张报表中看到更多的汇总、分类信息,而往往这些汇总和分类信息是不固定的,比如下面这张报表

1

类似上图中的复杂表头和分类汇总,用传统的报表已经无法完成。矩表(Table+ Matrix)就是专为此类报表需求而产生的强大工具,无论你是文档类报表,Excel 类报表,中国式复杂报表,不限制行数和列数的报表…都会迎刃而解!


什么是矩表(Tablix)

矩表是数据汇总统计的数据控件。矩表由矩阵(Matrix)控件演化而来,矩阵可将存储的原始Detail 数据,通过【行分组】(即垂直显示字段值)和【列分组】(即水平显示字段值),将数据二维的展示出来,然后计算每一行或列的合计;也可以将字段值作为行号或列标,在每个行列交汇处计算出各自的数量,然后计算小计和总计。如下图

2

传统矩阵的缺点:

  • 行分组单层次,无法支持多层级数据分析
  • 矩阵只能将数据通过简单的二维表展示,以及简单的求和汇总统计,但对于多层级的行分组却无法满足要求,如在垂直展示销售数据时, 我们需要先按区域汇总,区域再对应各省份的详细数据,那么这样就能够更能有助于我们分析业务数据,提高精确性,而矩阵只能创建单层级数据展示,无法进行数据分层展示;

  • 列分组上面,无法进行夸行单元格合并;
  • 在列上面通常对应复杂表头,如跨行合并,而矩阵有很大的局限性。
  • 3
  • 合计功能单一
  • 矩阵的合计仅支持自动生成的Sum()表达式,不支持编辑统计列。而客户的需求合计方式根据业务的不同,不在只有单一的合计功能,像常用的占比,环比等复杂运算。

  • 而矩表打破了矩阵的局限,无论是水平方向还是垂直方向展示字段数据,都支持多层级的分组嵌套,且能够自动合并相同内容项;支持复杂的表头合并,固定列和分组列的统一展示; 对于合计功能也更加灵活,不仅支持总计,而且支持分组内小计,合计的表达式可以根据自身需求来定制。

  • 矩表是将存储的原始数据,通过内部的动态行列组织结构,将数据以分析汇总的方式呈现的数据控件。使用矩表,通过拖拽操作,不需要关心背后的实现逻辑,就能够按照您需要的方式来展示数据。

  • 矩表可创建常用的列表类报表,行列转置报表, 履历表,复杂表头报表。不仅根据数据量可自动生成行列,而且可进行复杂的单元格合并,无论是简单的清单列表还是高级的矩阵数据,矩表都能够通过它强大的组织结构,拖拽实现。矩表可以将存储在数据库中的静态二维表(只有列头有含义的表数据),转换成具有汇总和统计的数据透视表,且这些数据均是根据表结构自动生成的,不需要手动添加每行每列。大大节省了我们大大提升了创建数据分析报表的效率。可谓任何复杂结构的,无规律可寻的报表结构,都可使用矩表控件来实现结构。

矩表特点

  • 强大的动态行列生成
  • 以创建销售业绩报表,会以月份来汇报销售数据,而且需要自己手动合计当月所有的销售额,有了矩表控件后,我们只需要将月份指定到单元格,矩表会自动协助我们生成所有月份的列,并自动合计当月的销售额,同样在纵向展示销售类目时,也不需要手动添加多行类目,只需要指定类目到单元格,矩表会自动生成所有类目行。
  • 4
  • 任意行的单元格合并
  • 在很多企事业单位,报表的复杂度可以说让人目瞪口呆,其中表头最为经典,常常表头由多行组成,且单元格合并忽上忽下。矩表则因为其组织结构的强大,可帮助我们轻轻松松实现跨多级行列的单元格合并。

  • 定制化的合计功能
  • 在大数据分析过程中,对于数据分析,再也不是简单的求和,最大值,最小值,平均值这些简单的合计功能了,我们需要根据业务规定,对于满足条件的数据进行统计,求占比,同期占比等,矩表支持定制化的合计功能,不仅支持通用的合计公式,还可以根据自身需求定制表达式或编写函数。

  • 数据预警和可视化展示单元数据
  • 矩表不仅可以显示基础数据,也可以通过数据预警或可视化工具来展示单元格数据。
  • 5
  • 精巧的细致的功能点
  • 矩表示非常专业的数据展示工具,因而细化了用户的需求,如行标题和列标题不仅可在每页重复显示,而且还可固定行头列头,当大数据量需要滚屏查看时,有了固定行头和列头的体验更加易于客户查找数据。

为什么要使用矩表?

  • 要做大数据的统计分析,您需要矩表。
  • 数据量过多需要实现自动归类,您需要矩表,矩表提供的动态分组功能,自动帮您合并相同内容项,进行合计。
  • 需要制作中国特色的报表,您需要矩表,解决报表结构复杂的问题。

实例 – 使用矩表创建【产品销售数据分析表】

在设计器中添加 矩表 6

将订购月指定到【行分组】单元格中,将【类别名称】指定到列分组单元格中,在最下方单元格中指定合计方法:

=Sum(Sum(Fields!数量.Value *Fields!单价.Value * (1-Fields!折扣.Value))) 修改为:=Sum(Fields!数量.Value *Fields!单价.Value * (1-Fields!折扣.Value))。

7

最终效果

8

转载请注明出自:葡萄城控件

关于葡萄城报表

葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。

千万种报表,同一种选择!获知葡萄城报表更多详情,请访问如下网站:
了解报表开发控件:/developer/activereports
了解报表服务器:/solutions/reporting