一种用于实现电子文档自动生成的系统和方法

文档序号:6539382阅读:195来源:国知局
专利名称:一种用于实现电子文档自动生成的系统和方法
技术领域
本发明涉及一种电子文档生成的方法,尤其是在字处理软件中实现文档自动生成的方法。
二.
背景技术
电子文档生成软件,以微软公司的Office、金山公司的WPS、以及永中公司的永中Office为代表,它们以字处理为主。另一些则以图形处理为主、字处理为辅的软件如AutoDesk公司的AutoCAD等软件。这些软件可以实现文字、表格、图片的处理。在这些软件中,均提供了大量的分类操作命令功能模块,用于进行文字、表格、图片等的处理。例如文件类命令中提供了“新建”“打开”、“保存”、“打印”等命令,编辑类命令中提供了“复制”、“粘贴”、“查找”、“替换”等命令。这些软件均是以电子文档模板为基础,软件使用者利用键盘、鼠标等输入装置,通过交互方式选取所需命令,对由模板生成的电子文档进行各种操作,实现电子文档建立、编辑和最终生成。这些软件也向用户提供了二次开发的工具,例如宏命令、脚本语言编程、Visual Basic语言编程、JAVA语言编程等。宏通常可实现比较简单的命令的组合,以实现某种操作的自动化。但如果要使得比较复杂的任务自动化,就需要使用二次开发工具进行编程。二次开发需要有专门的编程知识,有时对普通用户来说往往有较大难度。如果需要进行大量二次开发,一般需由专业人员进行,其周期将比较长,费用也较高。
三.

发明内容
本发明的目的是在于提供一种用于实现电子文档自动生成的系统和方法,尤其是在字处理软件中实现文档自动生成的方法。它可以使用户实现比宏命令更复杂的专业性任务而同时又无需进行大量的编程。
本发明的技术解决方案是1.程序系统提供、使用各类操作命令功能模块,实现文字、表格、图片等的处理,就象微软公司的Office、金山公司的WPS、以及永中公司的永中Office、AutoDesk公司的AutoCAD等图表及文字处理软件一样。
2.程序系统提供宏命令执行功能模块、二次开发编程语言功能模块,就象微软公司的Office、金山公司的WPS、以及永中公司的永中Office、AutoDesk公司的AutoCAD等图表及文字处理软件一样。
3.程序系统提供、使用电子文档模板功能模块,就象微软公司的Office、金山公司的WPS、以及永中公司的永中Office、AutoDesk公司的AutoCAD等图表及文字处理软件一样。
4.程序系统增加提供支持用户使用包含有知识的电子文档功能模块,包含有知识的电子文档其格式由程序系统所定义和提供,而其所含有的实现电子文档自动生成所需要的预定义信息,以及对由模板生成的电子文档进行编辑、修改操作的信息均由用户填写。图4展示了由程序系统提供的包含有知识的电子文档的一种格式的实例(联接管零件的加工工艺知识表),其中已由用户填写了预定义信息及文档编辑、修改操作的信息。
5.程序系统在操作命令功能模块集中增加提供预定义信息处理功能模块。预定义信息处理功能模块用于按照用户在包含有知识的电子文档中所载明的内容方式去获取指定的信息。人机交互方式获取信息、按指定位置文件获取信息、用户宏命令方式获取信息是程序系统提供的三种可选的预定义信息获取方式。
6.程序系统增加提供一知识分析解释功能模块,该知识分析解释功能模块用于对包含有知识的电子文档的内容进行阅读分析,识别出预定义信息和需对由模板生成的电子文档进行编辑、修改操作的信息,调用预定义信息处理功能模块获取预定义信息,调用编辑、修改操作命令功能模块完成对由模板生成的电子文档的编辑、修改操作,从而实现了电子文档的自动生成。
本发明更进一步的发展是包含有知识的电子文档其格式中提供了如下需由用户填写的项目条件项及操作信息项。操作信息项载明了需对由模板生成的电子文档进行何种操作的信息,条件项用于载明要进行这种操作必须满足的条件。只有满足了用户所填写的条件,该项操作才会被执行。操作信息项载明要进行何种文档操作。
图5展示了知识分析解释功能模块的作用机理。
由于在现有的图表及字处理系统所具有的三个功能模块(即本技术解决方案中的1、2、3条)的基础上又增加或镶入了三个功能模块(即本技术解决方案中的4、5、6条),从而使得系统的功能得到了扩展。在所增加的三个功能模块中,支持用户使用包含有知识的电子文档功能模块可使得用户以程序系统所指定的格式填写所需的预定义信息,以及需要进行某种编辑、修改的操作命令信息。预定义信息处理功能模块用来获取预定义的信息。知识分析解释功能模块是系统的核心功能模块,其工作机理是它对包含有知识的电子文档的内容进行逐条读取,并进行分析解释,识别出具体是何种操作命令,然后调用对应的操作命令功能模块去对由模板生成的电子文档进行相应的操作,最终实现电子文档的自动生成。通常知识分析解释功能模块首先读取的是预定义信息获取方式,然后调用预定义信息处理功能模块来获取用户预定义的信息。接下来知识分析解释功能模块读取的是一系列的操作命令,这些操作命令有的附带条件项,知识分析解释功能模块首先进行判断条件项是否成立,如果是成立的就调用操作命令对由模板生成的电子文档进行指定的操作,使得文档得到修改,否则就不执行操作。
程序系统还通过提供表达式处理功能模块,对包含有知识的电子文档中所出现的条件信息进行处理。其机制是知识分析解释功能模块读取条件信息表达式+运算比较符+表达式,调用表达式处理功能模块对条件信息进行处理,判断条件是否成立,以确定是否需要执行相应的操作。表达式处理功能模块首先分析运算比较符是数学运算符、还是逻辑运算符,然后按不同的方式对两端的表达式进行不同处理,然后确定条件是否成立,将结果回传给知识分析解释功能模块。
本发明的第二个发展是程序系统支持用户对电子文档模板的参数化。图3展示了一种由用户自行设计的参数化电子文档模板实例。用户可按需要将电子文档模板中的变化部分设定为参数,程序系统按照用户在包含有知识的电子文档中所载明操作命令,对由模板生成的电子文档中的参数进行处理,例如进行参数替换操作等。
本发明的第三个发展是程序系统还提供一功能模块以识别用户自行开发的宏命令。用户可将宏命令等同于程序系统提供的操作命令一样进行使用。它可以是这样实现的程序系统规定用户宏命令的名称必须以系统约定的词段开头,这样知识分析解释功能模块在读取包含有知识的电子文档中所载明操作命令时,就能够识别出该命令是用户宏命令,从而去调用程序系统内部的宏命令执行功能模块,实现用宏命令对电子文档的操作。
从图3、图4可以看出,本发明中所涉及的参数化电子文档模板、包含有知识的电子文档,其设计或填写比起编程语言要直观且容易得多。
四.


图1是CAPP工具系统的总体框架结构图2是需进行工艺设计的零件结构示意图,名称为联接管图3是工艺文档模板(即电子文档模板)图4是联接管零件的加工工艺知识表(即包含有知识的电子文档)图5是知识分析解释功能模块的作用机理图6展示了通过采用本发明所构成的技术解决方案后,实现电子文档自动生成所采用的四个方法步骤。
图7是电子文档自动生成的系统框架图五.具体实施方式
下面,提供一个包含了上述技术解决方案的较好的实施例,该实施例仅仅用来进一步说明该技术解决方案的机理和效果,但必须指出的是,本发明的技术解决方案并不局限于该实施例。
本实施例是一个基于上述技术解决方案的计算机辅助工艺设计(CAPP)工具系统。工艺设计的主要任务是依据产品信息和工艺环境信息,对零件进行工艺设计,生成电子工艺文档,然后打印输出。一个企业的产品结构通常是相对稳定的,但也存在着一定程度的变化。例如产品的基本外形结构可能不变,但尺寸大小可能经常变化。由于工艺设计的复杂性,每一次的变化都有可能引起工艺的较大变化。因此工艺设计的工作量大,经验性强。工艺设计在很大程度上要依赖于专业工艺人员的经验。本实施例选用现有的微软公司的Office中的WORD字处理软件作为技术平台,在WORD字处理软件原有三大功能模块(电子文档模板功能模块、操作命令功能模块、宏命令执行及二次开发编程语言功能模块)基础上,通过在该软件平台上增加支持用户使用包含有知识的电子文档功能模块、预定义信息处理功能模块、知识分析解释功能模块,来实现电子工艺文档的自动生成。
该系统总体结构如图1所示。系统由四部分构成。分别是CAPP核心模块一知识分析解释器、CAPP软件支撑平台一图表及文字编辑处理器WORD、CAPP辅助模块、CAPP外部环境一产品结构原始模型。系统在WINDOWS资源管理器及Word支持下,由用户自行创建产品结构原始模型。用户可按照成组技术原理创建产品结构目录树。也可以按产品总装、部装、零件逐层展开,创建产品结构目录树。为了直观方便,每个零件的工艺模板都可以有一个与其零件相对应的零件结构示意图(该图形可以是*.bmp、*jpg、*.gif等文件),该示意图放在与同一产品结构目录树中,并由总控模块控制并显示出来。系统提供的辅助模块引导用户设计好零件的参数化工艺模板和相应的工艺知识表,把它们存于产品结构目录树内。进行工艺设计时,用户在总控模块的引导下,进入产品结构目录树,按产品结构目录树逐层展开查找,选取出合适的参数化工艺模板,然后总控模块自动把控制权交给知识分析解释器,知识分析解释器立即进入到工艺知识表中去读取相应知识,工艺知识表中的知识,通过知识分析解释器的分析解释,就按照用户的意愿先后对参数化工艺模板进行零件信息的获取、数值计算、参数替换、编辑修改等操作,最终形成新零件的工艺。
在WORD中,文档模板是可以重复使用的文档。对于一些需要重复使用的工艺文档,如工艺表格(图表)、典型工艺、实例工艺、半成品工艺(如只含有表头信息的工艺表格、其它不完整工艺等)、合成工艺(由若干相似零件复合而成的工艺)等,制作好后,将它保存为文档模板。使用时只需调用该模板,作为对该工艺进一步设计(二次设计)的基础。对于给定类型的零件,采用参数化设计思想,将工艺模板看作是由工艺表格、工序内容两部分组成,工艺表格本身可以被编辑,工序内容又可分为固定部分和变化部分,并将变化部分设为参数,从而使该工艺模板成为参数化文档模板(图3)。
工艺知识表是系统提供的一种表格式文档。它包含用于对参数化模板进行编辑修改操作的一系列知识,这些知识是基于产生式规则,并由用户(通常是工艺专家)填写到工艺知识表中。工艺知识表中的知识由条件(如果)部分和执行(那么)部分所组成。用户只需遵守一定的填写格式,并熟悉系统的各种文档操作指令,就可以很方便、直观的将工艺知识表达出来(图4)。
文档操作指令集是知识分析解释器下的一个分模块,是用于操作文档的一系列模块的集合。本CAPP工具系统采用Visual Basic为开发语言,将常用的文档操作指令制作成一个个的模块,并冠于相应的名称。常用的文档操作指令有以下几类1.文件操作类命令。如文件的打开、关闭、数据库的查询等。
2.文档读写类命令。如将指定文档内容读出来、写入指定文档内容、对文档中的表格进行操作等。
3.零件信息获取类命令。包括零件信息定义命令、零件信息输入命令。零件信息定义命令用于定义需要接收的零件信息,包括零件各方位的尺寸及粗糙度等信息。根据不同情况,本系统可有两种零件信息获取方式一种是自动搜索由CAD系统或其它系统如CAD/PDM/ERP等所生成的零件信息文件并自动获取,无需交互输入。另一种是通过可视化的交互式界面获取零件信息。
4.编辑、修改类命令。如插入工序图、参数替换、删除或添加某一工序内容、工序重排等。
5.用户自定义命令。本工具系统支持用户用VBA二次开发自己需要的各种命令,可直接在本系统中使用。假设用户有一个宏命令,知识分析解释器首先在工艺知识表中提取出这一宏命令,然后知识分析解释器把宏命令的名称传递给宏命令执行功能模块,启动宏命令的执行。
知识分析解释器负责对工艺知识表中的知识进行阅读、分析、解释,并转化为相应的操作指令,形成对相关工艺文档的操作。知识分析解释器主要由零件信息获取模块、表达式计算模块、文档操作指令集、用户自定义支持模块所组成。知识分析解释器对工艺知识表中的知识逐条进行阅读、分析,知识分析解释器首先分析所读到的每条知识的条件(如果)部分,对条件表达式两端进行运算比较,如果满足条件,就进一步分析执行(那么)部分,按照不同的操作指令调用文档操作指令中的相应的模块,执行相应的操作。例如零件信息定义命令记录了需要获取的零件信息参数,零件信息获取命令弹出了一个友好的获取零件信息的交互式界面,或者按用户指定的方式去自动搜寻零件信息文件,参数替换命令把参数化工艺文档中的参数替换为指定的内容,表达式计算命令自动完成各种工艺数据的计算并完成对参数化工艺文档中工艺参数的更新,工序调换命令将指定的工序进行对调,文件打开命令把指定路径的文件打开,单元格阅读命令把文件中某一表格的内容记录下来,单元格输入命令把所需的内容填写到指定的单元格,等等。知识分析解释器把工艺知识表中的知识转化为相应的操作指令,模拟工艺人员的思维模式对工艺文件进行修改、编辑,从而实现了CAPP的自动化、智能化。
图3所示为基于联接管零件(图2)的用户自定义参数化文档模板,图4为相应的联接管加工工艺知识表。在该联接管零件的参数化文档模板中,所有的待定参数均放在大括号{}内。本模板中的参数主要分三大类零件信息参数(如尺寸参数)和字符型工艺参数(如设备)、数值型工艺参数(待计算的工时参数)。在该联接管零件的工艺知识表中,主要有三类操作命令零件信息定义Defi()、参数修改替换Repl()、工艺数据计算Calc()。零件信息定义命令定义了参数化文档模板中的所有零件信息参数,参数修改替换命令包含了参数化文档模板中的所有可能有变化的字符型工艺参数,工艺数据计算命令设定了需要进行数值计算的工艺数据计算公式。系统运行时,知识分析解释器首先读取工艺知识表中零件信息定义命令,然后show(name=1)命令告知知识分析解释器采用人机交互方式获取零件信息,并将获取的零件信息输入到参数化文档模板中。接下来的Repl()命令和Calc()命令告知知识分析解释器在满足一定尺寸范围的前提下对参数化文档模板中的设备进行变更、余量进行修改、工时进行计算。当工艺知识表中的知识被阅读完成后,新零件的工艺就产生了。
在本实施例中,采用微软公司的Office中的WORD作为开发平台。WORD提供了电子文档模板功能、各类操作命令功能模块、也提供了宏命令、二次开发编程语言。在本CAPP工具系统中,工艺知识表就是本发明技术解决方案中所指的包含有知识的电子文档。工艺知识表中所填写的含有Defi的栏目,就是用户指定的预定义信息。工艺知识表中的show(name=1)命令就是起到了预定义信息处理功能模块的作用,该命令是包含在文档操作指令集中。参数化工艺文档模板实例,就是本发明技术解决方案中所指的由模板生成的电子文档。用户自定义命令支持模块,它与WORD内置的宏命令执行功能模块连接,构成了本发明技术解决方案中所指的宏命令执行功能模块,其作用机理是知识分析解释功能模块将其在包含有知识的电子文档中所获得的宏命令名称通过用户自定义命令支持分模块传送给WORD内置的宏命令执行功能模块,从而使WORD能够运行该宏命令。本CAPP工具系统中知识分析解释器起到了本发明技术解决方案中所指的知识分析解释功能模块的作用。知识分析解释器通过阅读分析工艺知识表中的知识,经过分析解释后调用系统的相关操作命令,从而对由参数化工艺文档模板生成的参数化工艺文档进行修改、编辑操作,实现了电子文档的自动生成。
该实施例的一个优点是实施例在本发明技术解决方案的基础上,还进一步支持了使用结构目录树,用于按层次结构存放一系列电子文档模板和与电子文档模板相对应的包含有知识的电子文档,以及示意图,其直观性将有助于增强用户对电子文档模板、包含有知识的电子文档所涉及主题的理解。这对于那些可能需要完成多种复杂任务的用户提供了方便。另外,CAPP系统提供的知识表设计维护、参数化模板设计维护等辅助功能模块,有利于方便用户以人机交互方式进行电子文档模板及包含有知识的电子文档的制作、编辑和修改。
另外需指出的是,实施例及本发明技术解决方案所提到的预定义信息和对电子文档模板进行编辑、修改操作的信息是包含在同一电子文档中的,但如果放置在所指定的不同电子文档中,只要让知识分析解释功能模块对指定的电子文档分别进行阅读、分析、解释,同样可以达到相同的技术效果。
还需指出的是构成本发明技术解决方案中的第2条,即宏命令执行功能模块、二次开发编程语言功能模块并不是必需的,如果不要求对用户自定义命令的支持或者进行二次开发编程,则只需由本发明技术解决方案中的1、3、4、5、6条,也能完成电子文档的自动生成。但是如果要充分发挥系统的动能,以供用户作少量的二次开发,则把第2条纳入到整个技术解决方案中是值得的。
权利要求
1.一种用于实现电子文档自动生成的系统和方法,其特征在于(1)程序系统提供、使用各类操作命令功能模块。(2)程序系统提供、使用电子文档模板功能模块。(3)程序系统提供支持用户使用包含有知识的电子文档功能模块。(4)程序系统提供预定义信息处理功能模块。(5)程序系统提供知识分析解释功能模块。
2.按照权利要求1所说的实现电子文档自动生成的系统和方法,其特征是程序系统还提供二次开发编程语言功能模块。
3.按照权利要求1所说的实现电子文档自动生成的系统和方法,其特征是电子文档的自动生成是通过下列过程步骤实现的(1)预先设计好参数化的电子文档模板及相对应的包含有知识的电子文档。(2)程序系统打开并读取包含有知识的电子文档中的知识。(3)程序系统分析知识的条件项和操作执行项,提取出满足条件项的操作执行项。(4)程序系统执行对由模板生成的参数化电子文档的编辑、修改操作。
4.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是所说的包含有知识的电子文档其格式中提供了如下需由用户填写的项目条件项及操作信息项。
5.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是所说的电子文档模板,程序系统支持用户对电子文档模板进行参数化设计。
6.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是所说的预定义信息和对电子文档模板进行编辑、修改操作的信息包含在同一电子文档,或者分储在不同的电子文档。
7.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是还提供表达式处理功能模块。
8.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是还支持使用结构目录树用于存放一系列电子文档模板和与电子文档模板相对应的包含有知识的电子文档,以及对应的示意图。
9.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是程序系统还提供宏命令执行功能模块。
10.按照权利要求1、2或3所说的实现电子文档自动生成的系统和方法,其特征是还提供辅助模块,用于供用户以人机交互方式进行电子文档模板及包含有知识的电子文档的制作、编辑和修改。
全文摘要
本发明提供了一种用于实现电子文档自动生成的系统和方法,尤其是在字处理软件中实现文档自动生成的方法。它通过在现有图表及字处理软件所具有的功能模块基础上,增加知识分析解释等三个功能模块,来实现文档的自动生成。它可以使用户实现比宏命令更复杂的专业性任务而同时又无需进行大量烦杂的、需由专业人员才能胜任的编程工作。它使电子文档的自动生成通过四个过程步骤得以完成由用户参与的参数化电子文档模板及知识文档的设计、程序系统对知识文档的读取、程序系统对知识文档的分析解释、程序系统生成目标文档。
文档编号G06F17/24GK1834954SQ200510054678
公开日2006年9月20日 申请日期2005年3月14日 优先权日2005年3月14日
发明者杨晓华 申请人:杨晓华
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1