提起报表,大家会觉得即熟悉又陌生,好像常常在工作中使用,又似乎无法准确描述报表。今天我们来了解什么是报表,报表的发展历史,为什么需要报表,报表的功能,以及常见报表分类。


什么是报表

简单的说:报表就是通过表格、图表等形式来动态显示数据,并为使用者提供浏览、打印、导出和分析功能,可以用公式表示为:“报表 = 多样的布局 + 动态的数据 + 丰富的输出”。

报表通常包含以下组成部分:

1.报表首页:在报表的开始处,用来显示报表的标题、图形或说明性文字,每份报表只有一个报表首页。

2.页眉:用来显示报表中的字段名或对记录的分组名称,报表的每一页只有一个页面页眉。

3.主体:打印表或查询中的记录数据,是报表显示数据的主要区域。

4.页脚:打印在每页的底部,用来显示本页的汇总说明,报表只有一个页面页脚。

5.报表尾页:用来显示整份报表的汇总说明,在所有记录都被处理后,只打印在报表的结束处。


发展历史

报表的使用和相关技术发展大致分为五个阶段。

1.纸质类报表

在没有计算机以前,人们利用纸和笔来记录数据。数据以记账人能理解的表现形式来记录,这种形式难于修改且不规范,易出错,且易丢失不易保存。如图所示:


2.电子化报表

计算机出现之后,人们利用计算机处理数据和界面设计的功能来生成、展示报表,相比较手工方式而言,工作效率大大提高。这个时期,最为典型就是Excel,word等办公软件,这些工具仅仅是将手工绘制报表的方式改为电子处理方式,没有定义专门的报表结构来动态加载报表数据,这类软件中的数据都是已经定义好的,静态的,且不能动态变化。如图所示:


3.基础报表工具

随着信息化程度的不断提高,对于数据动态化的迫切需要,因此出现了许多内置于ERP或数据库软件的报表,报表以固定的格式嵌入ERP系统或数据库软件中,它们可以拥有动态变化的数据,但是这类软件一般只会提供,最简单的表格形式来显示数据。它们没有报表"格式多样化"的特性。


4.现代报表工具

信息的发展总是辅助用户工作,提高用户的工作效率。数据动态化之后,单一表格样式的报表并不能满足用户需求,因此产生了真正意义上的报表,具有数据动态化以及格式多样化特性的报表,有专门的报表结构来动态的加载数据,同时实现报表格式的多样化,有效的展示数据信息。


5.自助式报表

这是近几年流行开来的报表使用方式,在不借助任何软件研发人员协助的情况下,终端用户自己就可以根据自身的需要,整合各种不同的数据来创建具有交互式功能的报表,进行即时分析,预测分析,从而降低决策的风险性,帮助企业发现潜在商机。比较有代表性的产品有ActiveReports报表方案等产品。



为什么需要报表

企业信息化系统最核心的就是数据处理,大致可分为三个环节,原始输入、业务加工、数据输出。而报表是数据输出环节最为常用的一种方式,它可以提供任意复杂格式的数据输出,并能快速完成数据的汇总统计操作,进而为使用者提供最直观的输出结果,以及任意形式的交互式报表分析能力,为企业指定发展战略提供最有力的数据支撑。

1.布局和格式设计简单

传统应用程序常以窗体/页面为数据输出的基本形式,在应对简单的表格或图表数据输出时比较容易实现,但是,在应对复杂表格、多区域混合布局、层叠布局等复杂需求时开发和维护难度相当大。而优秀的报表是以拖拽方式设计界面,并通过多源分片、报表分层等技术来简化复杂界面的开发难度,就算后续有界面修改的需要,也只是对报表文件进行调整,不许进行二次编译和发布,最有效的降低系统开发和维护成本。

2.数据汇总能力强大

在不采用报表的情况下,为了完成但条件分类合计的操作,往往会写成百上千行代码,更不用说复杂的多维度汇总。而一般的报表工具都能满足分类统计这类基础的汇总操作,更强大的工具还具备类似Excel中数据透视表的交叉汇总能力。不用写一行代码,便可解决中国式复杂报表的绝大部分数据汇总需要。

3.输出方式比较全面

数据输出不仅为了在系统中查看,通常还会进行打印操作,或者导出为其它格式的文件进行共享,一般的单个表格或者图表往往不具备打印和导出功能,只有报表则才是真正的将数据查看、打印和导出给予一身的全方位解决方案。

4.为使用者提供交互式分析功能

传统的应用程序,甚至是功能相当单一的报表工具都是以静态的方式输出数据,也就是说报表使用者无法与数据进行交互,无法对自己感兴趣的关键数据做进一步的深入分析。而ActiveReports报表方案中开创性的提出交互式报表这一概念,测试解决了报表使用者与数据交互的难题。在查看报表时,可以借助数据钻取功能对不同粒度的数据进行层层深入的关联性分析;通过数据深化功能,根据你的需要觉得显示或者隐藏详细数据,更便于从不同维度分析数据;除此之外,多条件和级联过滤可在海量数据中提取出最核心的数据进行定性、定量的分析。


报表的功能

报表主要是满足数据输出的需要,根据输出设备和使用方式,可将报表的功能分为以下几大类:

1.直接打印:这是早期应用系统中使用报表的最主要原因,比如,在ERP系统中有大量的单据、发票、条码标签需要打印。

2.文件导出:为了实现数据的共享或二次加工处理,须将系统中的数据导出为可独立使用的文件,比如:Excel、Word、PDF、图片等。

3.汇总统计:通过对原始数据进行分组、交叉等方式的汇总统计,以便于梳理共享数据的总体情况。

4.数据分析:这类功能多数是为决策层提供的报表功能,企业领导通过对数据的交互式分析,深度挖掘企业运营现状,进而制定相应的决策。


常见的报表分类

1.根据报表中元素之间的布局/位置关系可分为

a)单元格布局:所有元素的定位是以单元格为最小单位,常用于表格类数据输出。

b)自由布局:所有元素的定位是任意的,最小单位可以是一个像素。

2.根据数据显示方式不同可分为

a)表格类报表:主要是通过表格将原始数据以数值+文本的方式进行直接输出,输出的数据可以是明细数据和汇总统计的结果。

b)可视化报表:将数据以2D/3D图表、地图、迷你图、图标、条件格式等图形化方式进行输出,主要是为了提升数据的可读性,便于大数据量的分析效率。

3.根据用户对数据的可操作性分为

a)静态报表:以直接输出数据,并进行打印和导出为主要用途,比如:入库/出库单据打印,客户订单打印等。

b)交互式报表:这是现代商业智能报表中最重要的数据分析方式,最常用的交互式功能包括数据钻取、深化和过滤。

报表开发知识大全(1) 什么是报表相关推荐

  1. Reporting报表开发知识汇总[个人原创]

    [个人原创] ,转发请声明原文链接 了解 a)      SSRS全称 SQL Server Reporting Services,是依赖于数据库运行的,是微软开发的重量级别的BI产品 b)      ...

  2. 从数据平台到报表开发,我靠这个零代码报表工具,转行后月薪3W

    偶尔会跟大数据这行里的朋友聊天,先说一个我听到的故事:有一京东的哥们,在那工作三年了,大数据平台岗.数仓搭好了之后,天天就是写SQL,一个月28k. 在京东待两年,那业务和调优的手法,再熟悉不过了,就 ...

  3. oracle系统报表开发工具,掌握七款实用报表开发工具,定制属于自己的报表

    阅读提示: 文章中与FineReport软件使用的相关内容,基于软件的V7.0旧版本编写,不代表软件最新的使用方式. FineReport最新版免费试用:https://www.finereport. ...

  4. MSCRM中报表开发二:创建基于FetchXML报表

    1. 获取FetchXML.因为FetchXML难以撰写,所以我们一般都是使用高级查找来生成FetchXML或者通过其他工具来生成.我这里在商机界面通过高级查找制作了一个新的视图,名称为 商机查询,  ...

  5. MSCRM中报表开发一:创建基于SQL报表

    1.       新建报表项目.打开SQL Server Business Intelligence Development Studio,点击 文件 > 新建 > 项目,项目类型选择 商 ...

  6. 数据报表开发技巧:自动为数据报表添加【小计】、【总计】行

    在开发ERP系统的数据报表时,几乎都是需要看到[小计].[总计]这样的汇总数据的,在数据报表的显示列表中,最下面的一行通常就是[小计]或者[总计]的汇总行.如果手动为每个报表都增加汇总行,那也是一份不 ...

  7. oracle erp 报表开发手册,处置OracleERP导出的报表文件

    [代码] [Java]代码 package k.finance; import java.io.File; import java.io.IOException; import java.util.A ...

  8. SAP报表开发工具 Report Painter

    这里所指的Report Painter是SAP ECC产品中的一个报表开发工具,中文名为报表绘制器.经常与Report Painter一同提出的Report Writer是其前身,原应用于SAP R/ ...

  9. AgileEAS.NET平台开发实例-药店系统-报表开发(高级篇)

    开篇 上篇我们讲述了报表开发的独立开发与基于平台的开发二种方式,相信大家已经对报表开发有了一定的了解,那么我们本篇将会巩固大家对报表开发的知识,我们这里提供一 个我们平时在项目中应用到的一些关于报表开 ...

最新文章

  1. 【译】Google's AutoML: Cutting Through the Hype
  2. linux svn同步到本地目录,LINUX中SVN服务的搭建与实现SVN 自动同步到web目录,SVN自动启动...
  3. [SQL Server]重命名数据库【转】
  4. pdf文件内容查看器 -- 采用wpf开发
  5. 唯有自己变得强大_唯有自己变得强大,才能获得有用人脉!
  6. [裴礼文数学分析中的典型问题与方法习题参考解答]4.3.14
  7. SDUT OJ 效率至上(线段树)
  8. 【Windows编程】系列第六篇:创建Toolbar与Statusbar
  9. elementui如何在input 框中搜索_【挑战自学Python编程】第八天:while循环以及input()函数...
  10. php如何打包成apk,windows下PHP批量生成打包android程序APK
  11. 仿9GAG制作过程(一)
  12. 计算机连接不上蓝牙鼠标,蓝牙鼠标连接不上的解决方案
  13. 远程控制 - 手机完全控制电脑之TeamViewer
  14. 新Macbook电池续航能力表现欠佳,用户表示用不到5小时
  15. keil创建无启动文件及自定义.sct文件的工程
  16. 删除集合中特定元素的几种情况
  17. 第14届蓝桥杯STEMA测评真题剖析-2022年11月27日Scratch编程初中级组
  18. layui如何通过view(this.id).render来传递参数
  19. LeetCode刷题笔记汇总
  20. 实验任务(三)---密码破解技术

热门文章

  1. 安装Python 出现0x80072f7d错误的解决办法
  2. 关于计算机的英语演讲稿三分钟,关于自信的英语三分钟演讲稿
  3. 游戏开发---影子跟随算法
  4. js禁止退格键(Backspace)
  5. 理性讨论:国产沙盒游戏为何都比不上《方舟:生存进化》跟《MC》?
  6. 合泰单片机做电压表_合泰单片机使用总结
  7. 加州大学伯克利分校计算机科学专业,加州大学伯克利分校研究生计算机专业排名及申请...
  8. 【工程数学】笔记2:数学物理方程
  9. 孢子框架-互联网金融平台微服务架构设计(转)
  10. ubuntu 部署ATX