一种生成自定义表单的方法和装置的制作方法

文档序号:6371920阅读:137来源:国知局
专利名称:一种生成自定义表单的方法和装置的制作方法
技术领域
本发明涉及计算机应用技术领域,具体涉及一种生成自定义表单的方法和装置。
背景技术
电子表单(登记簿)逐渐替代传统的纸质登记簿广泛应用于企业业务运营中。根据业务需求的不同,电子表单呈现出不同的格式。在现有的电子表单软件开发中,通常根据业务需求针对性开发固定格式的表单。但是固定的电子表单格式固定,其格式在软件开发时就已经设计完成,后续不能根据业务变化和需求来进行修改和定制。由于仅针对某一种固定格式的表单设计编码,结构死板、局限性大。每修改一个地方或者想使用一种新的表单,都必须修改源码或者从源码中重新添加一种表单模板, 修改使用均不灵活,可维护性差、维护成本高。由此,能够使客户自行对表单结构进行定义逐渐成为需求。中国专利申请CN101957747A公开了一种表单自定义的方法,其根据实体构建表单结构模型,根据表单结构构建表单存储模型和表单查询模型,根据表单结构模型构建表单索引模型这四个步骤创建表单。同时,中国专利申请CN101241434A也公开了一种表单自定义的方法,其采取封装WinForm控件的方式,提供集成表单设置工具,让用户通过控制控件来生产表格。上述的自定义表单的方法使用起来比较复杂,对使用者本身的技能要求比较高,要求使用者利用控件生成表单;没有灵活的权限控制和查询机制,同时对使用环境有一定的要求和限制,对自定义的表单缺少权限控制和管理,不利于实际使用。因此,亟需一种能够灵活地进行电子表单格式自定义的方法和装置。

发明内容
本发明的目的在于提供一种能够灵活地进行电子表单格式自定义的方法和装置。本发明公开了一种生成自定义表单的方法,包括新建表单模板信息,所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表;其中,所述表单信息表包括识别表单信息表的唯一标识、用于标识表单的表单标识、表单名称;字段信息表用于存储所有的字段信息,字段信息表包括字段信息表标识,用于标识字段的字段标识、字段名称、字段类型及字段类型标识;表单字段关系表用于表述字段与表单之间的关系,表单字段关系表包括表单标识和表单所包含字段的字段标识;字段类型表用于表述字段类型属性,字段类型表包括字段类型表标识、字段类型标识、字段类型名;所述字段类型子项信息表包括所述子项数据和对应的字段类型标识;特殊字段类型子项数据配置模块,用于根据用户输入创建特殊字段类型子项数据。其中,配置特殊字段类型子项数据将用户录入的特殊字段类型子项数据封装成实体保存到字段类型子项信息表并根据其对应的字段类型标识更新字段类型信息表;
将录入表单的信息封装到表单信息实体对象,并随机产生唯一的表单标识,提交到表单信息表;根据用户指令创建字段,定义字段名称、字段类型和字段信息标识,根据以上定义内容向字段信息表中插入新的字段信息,并向表单字段关系表中插入字段标识和与其对应的表单模板标识以使得字段信息与表单模板建立联系;根据表单模板生成表单实例,读取此表单模板的所有字段信息,生成相应的录入单元呈现在界面中形成登记表,供用户进行信息录入。其中,所述录入单元为供用户录入信息的呈现单元。其中,所述根据表单模板生成表单实例,读取此表单模板的所有字段信息,生成相应的录入单元呈现在界面中形成表单包括 在表单信息表中将表单状态标志设为“已生成表单”状态。根据表单标识,字段标识向数据源中插入一个表单表,所述表单表以表单信息表中对应的表单标识为表名;此表单表内部的所有字段以根据表单字段关系表查询获得的对应的字段信息表中对应的字段标识为列名;据用户选择的表单模板得到表单标识,通过多表联合查询或其它任何得到多表联合查询同等效果的组合方式得到此表单中的所有字段信息;据字段类型设置的字段的约束生成相应的录入单元呈现在界面中供用户录入信息使用。其中,所述方法还包括配置用户对于表单以及字段的新增或修改、查阅权限,在呈现表单时,据登录用户的权限,筛选出此用户有新增或修改、查阅权限的字段,从而选择性地向用户呈现字段。其中,所述方法在新建表单模板信息后还包括特殊字段类型子项数据配置模块,用于根据用户输入创建特殊字段类型子项数据。其中,配置特殊字段类型子项数据将用户录入的特殊字段类型子项数据封装成实体保存到字段类型子项信息表并根据其对应的字段类型标识更新字段类型信息表,所述字段类型子项信息表包括所述子项数据和对应的字段类型标识。其中,所述特殊字段类型包括多选一字段类型和多选多字段类型。本发明还公开了一种生成自定义表单的装置,包括模板创建模块,用于在数据源中新建表单模板信息,所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表;其中,所述表单信息表包括识别表单信息表的唯一标识、用于标识表单的表单标识、表单名称;字段信息表用于存储所有的字段信息,字段信息表包括字段信息表标识,用于标识字段的字段标识、字段名称、字段类型及字段类型标识;表单字段关系表用于表述字段与表单之间的关系,表单字段关系表包括表单标识和表单所包含字段的字段标识;字段类型表用于表述字段类型属性,字段类型表包括字段类型表标识、字段类型标识、字段类型名;所述字段类型子项信息表包括所述子项数据和对应的字段类型标识;特殊字段类型子项数据配置模块,用于根据用户输入创建特殊字段类型子项数据。
其中,配置特殊字段类型子项数据将用户录入的特殊字段类型子项数据封装成实体保存到字段类型子项信息表并根据其对应的字段类型标识更新字段类型信息表;表单定义模块,用于将录入的表单信息封装到表单信息实体对象,井随机产生唯一的表单标识,提交到表单信息表;字段定义模块,用于根据用户指令创建字段,定义字段名称、字段类型和字段信息标识,根据以上定义内容向字段信息表中插入新的字段信息,井向表单字段关系表中插入字段标识和与其对应的表单模板标识以使得字段信息与表单模板建立联系;表单生成模块,用于根据表单模板生成表单实例,读取此表单模板的所有字段信息,生成相应的录入単元呈现在界面中形成登记表,供用户进行信息录入。其中,所述录入单元为供用户录入信息的呈现单元。
其中,所述表单生成模块包括状态修改子模块,用于在表单信息表中将表单状态标志设为“已生成表单”状态。表单插入子模块,用于根据表单标识和字段标识插入一个表单表,所述表单表以表单信息表中对应的表单标识为表名;此表单表内部的所有字段以根据表单字段关系表查询获得的对应的字段信息表中对应的字段标识为列名;查询子模块,用于根据用户选择的表单模板得到表单标识,通过多表联合查询或其它任何得到多表联合查询同等效果的组合方式得到此表单中的所有字段信息;呈现子模块,用于根据字段类型设置的字段约束生成相应的录入単元呈现在界面中供用户录入信息使用。本发明的方法和装置通过利用数据库设置不同的数据库表,通过表单标识和字段标识以及字段类型标识将不同的数据库表整合联系起来,再通过分步编辑数据库表数据并根据相应的设定生成录入单元在界面呈现实现了表单的自定义功能,大大拓展了表单应用的范围和灵活性。


图I是本发明实施例的生成自定义表单的方法的流程图;图2是本发明实施例中数据库表的关系图。
具体实施例方式下面结合附图并通过具体实施方式
来进ー步说明本发明的技术方案。在本发明实施例中将数据存储方式以数据库为例说明,其仅为解释本发明的实施方式和原理,并非用于限制本发明的保护范围。本发明所述的表单包括Excel、XML文件、独立数据库文件等数据存储方式。图I是本发明实施例生成自定义表单的方法的流程图。如图I所示,所述方法包括步骤100、根据用户创建表单模板的指令在数据库中新建表单模板信息。所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表。新建表单模板信息的操作包括建立并初始化上述各数据库表,定义各数据库表中的主键、字段名称、字段类型、所占空间等,并确定主表与从表的关系。
其中,表单信息表用于记录所有表单的名称及相关信息。表单信息表中可包含识别该信息表的标识、用于标识某一表单的表单标识、表单名称、备注、创建时间、创建者、表单是否可见、表单是否已生成标志、以及用于在表单组中的组标识。字段信息表用于存储所有的字段信息。字段信息表包括字段信息表标识,用于标识字段的字段标识、字段名称、备注、创建时间、创建者、字段类型及字段类型标识。表单字段关系表用于表述字段与表单之间的关系。表单字段关系表包括表单字段关系表标识、表单标识和字段标识,根据表单字段关系表可以确定某一特定表单包含哪些字段。字段类型表用于表述字段类型属性。字段类型表包括字段类型表标识、字段类型标识、字段类型名、创建者和创建时间。在本发明的实施例中,所述字段类型包括但不限于文本框、日期类型、数字类型、多选一类型、多选多类型。字段类型对应的子项信息表用于限定对于多选一和多选多类型的子项内容。字段 类型子项信息表包括子项信息表标识、字段类型标识,其对应于字段类型表中的字段类型标识、子项名称、创建者和创建时间。各数据库表之间的关系如图2所示,根据表单信息表的表单标识可以确定该表单对应的表单字段关系表,表单字段关系表中具有与表单标识对应的多个字段的字段标识。根据字段标识即可找到对应的字段信息表中的此字段信息。其中,字段信息中的字段类型通过字段类型表以及其子表字段类型子项信息表定义。字段信息表与字段类型信息表以及字段类型子项信息表通过字段类型标识FIELDTYPE联系。步骤200、特殊字段类型子项数据配置模块,用于根据用户输入创建特殊字段类型子项数据。其中,配置特殊字段类型子项数据需要配置特殊字段类型的记事本数据,也即定义在自定义字段时需要用到的多选一、多选多等字段类型的子项基本数据。将用户录入的特殊字段类型子项数据封装成实体保存在字段类型信息表和字段类型子项信息表中。步骤300、根据用户指令设置表单信息表属性和字段信息表属性生成得到表单模板。将录入的信息封装到表单信息实体对象,并自动产生随机唯一的表单标识列B00KID,提交到表单信息表。根据用户指令创建字段(创建需要登记的内容),定义字段名称、字段类型和字段信息标识,根据以上定义内容向数据库字段信息表中插入新的字段信息,并向表单字段关系表中插入字段标识和与其对应的表单模板标识以使得字段信息与表单模板建立联系,从而生成得到表单模板。步骤400、根据表单模板生成表单实例,从数据库中读取此表单模板的所有字段信息,生成相应的控件呈现在界面中形成登记表,供用户进行信息录入。需要说明的是,使用生成控件仅仅是本发明的一个具体实施方式
,本发明还可以采用基于其它技术的录入单元来实现提供用户进行信息录入。这里的录入单元是指提供用户录入信息的任何一种呈现单元。其可以是上述的控件,也可以是弹出要求用户进行输入的对话框,还可以是文本框、图片框等各种用于录入信息的单元。所述步骤400具体包括
在表单信息表中将某表单信息的状态标志为“已生成表单”状态。创建数据库表,根据表单标识B00KID,字段标识FIELDID向数据库中插入ー个表单表(用于存储此中表单的登记内容)。此表单表以表单信息表中对应此表的表单信息标识列名为表名;此表单表内部的所有字段以字段信息表中对应的字段信息标志列名为列名。表单呈现,包括根据用户选择的表单得到表单标识B00KID,通过多表联合查询或其它任何得到多表联合查询同等效果的组合方式得到此表单中的所有字段信息。根据字段类型,设置字段的约束(包括非空、验证)、录入控制(非法录入限制,正则表达式,数值、文本、日期等)生成相应的控件或其它类型的录入单元呈现在界面中供用户录入信息使用。 在本发明的一个实施例中,可以配置用户对于表单以及字段的新增、修改和查阅权限,在呈现表单时,据登录用户的权限,筛选出此用户有新增、修改和查阅权限的字段,从而选择性地向用户呈现字段。配置用户对表单(登记簿)的新增、修改、删除和查阅权限包括在呈现表单时,据登录用户拥有的权限,筛选出此用户具有查阅权限的表单,呈现在左侧表单模板导航中;用户选择一表单模板后,此表单的信息列表呈现;若有新增权限,则在主页面会呈现ー个新增按钮,供用户新增表单信息,反之没有新增按钮呈现;若有修改权限,则会在表单信息列表的首列呈现可供修改的图标,否则呈现灰色图标;若有删除权限,则会在表单信息列表的第二列呈现可供删除表单信息的图标,否则呈现灰色图标。配置用户对表单(登记簿)内字段的新增、修改和查阅权限。若对字段配置了新增或修改、查阅权限,在呈现表单时筛选出有新增或修改、查阅权限的字段,从而选择性的向用户呈现字段。本发明的方法和装置通过利用数据库设置不同的数据库表,通过表单标识和字段标识以及字段类型标识将不同的数据库表整合联系起来,再通过分步编辑数据库表数据并根据相应的设定生成控件或其它类型的录入单元在界面呈现实现了表单的自定功能,大大拓展了表单应用的范围和灵活性。显然,本领域技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种生成自定义表单的方法,包括 新建表单模板信息,所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表; 其中,所述表单信息表包括识别表单信息表的唯一标识、用于标识表单的表单标识、表单名称;字段信息表用于存储所有的字段信息,字段信息表包括字段信息表标识,用于标识字段的字段标识、字段名称、字段类型及字段类型标识;表单字段关系表用于表述字段与表单之间的关系,表单字段关系表包括表单标识和表单所包含字段的字段标识;字段类型表用于表述字段类型属性,字段类型表包括字段类型表标识、字段类型标识、字段类型名;所述字段类型子项信息表包括所述子项数据和对应的字段类型标识; 根据用户输入创建特殊字段类型的子项数据; 其中,配置特殊字段类型的子项数据将用户录入的特殊字段类型子项数据封装成实体保存到字段类型子项信息表并根据其对应的字段类型标识更新字段类型信息表; 将录入表单的信息封装到表单信息实体对象,并随机产生唯一的表单标识,提交到表单信息表; 根据用户指令创建字段,定义字段名称、字段类型和字段信息标识,根据以上定义内容向字段信息表中插入新的字段信息,并向表单字段关系表中插入字段标识和与其对应的表单模板标识以使得字段信息与表单模板建立联系; 根据表单模板生成表单实例,读取该表单模板的所有字段信息,生成相应的录入单元呈现在界面中形成表单,供用户进行信息录入; 其中,所述录入单元为供用户录入信息的呈现单元。
2.如权利要求I所述的生成自定义表单的方法,其特征在于所述根据表单模板生成表单实例,读取此表单模板的所有字段信息,生成相应的录入单元包括 在表单信息表中将表单状态标志设为“已生成表单”状态。
根据表单标识,字段标识插入一个表单表,所述表单表以表单信息表中对应的表单标识为表名;此表单表内部的所有字段以表单字段关系表查询获得的对应的字段信息表中对应的字段标识为列名; 根据用户选择的表单模板得到表单标识,通过多表联合查询或其它任何得到多表联合查询同等效果的组合方式得到此表单中的所有字段信息; 根据字段类型设置的字段的约束生成相应的录入单元呈现在界面中供用户录入信息使用。
3.如权利要求I所述的生成自定义表单的方法,其特征在于还包括 配置用户对于表单以及字段的新增或修改、查阅权限,在呈现表单时,根据登录用户的权限,筛选出此用户有新增或修改、查阅权限的字段,从而选择性地向用户呈现字段。
4.如权利要求I所述的生成自定义表单的方法,其特征在于所述特殊字段类型包括多选一字段类型和多选多字段类型。
5.一种生成自定义表单的装置,包括 模板创建模块,用于在数据源中新建表单模板信息,所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表; 其中,所述表单信息表包括识别表单信息表的唯一标识、用于标识表单的表单标识、表单名称;字段信息表用于存储所有的字段信息,字段信息表包括字段信息表标识,用于标识字段的字段标识、字段名称、字段类型及字段类型标识;表单字段关系表用于表述字段与表单之间的关系,表单字段关系表包括表单标识和表单所包含字段的字段标识;字段类型表用于表述字段类型属性,字段类型表包括字段类型表标识、字段类型标识、字段类型名;所述字段类型子项信息表包括所述子项数据和对应的字段类型标识; 特殊字段类型子项数据配置模块,用于根据用户输入创建特殊字段类型子项数据。其中,配置特殊字段类型子项数据将用户录入的特殊字段类型子项数据封装成实体保存到字段类型子项信息表并根据其对应的字段类型标识更新字段类型信息表; 表单定义模块,用于将录入的表单信息封装到表单信息实体对象,并随机产生唯一的表单标识,提交到表单信息表; 字段定义模块,用于根据用户指令创建字段,定义字段名称、字段类型和字段信息标识,根据以上定义内容向字段信息表中插入新的字段信息,并向表单字段关系表中插入字段标识和与其对应的表单模板标识以使得字段信息与表单模板建立联系; 表单生成模块,用于根据表单模板生成表单实例,读取此表单模板的所有字段信息,生成相应的录入单元呈现在界面中形成登记表,供用户进行信息录入; 其中,所述录入单元为供用户录入信息的呈现单元。
6.如权利要求5所述的生成自定义表单的装置,其特征在于所述表单生成模块包括 状态修改子模块,用于在表单信息表中将表单状态标志设为“已生成表单”状态。
表单插入子模块,用于根据表单标识和字段标识插入一个表单表,所述表单表以表单信息表中对应的表单标识为表名;此表单表内部的所有字段以表单字段关系表查询获得的对应的字段信息表中对应的字段标识为列名; 查询子模块,用于根据用户选择的表单模板得到表单标识,通过多表联合查询或其它任何得到多表联合查询同等效果的组合方式得到此表单中的所有字段信息; 呈现子模块,用于根据字段类型设置的字段约束生成相应的录入单元呈现在界面中供用户录入信息使用。
7.如权利要求5所述的生成自定义表单的装置,其特征在于所述特殊字段类型包括多选一字段类型、多选多字段类型。
全文摘要
本发明公开了一种生成自定义表单的方法和装置,所述方法包括新建表单模板信息,所述表单模板信息包括表单信息表、字段信息表、表单字段关系表、字段类型信息表、字段类型子项信息表,根据用户定义设置表单信息表并创建表单包含字段的字段信息表获得表单模板信息,根据表单模板信息生成并呈现自定义表单。本发明通过设置不同的数据表格实现数据整合,大大拓展了表单应用的范围和灵活性。
文档编号G06F9/44GK102779040SQ20121020927
公开日2012年11月14日 申请日期2012年6月21日 优先权日2012年6月21日
发明者邝炜宗, 钱李明, 陈友斌 申请人:东莞市微模式软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1