CN105468571B - 一种用于自动生成报告的方法及装置 - Google Patents

一种用于自动生成报告的方法及装置 Download PDF

Info

Publication number
CN105468571B
CN105468571B CN201510807386.1A CN201510807386A CN105468571B CN 105468571 B CN105468571 B CN 105468571B CN 201510807386 A CN201510807386 A CN 201510807386A CN 105468571 B CN105468571 B CN 105468571B
Authority
CN
China
Prior art keywords
file
format
destination
type
default template
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.)
Active
Application number
CN201510807386.1A
Other languages
English (en)
Other versions
CN105468571A (zh
Inventor
李振华
梅红波
李旸
何彪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China University of Geosciences
Original Assignee
China University of Geosciences
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201510807386.1A priority Critical patent/CN105468571B/zh
Publication of CN105468571A publication Critical patent/CN105468571A/zh
Application granted granted Critical
Publication of CN105468571B publication Critical patent/CN105468571B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明公开了一种用于自动生成报告的方法及装置,通过执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件,将第一类型文件翻译成第二类型文件之后,对第二类型文件以及其相关文件组成数据包压缩,并运行压缩后的文件,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告,采用本发明提供的方法,通过执行预设模板中的脚本代码对预设模板进行解析,能够实现自动生成目标文件格式的报告,整个流程中不需要用户参与操作,使生成报告的操作简单,快速并且不容易出错。

Description

一种用于自动生成报告的方法及装置
技术领域
本发明涉及办公自动化技术领域,特别是涉及一种用于自动生成报告的方法及装置。
背景技术
随着计算机技术的普及,办公自动化越来越广泛的被应用到人们的工作和生活中。在工作和生活中,人们在完成一项任务时,通常会将工作的基本情况、工作中取得的经验教训、存在的问题以及今后工作设想等,通过做报告的方式反应给领导以及同事,以便今后更好地工作和进步。
Word作为办公自动化工具中的一个文档编辑工具,在工作和学习中得到广泛应用。在撰写各类报告的时候,很多用户都习惯制作成企业内部所惯用的报告或报表格式。使用Word制作报告时,如果要处理的报告的文本内容复杂、比较多时,仅依靠人工进行处理,需要进行大量的查询、复制和粘贴工作不但繁琐、耗时、效率低下,而且容易出错,降低了报告的准确性。
发明内容
为解决现有技术中的缺陷,本发明提供了一种用于自动生成报告的方法,包括:
执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件,将第一类型文件翻译成第二类型文件;
将第二类型文件以及第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件;
运行压缩后的文件,获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告。
执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件,具体包括:
获取预设模板中的脚本代码,通过执行脚本代码的方式解析预设模板中的信息标签,得到目标内容属性信息,根据目标内容属性信息从数据库中获取目标内容,用目标内容替换预设模板中的信息标签,得到第一类型文件。
执行预设模板中的脚本代码,对预设模板进行解析,具体包括:
判断脚本代码的控制逻辑,如果是选择逻辑,则从脚本代码中获取选择条件,根据选择条件对预设模板执行选择业务逻辑操作;如果是循环逻辑,则从脚本代码中获取循环次数和循环内容,根据循环次数和循环内容对预设模板执行循环业务逻辑操作。
将第一类型文件翻译成第二类型文件,具体包括:
将第一类型文件转换成用Java语言表达的中间文件,然后再将用Java语言表达的中间类型文件翻译成第二类型文件。
第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。
将第二类型文件以及第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件,具体包括:
获取第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对数据包压缩,得到压缩后的文件。
获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告,具体包括:
获取用户输入的目标文件格式,判断用户输入的目标文件格式是否与文书处理器兼容,是则将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告,具体包括:
读取预设的目标文件格式列表,从预设的目标文件格式列表中获取目标文件格式,将压缩后的文件按照目标文件格式进行发布生成目标文件格式的报告。
另一方面,本发明提供一种用于自动生成报告的装置,包括:
解析模块,用于执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件;
转换模块,用于将第一类型文件翻译成第二类型文件;
压缩模块,用于将第二类型文件以及第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件;
生成模块,用于运行压缩后的文件,获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告。
解析模块,具体用于获取预设模板中的脚本代码,通过执行脚本代码的方式解析预设模板中的信息标签,得到目标内容属性信息,根据目标内容属性信息从数据库中获取目标内容,用目标内容替换预设模板中的信息标签,得到第一类型文件。
解析模块,具体包括:
判断子模块,用于判断脚本代码的控制逻辑;
选择操作子模块,用于脚本代码的控制逻辑是选择逻辑时,从脚本代码中获取选择条件,根据选择条件对预设模板执行选择业务逻辑操作;
循环操作子模块,用于脚本代码的控制逻辑是循环逻辑时,从脚本代码中获取循环次数和循环内容,根据循环次数和循环内容对预设模板执行循环业务逻辑操作。
转换模块,具体用于将第一类型文件转换成用Java语言表达的中间文件,然后再将用Java语言表达的中间类型文件翻译成第二类型文件。
第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。
压缩模块,具体用于获取第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对数据包压缩,得到压缩后的文件。
生成模块,具体用于获取用户输入的目标文件格式,判断用户输入的目标文件格式是否与文书处理器兼容,是则将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
生成模块具体包括:
读取子模块,用于读取预设的目标文件格式列表,从预设的目标文件格式列表中获取目标文件格式;
生成子模块,用于将压缩后的文件按照目标文件格式进行发布生成目标文件格式的报告。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
通过本发明,可以通过执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件,在本发明中通过执行脚本代码对预设模板进行解析,能够自动使预设模板按照脚本代码中的业务逻辑转换成第一类型文件,不必按照传统创建报告的方式对相同的内容反复的进行复制和粘贴操作,使将预设模板转换成第一类型文件的操作简单、效率高并且出错率低。将第一类型文件翻译成第二类型文件之后,对第二类型文件以及其相关文件组成数据包压缩,并运行压缩后的文件,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告,采用本发明提供的方法,通过执行预设模板中的脚本代码对预设模板进行解析,能够实现自动生成目标文件格式的报告,整个流程中不需要用户参与操作,使生成报告的操作简单,快速并且不容易出错。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种用于自动生成报告的方法流程图;
图2是本发明实施例提供的一种用于自动生成报告的装置框图;
图3是本发明实施例提供的解析模块的示意图;
图4是本发明实施例提供的生成模块的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供一种用于自动生成报告的方法,具体如图1所示,包括:
步骤101:执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件,将第一类型文件翻译成第二类型文件;
具体的,获取预设模板中的脚本代码,通过执行脚本代码的方式解析预设模板中的信息标签,得到目标内容属性信息,根据目标内容属性信息从数据库中获取目标内容,用目标内容替换预设模板中的信息标签,得到第一类型文件。
本实施例中,执行预设模板中的脚本代码,对预设模板进行解析,具体包括:
判断脚本代码的控制逻辑,如果是选择逻辑,则从脚本代码中获取选择条件,根据选择条件对预设模板执行选择业务逻辑操作;如果是循环逻辑,则从脚本代码中获取循环次数和循环内容,根据循环次数和循环内容对预设模板执行循环业务逻辑操作。
将第一类型文件翻译成第二类型文件,具体包括:将第一类型文件转换成用Java语言表达的中间文件,然后再将用Java语言表达的中间类型文件翻译成第二类型文件。本实施例中,第一类型文件可以为超级文本标记语言类型的文件,也可以为其他类型的制作文本语言类型的文件。第二类型文件为open XML类型的文件。其中,第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。通过将第一类型文件转换成为Java语言表达的中间类型文件,再将中间类型文件转换成第二类型文件的方式,使第二类型文件中各部分的排版格式一致。
本实施例中,在本步骤之前还包括,设置预设模版;具体的,根据报告的内容要求制定具有信息标签的内容模板,并且向内容模板中添加控制信息标签的脚本代码,通过执行脚本代码能够执行信息标签,进而实现对预设模板的解析。其中,报告内容预存在数据库中。
进一步的,信息标签中具体包括该信息标签的标签名,参数属性名以及与该参数属性名对应的属性值。其中,信息标签中可以有一个或者多个参数,即信息标签中有一个或者多个参数属性名和参数属性名对应的属性值。根据报告内容要求设置信息标签中参数对应的脚本代码。其中,脚本代码包括选择逻辑的脚本代码和循环逻辑的脚本代码。选择逻辑的脚本代码中包括选择条件,以及与该选择条件对应的对预设模板要执行的选择业务逻辑操作。循环逻辑的脚本代码中包括循环次数和循环内容。
在需要发布报告时,只需要采用预设模板即可将数据库中的报告内容自动录入预设模板中,以此完成报告的生成,此过程中,操作简单,生成报告的速度快、效率高,并且不容易出错。
步骤102:将第二类型文件以及第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件;
具体的,获取第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对数据包压缩,得到压缩后的文件。
本实施例中,将第二类型文件对应的报告内容以及相应的资源文件、配置文件组成数据包,将数据包按照制定格式压缩,得到第一预设格式的压缩后的文件。
步骤103:运行压缩后的文件,获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告。
具体的,获取用户输入的目标文件格式,判断用户输入的目标文件格式是否与文书处理器兼容,是则将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
本实施例中,还可以读取预设的目标文件格式列表,从预设的目标文件格式列表中获取目标文件格式,将压缩后的文件按照目标文件格式进行发布生成目标文件格式的报告。
针对上述实施例提供的技术方案,现进行举例说明:
首先,根据文档的内容要求插入信息标签制定内容模板。信息标签以“${tagName(arg1:data1,arg2:data2,…)}”形式进行书写;整个标签是以一个美元符号“$”开头;标签体写在大括号“{}”中;tagName代表标签的名字;标签名后面的小括号“()”中若干个以“,”间隔的键值对代表若干个属性参数;每个键值对的“:”前书写该参数的属性名,“:”后书写该参数的属性值。对于一些特定语法要求的部分,用脚本语言控制。该脚本语言完全面向过程,控制文档的选择逻辑、循环逻辑两种方式。其中,选择逻辑方式使用<c:if condition=”…”></c:if><c:else></c:else>的成对标签,“if”首尾标签中间填入需要根据条件书写的内容,condition后填入执行的条件,“else”属于选填标签。循环逻辑使用<c:repeatcount=”…”></c:repeat>成对标签,首尾标签中间填入需要循环书写的内容,count后填入需要循环的次数。
根据对生成的内容模板进行排版,其中排版格式均是用HTML语言定义的。HTML文档包括3个部分:一行版本说明、一个声明文件头部分、一个文档主体部分。HTML文档虽然有其特定的文档编写规范,而且内容也相对繁杂,但是国内外都有很多开源的可视化HTML文档编辑器,使用这些工具可以在完全不懂得HTML语言的情况下对HTML文档进行排版编辑。
首先是执行排版过后的内容模板中的脚本语句,生成一个完全以顺序方式行文的不含脚本语句的内容模板;再根据信息标签的对应规则和标签中的参数查询数据库,从中找出对应信息替换原始标签,生成一个静态的html文件。例如模板中如果出现“<c:ifcondition=”${weather(year:2000,month:1,date:1)}=晴”>今日适宜出行</c:if><c:else>今日不宜出行</c:else>”语句,首先程序识别该语句为一条分支语句,然后触发一条内容为“select weather form weather_table where year=2000and month=1and data=1”的SQL语句查询数据库(假定数据库中有一张名为weather_table的表),然后将查询出来的内容替换掉原来的信息标签,如果查询出来的内容为“晴”,整个语句将翻译成“今日适宜出行”,否则翻译成“今日不宜出行”。
将上述HTML文档通过一个Java实体类过度转换成一个OpenXML文档,该实体类作为一个统一标准,协调两种排版格式,实现一致性。
将这个OpenXML文档的内容及其相应的资源文件、配置文件整合成一个docx类型的文档。优选的,docx文档是按OPC(Open Packaging Conventions)公约进行封装的,而OPC公约推荐用ZIP格式对文档实例进行打包。从逻辑上来讲,一个OpenXML文档就是一个OPC包,这个包又是一套完整的各部分的集合。每个部分都由一个不区分大小写的路径名,这个路径名是一个形如“/pres/slides/slide1.xml”用左斜杠“/”分割段名的字符串;且每个部分都有其特定的内容类型。从物理结构来说,通过OPC公约封装的ZIP文件也就是一个OPC包,每一个ZIP文件项都对应包中的一部分,且路径名也和包中该部分的路径名相一致。在这个OPC包中,“/[Content_Types].xml”被用来定义各个部分的内容类。OPC包中的每个部分也包含了和其他部分以及外部资源的明确映射关系。这一系列的映射关系都被存放在relationships部分。所有的映射关系部分都以“…/_rels/….rels”的形式命名;如一个部分的路径名为“/a/b/c.xml”,那么它的映射关系路径名则为“/a/b/_rels/c.xml.rels”。整个包中最主要的文档内容是被记录在document部分里,在这个部分用“/document.xml”这个文件记录文档的主要内容。同一个目录下,通过ZIP格式编码压缩成以docx为后缀的文件。将这三个文件用ZIP格式压缩成一个ZIP包,再将这个ZIP包得扩展名修改成docx便是一个标准的docx文件。
用MS-Word(2007以上版本)打开这个docx文件,分别另存为各种格式(pdf、doc、rtf等)可供发布的报告文档。
另一方面,本实施例提供一种用于自动生成报告的装置,如图2所示,包括:
解析模块201,用于执行预设模板中的脚本代码,对预设模板进行解析,使预设模板转换成第一类型文件;
本实施例中,解析模块201,具体用于获取预设模板中的脚本代码,通过执行脚本代码的方式解析预设模板中的信息标签,得到目标内容属性信息,根据目标内容属性信息从数据库中获取目标内容,用目标内容替换预设模板中的信息标签,得到第一类型文件。
具体的,解析模块201,如图3所示,包括:
判断子模块2011,用于判断脚本代码的控制逻辑;
选择操作子模块2012,用于脚本代码的控制逻辑是选择逻辑时,从脚本代码中获取选择条件,根据选择条件对预设模板执行选择业务逻辑操作;
循环操作子模块2013,用于脚本代码的控制逻辑是循环逻辑时,从脚本代码中获取循环次数和循环内容,根据循环次数和循环内容对预设模板执行循环业务逻辑操作。
转换模块202,用于将第一类型文件翻译成第二类型文件;
本实施例中,转换模块202,具体用于将第一类型文件转换成用Java语言表达的中间文件,然后再将用Java语言表达的中间类型文件翻译成第二类型文件。
其中,第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。
压缩模块203,用于将第二类型文件以及第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件;
本实施例中,压缩模块203,具体用于获取第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对数据包压缩,得到压缩后的文件。
生成模块204,用于运行压缩后的文件,获取目标文件格式,将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告。
本实施例中,生成模块204,具体用于获取用户输入的目标文件格式,判断用户输入的目标文件格式是否与文书处理器兼容,是则将压缩后的文件按照目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
具体的,如图4所示,生成模块204具体包括:
读取子模块2041,用于读取预设的目标文件格式列表,从预设的目标文件格式列表中获取目标文件格式;
生成子模块2042,用于将压缩后的文件按照目标文件格式进行发布生成目标文件格式的报告。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本发明所提供的一种用于自动生成报告的方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种用于自动生成报告的方法,其特征在于,包括:
设置预设模版,其包括:根据报告的内容要求制定具有信息标签的内容模板,并且向内容模板中添加控制信息标签的脚本代码,所述信息标签中包括该信息标签的标签名,参数属性名以及与该参数属性名对应的属性值;
执行预设模板中的脚本代码,对所述预设模板进行解析,使所述预设模板转换成第一类型文件,将所述第一类型文件翻译成第二类型文件,所述第一类型文件为超级文本标记语言类型的文件,所述第二类型文件为open XML类型的文件;
其中,所述执行预设模板中的脚本代码,对所述预设模板进行解析,使所述预设模板转换成第一类型文件,包括:获取所述预设模板中的脚本代码,通过执行所述脚本代码的方式解析所述预设模板中的信息标签,得到目标内容属性信息,根据所述目标内容属性信息从数据库中获取目标内容,用所述目标内容替换所述预设模板中的所述信息标签,得到第一类型文件;
其中,所述执行预设模板中的脚本代码,对所述预设模板进行解析,包括:判断所述脚本代码的控制逻辑,如果是选择逻辑,则从所述脚本代码中获取选择条件,根据所述选择条件对所述预设模板执行选择业务逻辑操作;如果是循环逻辑,则从所述脚本代码中获取循环次数和循环内容,根据所述循环次数和所述循环内容对所述预设模板执行循环业务逻辑操作;
将所述第二类型文件以及所述第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件,所述压缩后的文件为ZIP格式;
运行所述压缩后的文件,获取目标文件格式,将所述压缩后的文件按照所述目标文件格式进行发布,生成所述目标文件格式的报告。
2.如权利要求1所述的方法,其特征在于,所述将所述第一类型文件翻译成第二类型文件,具体包括:
将所述第一类型文件转换成用Java语言表达的中间文件,然后再将所述用Java语言表达的中间类型文件翻译成第二类型文件。
3.如权利要求1或2所述的方法,其特征在于,所述第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。
4.如权利要求3所述的方法,其特征在于,所述将所述第二类型文件以及所述第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件,具体包括:
获取所述第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将所述第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对所述数据包压缩,得到压缩后的文件。
5.如权利要求1所述的方法,其特征在于,所述获取目标文件格式,将所述压缩后的文件按照所述目标文件格式进行发布,生成所述目标文件格式的报告,具体包括:
获取用户输入的目标文件格式,判断所述用户输入的目标文件格式是否与文书处理器兼容,是则将所述压缩后的文件按照所述目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
6.如权利要求1所述的方法,其特征在于,所述获取目标文件格式,将所述压缩后的文件按照所述目标文件格式进行发布,生成所述目标文件格式的报告,具体包括:
读取预设的目标文件格式列表,从所述预设的目标文件格式列表中获取目标文件格式,将所述压缩后的文件按照所述目标文件格式进行发布生成目标文件格式的报告。
7.一种用于自动生成报告的装置,其特征在于,包括:
解析模块,用于设置预设模版,其包括:根据报告的内容要求制定具有信息标签的内容模板,并且向内容模板中添加控制信息标签的脚本代码,所述信息标签中包括该信息标签的标签名,参数属性名以及与该参数属性名对应的属性值;执行预设模板中的脚本代码,对所述预设模板进行解析,使所述预设模板转换成第一类型文件;
其中,所述解析模块,具体用于获取所述预设模板中的脚本代码,通过执行所述脚本代码的方式解析所述预设模板中的信息标签,得到目标内容属性信息,根据所述目标内容属性信息从数据库中获取目标内容,用所述目标内容替换所述预设模板中的所述信息标签,得到第一类型文件;
其中,所述解析模块,包括:判断子模块,用于判断所述脚本代码的控制逻辑;选择操作子模块,用于所述脚本代码的控制逻辑是选择逻辑时,从所述脚本代码中获取选择条件,根据所述选择条件对所述预设模板执行选择业务逻辑操作;循环操作子模块,用于所述脚本代码的控制逻辑是循环逻辑时,从所述脚本代码中获取循环次数和循环内容,根据所述循环次数和所述循环内容对所述预设模板执行循环业务逻辑操作;
转换模块,用于将所述第一类型文件翻译成第二类型文件,所述第一类型文件为超级文本标记语言类型的文件,所述第二类型文件为open XML类型的文件;
压缩模块,用于将所述第二类型文件以及所述第二类型文件对应的资源文件以及配置文件组成数据包进行压缩,得到压缩后的文件,所述压缩后的文件为ZIP格式;
生成模块,用于运行所述压缩后的文件,获取目标文件格式,将所述压缩后的文件按照所述目标文件格式进行发布,生成所述目标文件格式的报告。
8.如权利要求7所述的装置,其特征在于,
所述转换模块,具体用于将所述第一类型文件转换成用Java语言表达的中间文件,然后再将所述用Java语言表达的中间类型文件翻译成第二类型文件。
9.如权利要求7或8所述的装置,其特征在于,所述第二类型文件具体包括若干个组成部分,每个组成部分对应一个资源文件,以及配置文件。
10.如权利要求9所述的装置,其特征在于,
所述压缩模块,具体用于获取所述第二类型文件中的各个组成部分,对每个组成部分获取对应的资源文件和配置文件,将所述第二类型文件中的每个组成部分及其对应的资源文件和配置文件放置在同一地址中组成数据包,对所述数据包压缩,得到压缩后的文件。
11.如权利要求7所述的装置,其特征在于,
所述生成模块,具体用于获取用户输入的目标文件格式,判断所述用户输入的目标文件格式是否与文书处理器兼容,是则将所述压缩后的文件按照所述目标文件格式进行发布,生成目标文件格式的报告;否则提示不支持该类型的格式。
12.如权利要求7所述的装置,其特征在于,所述生成模块具体包括:
读取子模块,用于读取预设的目标文件格式列表,从所述预设的目标文件格式列表中获取目标文件格式;
生成子模块,用于将所述压缩后的文件按照所述目标文件格式进行发布生成目标文件格式的报告。
CN201510807386.1A 2015-11-19 2015-11-19 一种用于自动生成报告的方法及装置 Active CN105468571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510807386.1A CN105468571B (zh) 2015-11-19 2015-11-19 一种用于自动生成报告的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510807386.1A CN105468571B (zh) 2015-11-19 2015-11-19 一种用于自动生成报告的方法及装置

Publications (2)

Publication Number Publication Date
CN105468571A CN105468571A (zh) 2016-04-06
CN105468571B true CN105468571B (zh) 2019-04-23

Family

ID=55606290

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510807386.1A Active CN105468571B (zh) 2015-11-19 2015-11-19 一种用于自动生成报告的方法及装置

Country Status (1)

Country Link
CN (1) CN105468571B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106951270B (zh) * 2017-04-06 2023-04-07 腾讯科技(深圳)有限公司 一种代码处理方法、系统及服务器
CN109684324B (zh) * 2017-10-18 2023-05-05 阿里巴巴集团控股有限公司 一种数据处理方法及其相关产品
CN108492172A (zh) * 2018-03-13 2018-09-04 四川享宇金信金融服务外包有限公司 贷款材料打包方法以及装置
CN116861878A (zh) * 2018-04-03 2023-10-10 福建榕基软件工程有限公司 一种结合输出形式的自定义报表生成方法与终端
CN108959626B (zh) * 2018-07-23 2023-06-13 四川省烟草公司成都市公司 一种跨平台异构数据简报高效自动生成方法
CN109325217B (zh) * 2018-09-19 2023-04-18 深圳市元征科技股份有限公司 一种文件转换方法、系统、装置及计算机可读存储介质
CN113343659B (zh) * 2021-05-24 2023-03-31 东风柳州汽车有限公司 分析报告生成方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408892A (zh) * 2008-11-21 2009-04-15 上海全景数字技术有限公司 一种网页生成方法和装置
CN101763255A (zh) * 2008-12-23 2010-06-30 中国移动通信集团公司 一种专用界面工具的格式转换方法及装置
CN101770495A (zh) * 2009-01-04 2010-07-07 英业达股份有限公司 动态网页生成系统及其方法
CN101887364A (zh) * 2010-04-28 2010-11-17 北京星网锐捷网络技术有限公司 帮助文档的生成方法和装置
CN103530407A (zh) * 2013-10-25 2014-01-22 中国农业银行股份有限公司 一种富文本文档的生成方法与装置
CN104932866A (zh) * 2014-03-17 2015-09-23 无锡天脉聚源传媒科技有限公司 一种生成自定义xml文件的系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408892A (zh) * 2008-11-21 2009-04-15 上海全景数字技术有限公司 一种网页生成方法和装置
CN101763255A (zh) * 2008-12-23 2010-06-30 中国移动通信集团公司 一种专用界面工具的格式转换方法及装置
CN101770495A (zh) * 2009-01-04 2010-07-07 英业达股份有限公司 动态网页生成系统及其方法
CN101887364A (zh) * 2010-04-28 2010-11-17 北京星网锐捷网络技术有限公司 帮助文档的生成方法和装置
CN103530407A (zh) * 2013-10-25 2014-01-22 中国农业银行股份有限公司 一种富文本文档的生成方法与装置
CN104932866A (zh) * 2014-03-17 2015-09-23 无锡天脉聚源传媒科技有限公司 一种生成自定义xml文件的系统及方法

Also Published As

Publication number Publication date
CN105468571A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
CN105468571B (zh) 一种用于自动生成报告的方法及装置
CN107544806B (zh) 可视化表单绘制方法
US7979793B2 (en) Graphical creation of a document conversion template
US6442714B1 (en) Web-based integrated testing and reporting system
CN108762743A (zh) 一种数据表操作代码生成方法及装置
CN104239073B (zh) 一种数据维护系统快速原型开发系统及方法
US5652899A (en) Software understanding aid for generating and displaying simiplified code flow paths with respect to target code statements
CN101493839A (zh) 一种通用测试文档的生成方法
CN106469140A (zh) 一种报表生成系统及其方法
US20030037076A1 (en) Method, computer program and system for style sheet generation
CN101025738A (zh) 一种免模板动态网站生成方法
CN101271390A (zh) 修改xml数据结构的软件、系统和方法
US9817887B2 (en) Universal text representation with import/export support for various document formats
US10185472B2 (en) Method for providing a user interface, computer system and computer program product
CN107506190A (zh) 基于Spring框架的XML文件修改方法及装置
CN103309849B (zh) 一种基于OpenXML的docx文档创建和修改方法
CN110321539A (zh) 一种特种设备监管平台用报表工具
CN109086985B (zh) 面向航天器总装的专业测试信息管理系统
CN111311461B (zh) 基于b-s的结构化动态病历表单的编辑器及生成方法
CN108536660A (zh) 一种自定义报表的生成方法及终端
CN106610928A (zh) 一种文档对象模型及电子病历编辑器
CN105988983A (zh) 在Excel模板文件中加标记的报表输出方法
CN115579096A (zh) 一种针对药物警戒e2b r3标准报告的自动生成与解析验证方法、系统及存储介质
CN110196965B (zh) XML文件转换Word文件的方法及装置
CN108170422A (zh) 一种基于Word批注的报表生成方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20160406

Assignee: Qianliyan environmental monitoring Co.,Ltd.

Assignor: CHINA University OF GEOSCIENCES (WUHAN CITY)

Contract record no.: X2023420000003

Denomination of invention: A method and device for automatically generating reports

Granted publication date: 20190423

License type: Common License

Record date: 20230106

EE01 Entry into force of recordation of patent licensing contract