CN104615751A - 一种报表文件生成方法及装置 - Google Patents
一种报表文件生成方法及装置 Download PDFInfo
- Publication number
- CN104615751A CN104615751A CN201510075870.XA CN201510075870A CN104615751A CN 104615751 A CN104615751 A CN 104615751A CN 201510075870 A CN201510075870 A CN 201510075870A CN 104615751 A CN104615751 A CN 104615751A
- Authority
- CN
- China
- Prior art keywords
- data
- form template
- report form
- target service
- report
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种报表文件生成方法及装置,方法包括:调用预置的与所述目标业务对应的数据采集程序,按照规定的数据结构采集目标业务的数据,获取与目标业务对应的报表模板,该报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置,将目标业务的数据与报表模板进行组装,获得与所述目标业务对应的报表文件。本申请的方法,将报表模板与数据采集程序分离开来,当需要改动报表模板时,无需对数据采集程序的代码进行改动,减少了工作量。
Description
技术领域
本申请涉及报表系统技术领域,更具体地说,涉及一种报表文件生成方法及装置。
背景技术
在银行业务统计及数据分析等工作过程中,经常需要利用应用程序产生的数据来生成报表,从而更加简单、方便的对数据进行分析。
现有的报表系统依靠源代码编译级别的应用程序报表生成方式,也即将报表模板的代码糅合在应用程序的代码中。但是,在现有工作中,有时需要在不改动现有应用程序的基础上,新增数据报表类型或者修改现有报表展示方式,以满足不断增加的业务需求。显然,现有的报表系统在修改报表模板时,会对应用程序的代码一同进行修改,大大增加了工作量。
发明内容
有鉴于此,本申请提供了一种报表文件生成方法及装置,用于解决现有报表系统无法独立改动报表模板的问题。
为了实现上述目的,现提出的方案如下:
一种报表文件生成方法,包括:
调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
优选地,所述将所述目标业务的数据与所述报表模板进行组装,包括:
确定所述报表模板中的变量数据;
按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
优选地,所述将所述目标业务的数据与所述报表模板进行组装的过程,还包括:
按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
优选地,所述报表模板为XML文件。
一种报表文件生成装置,包括:
数据采集单元,用于调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
报表模板获取单元,用于获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
报表组装单元,用于将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
优选地,所述报表组装单元包括:
变量数据确定单元,用于确定所述报表模板中的变量数据;
变量值调取单元,用于按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
变量值填充单元,用于将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
优选地,所述报表组装单元还包括:
格式化单元,用于按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
样式设置单元,用于按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
优选地,所述报表模板为XML文件。
从上述的技术方案可以看出,本申请实施例提供的报表文件生成方法,调用预置的与所述目标业务对应的数据采集程序,按照规定的数据结构采集目标业务的数据,获取与目标业务对应的报表模板,该报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置,将目标业务的数据与报表模板进行组装,获得与所述目标业务对应的报表文件。本申请的方法,将报表模板与数据采集程序分离开来,当需要改动报表模板时,无需对数据采集程序的代码进行改动,减少了工作量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种报表文件生成方法流程图;
图2为本申请实施例公开的一种带格式的报表模板示意图;
图3为本申请实施例公开的目标业务数据与报表模板组装的流程图;
图4为本申请实施例公开的另一种目标业务数据与报表模板组装的流程图;
图5为本申请实施例公开的一种报表文件生成装置结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,图1为本申请实施例公开的一种报表文件生成方法流程图。
如图1所示,该方法包括:
步骤S100、调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
具体地,对于不同的业务分别开发了对应的数据采集程序,该数据采集程序能够按照规定的数据结构采集对应业务的数据。其采集的数据按照一定的结构存储在内存中。
步骤S110、获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
具体地,对于不同的目标业务预先设计了对应的报表模板,报表模板中展示字符数据,以及边框、边线、分割线等。字符数据分为常量数据和变量数据,常量数据由设计模板时固定,生成报表文件时不变。而对于变量数据的值,在报表模板中规定了变量数据的值在与该目标业务对应的数据采集程序所采集的数据中的位置。
在设计阶段,对于一个目标业务来说,与其对应的报表模板和数据采集程序是同时开发的。数据采集程序所输出的数据结构与报表模板所规定的变量数据的值的位置是相互对应的。举例如:数据采集程序输出的数据为***%%%%%AAAA,其中第9-12个比特位的A代表组织单元代码。则在报表模板中,对于组织单元代码,可以规定其值的位置为9-12比特位。
步骤S120、将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
对于获取的报表模板以及目标业务的数据进行组装,从而获得对应的报表文件。
本申请实施例提供的报表文件生成方法,调用预置的与所述目标业务对应的数据采集程序,按照规定的数据结构采集目标业务的数据,获取与目标业务对应的报表模板,该报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置,将目标业务的数据与报表模板进行组装,获得与所述目标业务对应的报表文件。本申请的方法,将报表模板与数据采集程序分离开来,当需要改动报表模板时,无需对数据采集程序的代码进行改动,减少了工作量。
可选的,上述预先建立的报表模板可以是XML格式文件。由于业务数据可以分为有格式数据文件和无格式数据文件,因而报表模板也可以分为带格式的报表模板和不带格式的报表模板。其中,带格式的报表模板由开发人员对报表样式(大小、边界、行数等)及数据格式(所在单元格、对齐方式、绑定字段等)进行设定。无格式的报表模板为将业务数据按定义好的分隔符拼接成行,生成多行文件。其中,有格式的报表模板可以参见图2所示。
可选的,预置的数据采集程序可以使用C语言Fetch函数来调用COBOL目标码,以获取业务数据。
参见图3,图3为本申请实施例公开的目标业务数据与报表模板组装的流程图。
如图3所示,目标业务的数据与报表模板进行组装的过程为:
步骤S300、确定所述报表模板中的变量数据;
具体地,报表模板中有常量数据和变量数据,此处需要确定出变量数据。对于变量数据,可以通过一定的标注进行标记,如图2所示,可以选择以“”符号作为变量的开始和结束。当然,除此之外还可以选择其它的符号来进行标示。
步骤S310、按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
由于报表模板已经规定了每一个变量数据的值在数据采集程序采集的数据中的位置(如实施例一中列举的例子),因此在目标业务的数据中调取与变量数据对应的值。
步骤S320、将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
具体地,将上述调取的变量数据的值填充至报表模板中该变量数据的位置处,完成模板的填充过程。模板填充完毕后形成一份完整的报表文件。
进一步,参见图4,图4为本申请实施例公开的另一种目标业务数据与报表模板组装的流程图。
结合图3和图4可知,该过程还可以包括:
步骤S330、按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
步骤S340、按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
报表模板中除了规定了变量数据的值的位置之外,还可以规定变量数据的格式化方式,例如货币代码的格式、日期的格式等等。此外,还可以规定一些常规的样式,例如打印位置、显示格式、对齐方式、分页方式、插入分割串和切纸标志等等。因此可以按照这些格式规定进行报表模板的格式设置。
在报表文件生成之后,可以推送到报表服务器。
下面对本申请实施例提供的报表文件生成装置进行描述,下文描述的报表文件生成装置与上文描述的报表文件生成方法可相互对应参照。
参见图5,图5为本申请实施例公开的一种报表文件生成装置结构示意图。
如图5所示,该装置包括:
数据采集单元51,用于调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
报表模板获取单元52,用于获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
报表组装单元53,用于将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
可选的,所述报表模板为XML文件。
可选的,所述报表组装单元53可以包括:
变量数据确定单元,用于确定所述报表模板中的变量数据;
变量值调取单元,用于按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
变量值填充单元,用于将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
可选的,所述报表组装单元53还可以包括:
格式化单元,用于按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
样式设置单元,用于按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
本申请实施例提供的报表文件生成装置,调用预置的与所述目标业务对应的数据采集程序,按照规定的数据结构采集目标业务的数据,获取与目标业务对应的报表模板,该报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置,将目标业务的数据与报表模板进行组装,获得与所述目标业务对应的报表文件。本申请的装置,将报表模板与数据采集程序分离开来,当需要改动报表模板时,无需对数据采集程序的代码进行改动,减少了工作量。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种报表文件生成方法,其特征在于,包括:
调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
2.根据权利要求1所述的方法,其特征在于,所述将所述目标业务的数据与所述报表模板进行组装,包括:
确定所述报表模板中的变量数据;
按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
3.根据权利要求2所述的方法,其特征在于,所述将所述目标业务的数据与所述报表模板进行组装的过程,还包括:
按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
4.根据权利要求1所述的方法,其特征在于,所述报表模板为XML文件。
5.一种报表文件生成装置,其特征在于,包括:
数据采集单元,用于调用预置的与目标业务对应的数据采集程序,按照规定的数据结构采集所述目标业务的数据;
报表模板获取单元,用于获取预置的与所述目标业务对应的报表模板,所述报表模板规定了变量数据的值在所述数据采集程序采集的数据中的位置;
报表组装单元,用于将所述目标业务的数据与所述报表模板进行组装,以获得与所述目标业务对应的报表文件。
6.根据权利要求5所述的装置,其特征在于,所述报表组装单元包括:
变量数据确定单元,用于确定所述报表模板中的变量数据;
变量值调取单元,用于按照所述报表模板规定的所述变量数据的值在所述数据采集程序采集的数据中的位置,在所述目标业务的数据中调取与所述变量数据对应的值;
变量值填充单元,用于将与所述变量数据对应的值填充至所述报表模板中所述变量数据的位置。
7.根据权利要求6所述的装置,其特征在于,所述报表组装单元还包括:
格式化单元,用于按照所述报表模板规定的格式化方式,对所述变量数据的格式进行统一设置;
样式设置单元,用于按照所述报表模板规定的样式,对所述报表模板的打印位置、显示格式、对齐方式及分页方式进行设置。
8.根据权利要求5所述的装置,其特征在于,所述报表模板为XML文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510075870.XA CN104615751A (zh) | 2015-02-12 | 2015-02-12 | 一种报表文件生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510075870.XA CN104615751A (zh) | 2015-02-12 | 2015-02-12 | 一种报表文件生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104615751A true CN104615751A (zh) | 2015-05-13 |
Family
ID=53150193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510075870.XA Pending CN104615751A (zh) | 2015-02-12 | 2015-02-12 | 一种报表文件生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104615751A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105279228A (zh) * | 2015-09-14 | 2016-01-27 | 深圳市永兴元科技有限公司 | 基于可扩展标记语言的报表处理方法及装置 |
CN106294299A (zh) * | 2016-07-29 | 2017-01-04 | 杭州华三通信技术有限公司 | 一种报表生成方法及装置 |
CN106648680A (zh) * | 2016-12-29 | 2017-05-10 | 江西博瑞彤芸科技有限公司 | 基于动态变量的信息模板生成方法 |
CN107273494A (zh) * | 2017-06-15 | 2017-10-20 | 浪潮软件集团有限公司 | 一种数据采集方法和装置 |
CN107943872A (zh) * | 2017-11-13 | 2018-04-20 | 中国人民银行清算总中心 | 图形化文件生成方法及系统 |
WO2018145635A1 (zh) * | 2017-02-08 | 2018-08-16 | 深圳壹账通智能科技有限公司 | 文件生成方法、装置、服务器和存储介质 |
CN111144085A (zh) * | 2019-12-10 | 2020-05-12 | 北京中宏立达科技发展有限公司 | 一种业务信息系统流式文件编辑的方法、专用插件和系统 |
CN111221454A (zh) * | 2020-04-21 | 2020-06-02 | 广东电网有限责任公司东莞供电局 | 电网业务数据的处理方法、装置、设备及存储介质 |
CN112487779A (zh) * | 2020-12-15 | 2021-03-12 | 国电南瑞科技股份有限公司 | 一种计划市场数据文件生成方法、发布方法及系统 |
CN112767013A (zh) * | 2021-01-05 | 2021-05-07 | 北京锐安科技有限公司 | 一种业务报表拆分方法、装置、服务器及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101122899A (zh) * | 2007-09-18 | 2008-02-13 | 杭州华三通信技术有限公司 | 报表的生成方法和设备 |
CN103631969A (zh) * | 2013-12-20 | 2014-03-12 | 北京中电普华信息技术有限公司 | 一种报表数据的生成方法及装置 |
-
2015
- 2015-02-12 CN CN201510075870.XA patent/CN104615751A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101122899A (zh) * | 2007-09-18 | 2008-02-13 | 杭州华三通信技术有限公司 | 报表的生成方法和设备 |
CN103631969A (zh) * | 2013-12-20 | 2014-03-12 | 北京中电普华信息技术有限公司 | 一种报表数据的生成方法及装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105279228A (zh) * | 2015-09-14 | 2016-01-27 | 深圳市永兴元科技有限公司 | 基于可扩展标记语言的报表处理方法及装置 |
CN106294299A (zh) * | 2016-07-29 | 2017-01-04 | 杭州华三通信技术有限公司 | 一种报表生成方法及装置 |
CN106648680A (zh) * | 2016-12-29 | 2017-05-10 | 江西博瑞彤芸科技有限公司 | 基于动态变量的信息模板生成方法 |
WO2018145635A1 (zh) * | 2017-02-08 | 2018-08-16 | 深圳壹账通智能科技有限公司 | 文件生成方法、装置、服务器和存储介质 |
US10802804B2 (en) | 2017-02-08 | 2020-10-13 | One Connect Smart Technology Co., Ltd. | File generation method, device, server, and storage medium |
CN107273494A (zh) * | 2017-06-15 | 2017-10-20 | 浪潮软件集团有限公司 | 一种数据采集方法和装置 |
CN107943872A (zh) * | 2017-11-13 | 2018-04-20 | 中国人民银行清算总中心 | 图形化文件生成方法及系统 |
CN111144085A (zh) * | 2019-12-10 | 2020-05-12 | 北京中宏立达科技发展有限公司 | 一种业务信息系统流式文件编辑的方法、专用插件和系统 |
CN111221454A (zh) * | 2020-04-21 | 2020-06-02 | 广东电网有限责任公司东莞供电局 | 电网业务数据的处理方法、装置、设备及存储介质 |
CN112487779A (zh) * | 2020-12-15 | 2021-03-12 | 国电南瑞科技股份有限公司 | 一种计划市场数据文件生成方法、发布方法及系统 |
CN112487779B (zh) * | 2020-12-15 | 2024-04-26 | 国电南瑞科技股份有限公司 | 一种计划市场数据文件生成方法、发布方法及系统 |
CN112767013A (zh) * | 2021-01-05 | 2021-05-07 | 北京锐安科技有限公司 | 一种业务报表拆分方法、装置、服务器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104615751A (zh) | 一种报表文件生成方法及装置 | |
CN101599067B (zh) | 一种用户自定制报表的方法 | |
CN104063361B (zh) | 报表设计方法和报表设计系统 | |
CN103077022B (zh) | 一种作业流程可视化的作业配置方法和装置 | |
CN109597954A (zh) | 数据项展示方法、装置、计算设备和介质 | |
CN107291450A (zh) | 一种编程友好型的敏捷代码自动生成方法 | |
CN110705231A (zh) | 一种网页编辑方法及装置 | |
CN104020997A (zh) | 可扩展图形化规则应用系统 | |
CN109697064A (zh) | 一种自定义页面的生成方法及装置 | |
US20110296309A1 (en) | User interface generation with scoring | |
CN107209773A (zh) | 自动调用统一的可视化界面 | |
CN104461538A (zh) | 报表生成方法和报表生成系统 | |
CN100585584C (zh) | 一种基于模板节的表格快速生成系统及方法 | |
CN105159674A (zh) | 一种图文应用制作方法、装置及终端 | |
CN109885744A (zh) | 网页数据爬取方法、装置、系统、计算机设备及存储介质 | |
CN109542438A (zh) | 一种基于可视化的图表开发方法 | |
CN104052626A (zh) | 配置网元数据的方法、装置和系统 | |
CN108446262A (zh) | 一种表单生成、分析方法及装置 | |
CN104199928A (zh) | 一种半结构化的页面描述与解析方法 | |
CN109634610A (zh) | 一种界面标注数据的生成方法及装置 | |
CN108959439A (zh) | 一种数据模板生成方法及系统 | |
CN104267967B (zh) | 软件的程序代码的生成方法及装置 | |
CN106250390A (zh) | 一种分步自动生成sql语言的方法及装置 | |
CN103218460A (zh) | 基于最优线性稀疏重构的图像标签补全方法 | |
CN113485746B (zh) | 应用程序接口文档的生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150513 |
|
RJ01 | Rejection of invention patent application after publication |