技术领域
本发明涉及表单构建技术,特别地,涉及一种基于表单引擎构建多数据源表单的方法、装置及平台。
背景技术
表单引擎提供一个低代码平台,极大缩减了项目或产品的研发成本和周期。通过表单设计器,可根据业务需求快速制作表单,定义表单字段属性、样式、布局等;同时,还可集成一些高级表单功能,如签名、扫码、OCR识别、数据统计公式等,辅助业务快速构建,无需开发或新增代码,最大程度实现业务功能表单组件化、函数化实现。
但是有些业务场景,本身包含复杂的业务数据建模关系,数据来源往往由多个已构建好的表单组成,因为每次需要已有表单内的数据项都不一定同,如果通过程序的过度高度抽象与封装,便显得不够灵活应对业务需求变化,为了应对不同的业务需求,经常需要编程人员干预,才能完成具体的业务数据建模,因此,现有表单引擎平台构建表单时不够灵活,构建速度慢,可维护性低。
发明内容
为了克服现有技术的不足,本发明提供一种基于表单引擎构建多数据源表单的方法、装置及平台,以解决现有表单引擎平台构建表单时不够灵活,可维护性和可扩展性低的问题。
本发明解决其技术问题所采用的技术方案是:
第一方面,
一种基于表单引擎构建多数据源表单的方法,包括以下步骤:
获取用户待构建表单的所需字段;
选择包括所需字段的已有表单;
当所述已有表单为至少两个时,确定主数据源和关联数据源同时包含的字段,其中,主数据源为所述已有表单中的一个,关联数据源为除主数据源外的表单;
将任意一个同时包含的字段作为所述主数据源和关联数据源的关联字段;
根据所述关联字段建立所述主数据源和关联数据源的连接得到所述待构建表单。
进一步地,还包括:
当所述已有表单为一个时,根据所述已有表单内的所需字段得到所述待构建表单。
进一步地,所述根据所述关联字段建立所述主数据源和关联数据源的连接包括:采用内联或左联的方式建立所述主数据源和关联数据源的连接。
进一步地,还包括:
当包括所需字段的表为非表单表时,采用标准的H5规范生成所述待构建表单。
第二方面,
一种基于表单引擎构建多数据源表单的装置,包括:
所需字段获取模块,用于获取用户待构建表单的所需字段;
已有表单选择模块,用于选择包括所需字段的已有表单;
相同字段确定模块,用于当所述已有表单为至少两个时,确定主数据源和关联数据源同时包含的字段,其中,主数据源为所述已有表单中的一个,关联数据源为除主数据源外的表单;
关联字段确定模块,用于将任意一个同时包含的字段作为所述主数据源和关联数据源的关联字段;
多数据源关联模块,用于根据所述关联字段建立所述主数据源和关联数据源的连接得到所述待构建表单。
第三方面,
一种表单构建平台,包括:
前端,包括表格控件单元,用于接收用户通过界面操作形成的用于构建表单的设置指令,所述表格控件包括对待构建表单设置数据源的数据源设置单元,所述数据源包括单表关联和多表关联;
后端,用于根据所述设置指令,为所述前端建立连接,并返回相应的结果;当数据源设置单元设置数据源关联时,将待构建表单与设置的数据源进行关联,并在接收到查询指令时,从关联的数据源处返回查询结果。
进一步地,所述数据源设置单元设置多表关联时,选定主数据源,并设置内联或左联的关联方式,然后选择主数据源和关联数据源需要关联的字段。
进一步地,所述表格控件单元还包括列表显示字段设置单元,用于通过界面操作设置待构建表单中要显示关联数据源的字段。
进一步地,所述表格控件单元还包括条件过滤设置单元,用于用户设置查询条件对所述待构建表单中关联数据源中的字段进行查询。
进一步地,所述表格控件单元还包括显示列样式设置单元,用于显示所述待构建表单的字段别名、添加外部链接、设置显示样式以及对字段进行排序。
本申请采用以上技术方案,至少具备以下有益效果:
本申请方案提供一种基于表单引擎构建多数据源表单的方法、装置及平台,在获取到用户待构建表单的所需字段后,选择包括相同字段的已有表单,如果包括相同字段的已有表单为多个,则将其中一个作为主数据源而其他作为关联数据源进行关联得到待构建表单。本申请方案无需每次都要程序员进行干预,只需要获取待构建表单字段,即可自动找到包含所需字段的已有表单,并根据主数据源和关联数据源同时具有的字段进行关联,得到待构建的表单,大大提高了表单引擎平台表单构建的速率和灵活性以及可维护性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于表单引擎构建多数据源表单的方法流程图;
图2是本发明实施例提供的一种基于表单引擎构建多数据源表单的装置结构框图;
图3是本发明实施例提供的一种表单构建平台结构示意图;
图4是本发明实施例提供的一种表格控件单元组成结构示意图;
图5是本发明实施例提供的一种多表关联具体示例图;
图6是本发明实施例提供的一种条件过滤设置单元具体示例图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明的技术方案进行详细的描述说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
参照图1,本发明实施例提供一种基于表单引擎构建多数据源表单的方法,包括以下步骤:
获取用户待构建表单的所需字段;所需字段为用户输入;
选择包括所需字段的已有表单;根据输入的字段名称,可以在数据库中进行匹配搜索自动得到已有表单,也可以由用户直接选定某些已有表单。
当已有表单为至少两个时,确定主数据源和关联数据源同时包含的字段,其中,主数据源为已有表单中的一个,关联数据源为除主数据源外的表单;
将任意一个同时包含的字段作为主数据源和关联数据源的关联字段;由于每个已有表单侧重点不同,因此其包括的字段会含有一下其他已有表单没有的字段。因此在关联主数据源和关联数据源时,需要选择同时都有的字段。
根据关联字段建立主数据源和关联数据源的连接得到待构建表单。
作为对本发明实施例一种补充说明,当已有表单为一个时,根据已有表单内的所需字段得到待构建表单。
一些可选实施例中,根据关联字段建立主数据源和关联数据源的连接包括:采用内联或左联的方式建立主数据源和关联数据源的连接。其中,以两个表举例,内联的方式用来显示同时满足两个表的数据,而左联不仅显示同时满足两个表的数据,也要显示左边表的全部数据。
作为本发明实施例一种可选的实现方式,数据源可能来自非表单的数据,即数据库中某个非表单表;界面生成采用标准的H5规范,可适配多终端应用,无论移动端或PC端应用。
本发明实施例提供的一种基于表单引擎构建多数据源表单的方法,在获取到用户待构建表单的所需字段后,选择包括相同字段的已有表单,如果包括相同字段的已有表单为多个,则将其中一个作为主数据源而其他作为关联数据源进行关联得到待构建表单。本申请方案无需每次都要程序员进行干预,只需要获取待构建表单字段,即可自动找到包含所需字段的已有表单,并根据主数据源和关联数据源同时具有的字段进行关联,得到待构建的表单,大大提高了表单引擎平台表单构建的速率和灵活性以及可维护性。
一个实施例中,本发明提供一种基于表单引擎构建多数据源表单的装置,如图2所示,包括:
所需字段获取模块21,用于获取用户待构建表单的所需字段;
已有表单选择模块22,用于选择包括所需字段的已有表单;
相同字段确定模块23,用于当已有表单为至少两个时,确定主数据源和关联数据源同时包含的字段,其中,主数据源为已有表单中的一个,关联数据源为除主数据源外的表单;当已有表单为一个时,根据已有表单内的所需字段得到待构建表单。
关联字段确定模块24,用于将任意一个同时包含的字段作为主数据源和关联数据源的关联字段;
多数据源关联模块25,用于根据关联字段建立主数据源和关联数据源的连接得到待构建表单。具体地,采用内联或左联的方式建立主数据源和关联数据源的连接。
需要说明的是,为提高装置的可拓展性,当包括所需字段的表为非表单表时,采用标准的H5规范生成待构建表单。
本发明实施例提供的一种基于表单引擎构建多数据源表单的装置,所需字段获取模块获取用户待构建表单的所需字段;已有表单选择模块选择包括所需字段的已有表单;当已有表单为至少两个时,相同字段确定模块确定主数据源和关联数据源同时包含的字段,关联字段确定模块将任意一个同时包含的字段作为主数据源和关联数据源的关联字段;多数据源关联模块根据关联字段建立主数据源和关联数据源的连接得到待构建表单。本发明实施例提供的装置只需要获取待构建表单的所需字段,即可找到具有相同的字段的已有表单,并根据具有相同字段的已有表单构建所需的表单。即使待构建表单的字段数据来源为多个,也可以将多个数据源关联,无需程序员为每个关联进行编程,大大提高了构建表单的速度,提高了表单引擎平台的可维护性。
一个实施例中,本发明实施例提供一种表单构建平台,包括:
前端,包括表格控件单元,用于接收用户通过界面操作形成的用于构建表单的设置指令,表格控件包括对待构建表单设置数据源的数据源设置单元,数据源包括单表关联和多表关联;示例性的,如图5所示,以主数据源的人员管理表和关联数据源的申请加入表通过提交人id字段关联为例,数据源设置单元设置多表关联时,选定主数据源,并设置内联或左联的关联方式,然后选择主数据源和关联数据源需要关联的字段。
后端,用于根据设置指令,为前端建立连接,并返回相应的结果;当数据源设置单元设置数据源关联时,将待构建表单与设置的数据源进行关联,并在接收到查询指令时,从关联的数据源处返回查询结果。
如图3所示,如果某个业务只需要表1中的部分业务数据字段,则选择单表关联表1,并在界面勾选所需字段,前端31传输用户所配置业务规则至后端32,后端将根据所选的关联表单id及显示字段,自动匹配数据库表和字段查询;
如果某个业务需要关联多个表单业务数据字段,则在界面选择主表和关联表,以及这些表所需的业务数据字段,后台将根据所选的主表id及所有关联表单id及显示字段,自动构建数据库查询规则。
其中表单控件单元40的组成结构如图4所示,包括数据源设置单元41,列表显示字段设置单元42,条件过滤设置单元43和显示列样式设置单元44。
列表显示字段设置单元用于通过界面操作设置待构建表单中要显示关联数据源的字段。
如图6所示,条件过滤设置单元用于用户设置查询条件对待构建表单中关联数据源中的字段进行查询。
显示列样式设置单元用于显示待构建表单的字段别名、添加外部链接、设置显示样式以及对字段进行排序。示例性的,对于某些字段使用者更习惯以别名查询或使用,所以在统一名称后可以添加别名,在操作时可以以别名进行,对于某些字段其内容来源并不是表单,因此平台会以H5的规范创建网页,并将该网页与该字段名称进行链接,当点击该字段时跳转到该网页;同时对于不同用户由不同的查看习惯,因此可以设置不同的显示样;最后对由于某些时候需要按排名进行统计,因此还可以对字段进行排序。
本发明实施例提供的表单构建平台,通过可视化界面灵活选择或配置表单多数据源,既进一步提升构建业务模型的复杂度,也能适应变化多端的业务需求;本发明具备领域通用性的特点,也实现了控件的可扩展性,例如数据源可能来自非表单的数据,即数据库中某个非表单表;本发明界面生成采用标准的H5规范,可适配多终端应用,无论移动端或PC端应用。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
机译: 在包含表单的知识库中创建基于Web的表单的方法和平台/系统,表单在表单完成并完成后会自动反馈给用户
机译: 在包含表单的知识库中创建基于Web的表单的方法和平台/系统,表单在表单完成并完成后会自动反馈给用户
机译: 在包含表单的知识库中创建基于Web的表单的方法和平台/系统,表单在表单完成并完成后会自动反馈给用户