[发明专利]报表生成方法和系统有效
申请号: | 201710864170.8 | 申请日: | 2017-09-22 |
公开(公告)号: | CN107608951B | 公开(公告)日: | 2021-12-21 |
发明(设计)人: | 莫宇;凌万水;张杰 | 申请(专利权)人: | 上海金智晟东电力科技有限公司 |
主分类号: | G06F40/18 | 分类号: | G06F40/18;G06F40/186 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200233 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报表 生成 方法 系统 | ||
本发明提供了一种报表生成方法和系统,该方法,包括:加载测试数据和word制定的报表模板;对所述测试数据进行规格化和缓存,并从所述word制定的报表模板中解析出指令、公式、变量以及替换的处理逻辑;其中,所有解析出的指令构成相应的指令集;所有解析出的公式构成相应的公式集;所有解析出的变量构成相应的变量集;将所述测试数据按照所述指令集、公式集、变量集以及替换的处理逻辑生成可视化报表。本发明利用word可视化定制报表模板,效率高,直观可靠,不易出错,易于推广使用。
技术领域
本发明涉及计算机技术领域,具体地,涉及一种报表生成方法和系统。
背景技术
目前开发者设计了许多专业的报表应用软件,但是这些报表应用软件一般基于特定领域或者用户特定需求而设计,专业性强,对用户操作的专业度要求高。Office软件是目前使用最为普遍的办公软件,其中的word模板中就自带有报表引擎。word模板的报表引擎的实质是实现对变量表达式的计算和对带有word排版格式的变量表达式进行替换,从而生成用户需求的报表。
但是,在通过word制定模板实现可视化编辑模板时,由于段落中的文本由若干XWPFRun(XWPFRun是XWPFDocument中的一段文本对象)构成,其中文本内容随机分布在XWPFRun集合中,因此造成无法正确提取计算表达式或者非表达式部分被错误替换的情况出现,并最终影响可视化编辑模板的正确生成。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种报表生成方法和系统。
第一方面,本发明提供一种报表生成方法,包括:
加载测试数据和word制定的报表模板;
对所述测试数据进行规格化和缓存,并从所述word制定的报表模板中解析出指令、公式、变量以及替换的处理逻辑;其中,所有解析出的指令构成相应的指令集;所有解析出的公式构成相应的公式集;所有解析出的变量构成相应的变量集;
将所述测试数据按照所述指令集、公式集、变量集以及替换的处理逻辑生成可视化报表。
可选地,所述对所述测试数据进行规格化和缓存,包括:
将所述测试数据转化为WordTable数据结构,并采用JSON编码格式存储,对于所述测试数据中的二进制图片数据采用Base64编码进行处理以及标识属性;所述WordTable数据结构包括name、desc、head、body四个关键属性,其中:
name用于索引关键字,所述关键字为符合程序变量命名规范的字母或者数字组合;
desc用于进行数据的描述;
head为对应字符串数组,所述head的内容为列块信息描述;
body为表格数据。
可选地,所述从所述word制定的报表模板中解析出指令、公式、变量以及替换的处理逻辑,包括:
从所述word制定的报表模板的最后段落中解析出指令,并生成指令集;
从所述word制定的报表模板的段落和表格中解析出变量,并生成变量集;
从所述word制定的报表模板的段落和表格中解析出公式,并生成公式集和替换的处理逻辑。
可选地,所述从所述word制定的报表模板的最后段落中解析出指令,并生成指令集,包括:
读取所述word制定的报表模板中的指令内容,通过正则表达式提取指令,并删除所述指令对应段落,通过指令关键字生成指令集;
剔除所述指令集中符合指令格式且非指令关键字的指令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海金智晟东电力科技有限公司,未经上海金智晟东电力科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710864170.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种生成电子报表的方法
- 下一篇:一种病历编辑器及其实现方法