基于在线创建模板和在线指定数据的报告生成系统和方法技术方案

技术编号:24207845 阅读:47 留言:0更新日期:2020-05-20 15:27
本发明专利技术涉及一种基于在线创建模板和在线指定数据的报告生成系统和方法,在线指定查询数据功能使得用户能够直接指定报告中的数据,不用专业人士再编写代码即可获得目标数据。在线制作模板功能使得用户不用再线下制作带占位符的模板,避免了线下制作模板的大量测试工作,降低了制作模板的难度。通过上述功能获得了“数据”和“模板”,然后系统的报告生成功能将它们整合在一起生成报告,报告生成系统包括:用户管理模块、数据库解析模块、查询条件管理模块、模板管理模块、报告管理模块和文件解析模块。

Report generation system and method based on online template creation and online specified data

【技术实现步骤摘要】
基于在线创建模板和在线指定数据的报告生成系统和方法
本专利技术涉及计算机信息服务领域的文本处理领域,具体来说是利用计算机自动生成报告的文本处理领域,具体涉及一种基于在线创建模板和在线指定数据的报告生成系统和方法。
技术介绍
现有的报告自动生成方法可以按是否使用模板划分成2种[3]:(1)不使用模板,而是将报告的格式直接固化在计算机程序代码里,在生成报告时由程序将数据和格式同时写入到报告文件中。其缺点是不够灵活,难以更新模板。(2)使用较为广泛的方法是使用模板来生成报告,一般需要提前制作一份有代码占位符的模板,然后系统将数据替换占位符,最终生成报告。现有技术方案1是一项专利:专利名称:一种以Word为模板的报表系统[1]申请人:北京匡恩网络科技有限责任公司申请号:201610034487.4申请日:2016-01-19申请公布日:2016.09.14状态:审中-实审产品结构:该专利结构从上到下共有5层:模板制作、报表配置、数据提取、报表缓存、报表展示。各层的功能分别是:1、模板制作,根据系统提供的代码占位符和现有的需求,制作报表模板;2、报表配置,根据系统提供的占位符提示,报表需要显示的内容进行报表配置;3、数据提取,系统提供报表统计程序,针对占位符并根据模板内容进行数据的过滤、统计和提取;4、报表缓存,在提取数据的同时,根据模板的类型,生成报表;5、报表展示,在表现层以Word、PDF、网页等方式进行报表展示。工作原理:1、首先,用户制作Word报表模板。模板内容可以随意填写,只需在所要展示数据的部分填写相应的占位符即可。该专利中的占位符是一个ID编号,和数据库中的一个主键一一对应。2、其次,填写报表参数,在Excel中填写报表所需要的参数,包括占位符、报表要显示的内容,通过系统把Excel上传到数据库中。3、再次,系统把模板转换成Word形式,然后根据占位符到数据库中提取该报表所需数据,用真正的数据(也就是通过Excel上传上来的数据)替换占位符,完成报表生成。现有技术1的缺点:1、该专利在生成报告时所需的数据需要用户通过Excel上传到数据库,当每次要使用的数据不相同时,需要多次上传Excel数据,对用户来说是大量的工作量。2、用户在制作模板时需要遵循该专利的规则,也就是代码占位符的规则。这样用户需要去学习代码占位符的规则,因为代码占位符要求很严格,所以容易出错,但该专利并没有提供有效的防范措施。现有技术方案2是一项专利:专利名称:报告生成方法及装置[2]申请人:新华三大数据技术有限公司申请号:201810878453.2申请日:2018-08-03申请公开日:2019.02.01状态:审中-实审该专利通过让用户在WEB页面上的富文本编辑器中输入模板内容来制作模板,依据代码占位符中的查询时长及查询内容来查询数据,然后系统将数据插入到报告模板中形成HTML格式的中间文件;对所述中间文件进行格式转换,生成预设格式的报告文件。由于在HTML格式的报告模板中,待显示的内容的样式是以标签的形式存在的,可以方便用户在线上对模板进行灵活的编辑。现有技术2的缺点:该专利依据代码占位符中的查询时长及查询内容来查询数据,只能查询固定时长(如日、周)的数据以及数量对比,难以满足和时间不相关的查询场景。该专利查询数据的能力不强,有很多查询场景都无法满足。按照模板生成报告是报告生成工具的常用方式。这种方式灵活性强,方便对模板进行修改。但制作新模板、修改旧模板时,通常需要专业人士按照“代码占位符”的规则进行制作,制作模板的难度较高。除此之外,现有的很多生成工具都是“针对性开发”,即根据客户需求专门开发出适合当前场景的工具,交互性强、响应速度快,能满足客户的细节要求。但这种针对性开发不仅工作量大,而且要求开发者具有专业知识。同时,这种针对性开发导致为一家公司制作的报告生成工具,也比较难直接应用到另一家公司上。综上所述,降低模板制作的难度、避免专业人士的“针对性开发”就是本专利技术主要解决的技术问题。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种基于在线创建模板和在线指定数据的报告生成系统和方法。在线指定查询数据功能使得用户能够直接指定报告中的数据,不用专业人士再编写代码即可获得目标数据。在线制作模板功能使得用户不用再线下制作带占位符的模板,避免了线下制作模板的大量测试工作,降低了制作模板的难度。通过上述功能获得了“数据”和“模板”,然后系统的报告生成功能将它们整合在一起生成报告。为达到以上目的,本专利技术采取的技术方案是:本专利技术第一方面提供了一种基于在线创建模板和在线指定数据的报告生成系统,包括:用户管理模块、数据库解析模块、查询条件管理模块、模板管理模块、报告管理模块和文件解析模块;所述用户管理模块用于提供用户登录和注销,所述数据库解析模块用于获取数据库的层级结构,并为查询条件管理模块、模板管理模块提供数据库的结构信息,所述查询条件管理模块用于将数据库的层级结构在前端展示,提供在线指定数据查询条件功能,供用户指定报告数据,并为模板管理模块提供模板制作时的代码占位符,同时为报告管理模块提供报告生成时的数据,所述模板管理模块用于提供在线制作模板功能,并根据网页标签生成模板文件,并为报告管理模块提供报告生成时的模板文件,所述文件解析模块用于保存用户上传的模板文件,将上传的模板文件替换已有的模板文件,并更新数据库中的模板文件,同时为模板管理模块提供最新的模板文件,所述报告管理模块用于根据模板文件生成报告。在上述方案的基础上,所述用户管理模块包括用户的登录、注销功能,登录功能用于记录当前使用者的状态,当用户登录以后,才能使用系统的其它模块,未登录则无法使用,同时,其它模块记录当前操作的用户,方便以后查看,注销功能用于退出当前的用户账号,方便用户保密数据或者切换账号。在上述方案的基础上,所述数据库解析模块包括:数据库结构获取功能、数据库结构存储功能和触发更新功能,数据库结构获取功能用于读取配置文件中的数据库的地址、用户名、密码,并根据读取的数据连接到数据库,然后通过java.sql包获取数据库的层级结构,数据库的层级结构包括:数据库的表名、表中的所有字段,数据库结构存储功能用于将数据库结构获取功能获取的数据转换成“表-字段”的树形结构,并存储到Json文件中,触发更新功能用于在数据库解析模块收到更新指令时,调用数据库结构获取功能更新数据。这样数据库解析模块就不用经常读取数据库的结构,因为这个操作是很耗费时间的。在上述方案的基础上,所述查询条件管理模块包括:数据库结构解析器、数据获取器、查询条件增加、删除、修改、保存功能和查询条件测试功能,数据库结构解析器用于读取数据库解析本文档来自技高网
...

【技术保护点】
1.一种基于在线创建模板和在线指定数据的报告生成系统,其特征在于,包括:用户管理模块、数据库解析模块、查询条件管理模块、模板管理模块、报告管理模块和文件解析模块;/n所述用户管理模块用于提供用户登录和注销,/n所述数据库解析模块用于获取数据库的层级结构,并为查询条件管理模块、模板管理模块提供数据库的结构信息,/n所述查询条件管理模块用于将数据库的层级结构在前端展示,提供在线指定数据查询条件功能,供用户指定报告数据,并为模板管理模块提供模板制作时的代码占位符,同时为报告管理模块提供报告生成时的数据,/n所述模板管理模块用于提供在线制作模板功能,并根据网页标签生成模板文件,并为报告管理模块提供报告生成时的模板文件,/n所述文件解析模块用于保存用户上传的模板文件,将上传的模板文件替换已有的模板文件,并更新数据库中的模板文件,同时为模板管理模块提供最新的模板文件,/n所述报告管理模块用于根据模板文件生成报告。/n

【技术特征摘要】
1.一种基于在线创建模板和在线指定数据的报告生成系统,其特征在于,包括:用户管理模块、数据库解析模块、查询条件管理模块、模板管理模块、报告管理模块和文件解析模块;
所述用户管理模块用于提供用户登录和注销,
所述数据库解析模块用于获取数据库的层级结构,并为查询条件管理模块、模板管理模块提供数据库的结构信息,
所述查询条件管理模块用于将数据库的层级结构在前端展示,提供在线指定数据查询条件功能,供用户指定报告数据,并为模板管理模块提供模板制作时的代码占位符,同时为报告管理模块提供报告生成时的数据,
所述模板管理模块用于提供在线制作模板功能,并根据网页标签生成模板文件,并为报告管理模块提供报告生成时的模板文件,
所述文件解析模块用于保存用户上传的模板文件,将上传的模板文件替换已有的模板文件,并更新数据库中的模板文件,同时为模板管理模块提供最新的模板文件,
所述报告管理模块用于根据模板文件生成报告。


2.如权利要求1所述的基于在线创建模板和在线指定数据的报告生成系统,其特征在于,所述用户管理模块包括用户的登录、注销功能,登录功能用于记录当前使用者的状态,当用户登录以后,才能使用系统的其它模块,未登录则无法使用,同时,其它模块记录当前操作的用户,方便以后查看,注销功能用于退出当前的用户账号,方便用户保密数据或者切换账号。


3.如权利要求1所述的基于在线创建模板和在线指定数据的报告生成系统,其特征在于,所述数据库解析模块包括:数据库结构获取功能、数据库结构存储功能和触发更新功能,
数据库结构获取功能用于读取配置文件中的数据库的地址、用户名、密码,并根据读取的数据连接到数据库,然后通过java.sql包获取数据库的层级结构,数据库的层级结构包括:数据库的表名、表中的所有字段,
数据库结构存储功能用于将数据库结构获取功能获取的数据转换成“表-字段”的树形结构,并存储到Json文件中,
触发更新功能用于在数据库解析模块收到更新指令时,调用数据库结构获取功能更新数据。


4.如权利要求1所述的基于在线创建模板和在线指定数据的报告生成系统,其特征在于,所述查询条件管理模块包括:数据库结构解析器、数据获取器、查询条件增加、删除、修改、保存功能和查询条件测试功能,
数据库结构解析器用于读取数据库解析模块生成的数据库结构文件,然后将所有的表和字段展示在网页上供用户选择,
数据获取器用于根据页面上的数据查询条件查询数据库获得数据,然后将获得的数据提供给模板管理模块和报告管理模块,
查询条件保存、增加、删除、修改功能是指查询条件管理模块会保存每个模板的查询条件,并提供查询条件的增加、删除和修改功能,
查询条件测试功能用于测试单个或所有查询条件,保证保存到数据库中的查询条件都是正确的。


5.如权利要求1所述的基于在线创建模板和在线指定数据的报告生成系统,其特征在于,所述模板管理模块包括:查看模板详情功能、添加模板功能、更新模板功能、生成模板文件功能和下载模板功能,
查看模板详情功能用于在网页上查看模板的内容,包括文字内容、代码占位符、图片,
添加模板功能用于添加新的模板,将在线模板的所有内容保存到数据库中,以便下次使用,
更新模板功能用于对已有的模板进行更新,
生成模板文件功能用于将在线制作的模板转化成Word或者Excel文件,然后将Word或者Excel文件提供给报告管理模块,
下载模板功能用于给用户提供模板下载。


6.如权利要求1所述的基于在线创建模板和在线指定数据的报告生成系统,其特征在于,所述报告管理模块包括:报告生成功能、删除报告功能和下载报告功能,
报告生成功能用于将查询条件管理模块获得的数据和模板管理模块制作的模板文件整合在一起,采取同名替换的方式,用数据替换模板中的代码占位符,最终生成报告文件,并将报告文件信息保存到数据库中,
删除报告功能用于删除多余的报告,
下载报告功能用于下载已经生成的报告。


7.一种基于在线创建模板和在线指定数据的报告生成方法,应用上述权利要求1-6任一权利要求所述的报告生成系统,其特征在于,包括以下步骤:
步骤1、前期准备:通过数据库解析模块获取数据库的层级结构,将其转换成“表-字段”的树形结构,并存储到Json文件中,同时利用React语言为前端提供数据;
步骤2、模板设计:查询条件管理模块将数据库的层级结构在前端进行展示,提供在线指定数据查询条件的功能,并将查询结果提供给模板管理模块使用,然后模板管理模块在线制作模板,为动态内容添加占位符,为静态内容添加文字和图片;
步骤3、生成模板:模板管理模块利用POI技术将网页标签转换成模板文件,同时通过文件解析模块保存上传添加了样式的模板来替换没有样式的模板;
步骤4、生成报告:报告管理模块将执行查询条件获取到的数据利用EasyPoi技术,同名替换模板文件中的占位符,最终生成报告。


8.如权利要求7所述的基于在线创建模板和在线指定数据的报告生成方法,其特征在于,步骤1中,数据库解析模块获取数据库的层级结构的具体步骤为:
数据库解析模...

【专利技术属性】
技术研发人员:姜华边红丽符瑜慧杨娟齐敬佩方维张艳梅
申请(专利权)人:北京尊冠科技有限公司北京邮电大学
类型:发明
国别省市:北京;11

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

1