一种报表生成方法及装置制造方法及图纸

技术编号:10317919 阅读:138 留言:0更新日期:2014-08-13 18:57
本发明专利技术公开了一种报表生成方法,所述方法包括:根据用户输入的报表生成信息确定报表展现方式和数据处理方式;从数据库中获取需要在报表中展现的数据集,并根据所述数据处理方式处理所述数据集中的每个数据;根据所述报表展现方式生成包含所述处理后的数据的报表。本发明专利技术还公开了一种报表生成装置。本发明专利技术实现了提高报表生成效率、节省了人力物力的目的。

【技术实现步骤摘要】
一种报表生成方法及装置
本专利技术涉及计算机
,尤其涉及一种报表生成方法及装置。
技术介绍
对于一个报表生成工具如何生成报表,其过程按先后顺序一般有三步:第一步、数据获取:从数据库中初步获取客户需要的数据;第二步、数据处理:对从数据库中取出的数据进行整理、归并等处理;第三步、数据展现:按客户需求将经处理后的数据输出成特定格式。一般在J a V a编程环境下,其开发过程中一般是分块的,也就是说,若客户的需求是开发N个报表,则分为N个块进行开发,即每个开发人员负责开发其中的一块或几块。例如,若客户要求根据业务信息系统中的电子业务数据,进行计算机程序开发,生成N张业务报表,分别记为P 1> P 2、....P N,则开发人员了解客户对报表P I的需求并开发报表P 2,开发人员了解客户对报表P 2的需求并开发报表P 1,……开发人员了解客户对报表P N的需求并开发报表P N。若客户需求发生变化,就需要定位到对应报表的相关代码段,按新逻辑编写代码,重新编译出执行码,而后重新进行应用系统的部署。可见,在开发报表生成工具时,不同开发人员间的工作从业务逻辑上看是并行的,但在技术实现层面是存在很大冗余的。比如对于不同报表来讲,查询的数据是不同的,但如何将数据从数据库中取出来,如何整理数据(补位、金额格式化)等等,使用的技术却基本是一样的,而不同的开发人员,都为这一过程开发了代码,这就带来了冗余。同时,在发生维护(需求变更)时,即便是一个微小的改动,比如界面数据项顺序改变,也需要修改代码、编译、打包、部署,这一过程反而会产生较大的增加人力物力成本。【专
技术实现思路
】有鉴于此,本专利技术实施例的主要目的在于提供一种报表生成方法及装置,以实现提闻报表生成效率、节省了人力物力的目的。为实现上述目的,本专利技术实施例提供了一种报表生成方法,所述方法包括:根据用户输入的报表生成信息确定报表展现方式和数据处理方式; 从数据库中获取需要在报表中展现的数据集,并根据所述数据处理方式处理所述数据集中的每个数据;根据所述报表展现方式生成包含所述处理后的数据的报表。优选地,所述报表生成信息包括反应报表展现样式的第一信息和反应数据处理规则的第二信息,所述根据用户输入的报表描述信息确定报表展现方式和数据处理方式,具体包括:根据用户输入的所述第一信息确定报表展现方式;根据用户输入的所述第二信息确定数据处理方式。优选地,所述第一信息和所述第二信息配置在预先创建的配置文件中。优选地,所述从数据库中获取需要在报表中展现的数据集,具体包括:采用i B a t i S技术从数据库中获取需要在报表中展现的数据集。优选地,所述根据所述数据处理方式处理所述数据集中的每个数据,具体包括:将所述数据集中的每个数据与所述报表中的相应位置进行关联映射;根据所述数据处理方式对所述映射后的每个数据进行加工。本专利技术实施例还提供了一种报表生成装置,所述装置包括:方式确定模块,用于根据用户输入的报表生成信息确定报表展现方式和数据处理方式;数据获取模块,用于从数据库中获取需要在报表中展现的数据集;数据处理模块,用于根据所述数据处理方式处理所述数据集中的每个数据;报表生成模块,用于根据所述报表展现方式生成包含所述处理后的数据的报表。优选地,所述报表生成信息包括反应报表展现样式的第一信息和反应数据处理规则的第二信息,所述方式确定模块,具体包括:第一方式确定子模块,用于根据用户输入的所述第一信息确定报表展现方式;第二方式确定子模块,用于根据用户输入的所述第二信息确定数据处理方式。优选地,所述第一信息和所述第二信息配置在预先创建的配置文件中。优选地,所述数据获取模块,具体用于采用i B a t i S技术从数据库中获取需要在报表中展现的数据集。优选地,所述数据处理模块,具体包括:数据映射子模块,用于将所述数据集中的每个数据与所述报表中的相应位置进行关联映射;数据加工子模块,用于根据所述数据处理方式对所述映射后的每个数据进行加工。本专利技术实施例的提供的报表生成方法及装置,本专利技术实施例的提供的报表生成方法,根据用户输入的报表生成信息确定报表展现方式和数据处理方式,然后,根据所述数据处理方式处理所述数据集中的每个数据,并根据所述报表展现方式生成包含所述处理后的数据的报表。本专利技术实施例通过用户输入的报表生成信息便定义了报表的样式和报表中数据的展现形式,在生成不同报表时,可以只修改所述报表生成信息,而不必针对每个报表编辑每个用于生成对应报表的程序,可见,本专利技术实施例采用统一的报表生成逻辑来生成报表,不但可以大大提高报表的生成效率,还节省了人力物力。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例报表生成方法的流程示意图;图2为本专利技术实施例报表生成方法的另一流程示意图;图3为本专利技术实施例报表生成装置的结构示意图。【具体实施方式】为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例在于将报表生成这一过程中的前端(数据展现)和后端(数据获取)的业务层面的需求开放,而在中端将技术层面的实现统一化并隐藏,从而达到既支持客户多样化的报表需求,又简化了开发报表生成工具的过程,同时还实现了易于维护报表生成工具的目的。在本专利技术实施例中,假设客户要求根据业务信息系统中的电子业务数据,生成N张业务报表,分别为业务报表P 1、业务报表P 2、......业务报表P N。但是,在生成各个业务报表之前,需要进行计算机程序开发,以得到一个“报表自动生成工具”。具体如下:首先,采用面向对象的思想,将报表抽象为一个报表对象,并将所述报表对象划分表头、列等子对象,以为所述报表对象定义不同类别的属性。即:根据N张业务报表的需求,定义所有报表可适用的元素和元素的属性,也就是定义一套报表生成信息,举例如下:报表描述信息:报表标题、报表报告周期等;报表表头信息:表头样式、列标题、列宽等;报表数据信息:报表数据在业务数据中的来源,每个数据的处理方式(比如报表和数据集的对应关系、金额单位、文本形式、数据形式比如整数、数据日期等)等。以上属性定义过程主要是为了支撑客户对前端报表展现样式的个性化需求,以便最后按照上述属性的实际内容生成报表。然后,将上述报表生成信息转化为计算机可识别的用于生成报表的实现规则。最后,根据所述实现规则进行软件开发,产物即为“报表自动生成工具(即报表生成装置)”。下面根据N张业务报表的需求,向所述报表自动生成工具中分别填写N个业务报表的报表生成信息,并向所述报表自动生成工具中分别加载N个报表所要展不的业务数据,然后运行所述报表自动生成工具,以生成客户所需的N个业务报表。以下为利用所述报表自动生成工具生成报表的流程。参本文档来自技高网
...

【技术保护点】
一种报表生成方法,其特征在于,所述方法包括:根据用户输入的报表生成信息确定报表展现方式和数据处理方式;从数据库中获取需要在报表中展现的数据集,并根据所述数据处理方式处理所述数据集中的每个数据;根据所述报表展现方式生成包含所述处理后的数据的报表。

【技术特征摘要】
1.一种报表生成方法,其特征在于,所述方法包括: 根据用户输入的报表生成信息确定报表展现方式和数据处理方式; 从数据库中获取需要在报表中展现的数据集,并根据所述数据处理方式处理所述数据集中的每个数据; 根据所述报表展现方式生成包含所述处理后的数据的报表。2.根据权利要求1所述的方法,其特征在于,所述报表生成信息包括反应报表展现样式的第一信息和反应数据处理规则的第二信息,所述根据用户输入的报表描述信息确定报表展现方式和数据处理方式,具体包括: 根据用户输入的所述第一信息确定报表展现方式; 根据用户输入的所述第二信息确定数据处理方式。3.根据权利要求2所述的方法,其特征在于,所述第一信息和所述第二信息配置在预先创建的配置文件中。4.根据权利要求1至3任一项所述的方法,其特征在于,所述从数据库中获取需要在报表中展现的数据集,具体包括: 采用i B a t i s技术从数据库中获取需要在报表中展现的数据集。5.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述数据处理方式处理所述数据集中的每个数据,具体包括: 将所述数据集中的每个数据与所述报表中的相应位置进行关联映射; 根据所述数据处理方式对所述映射后的每个数据进行加工。6.一种报表生成装置,其特...

【专利技术属性】
技术研发人员:王一甲
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1