在BPM动态可配置表单中使用NoSQL技术可行性分析——通用流程化应用审批单设计思路(二)

        原业务流程平台审批单使用横向表纵向存储的思路,所有流程所使用的业务表单的数据都存在一张物理表中,表中每条数据记录包含Column定义和Value,Column所对应的字段信息,通过定义表来定义。这种做法就是在实现时,需要使用代码进行数据组装,比较繁琐。当表单较大时,界面展现速度慢。此方案查询统计支持有限。

        为了满足可配置动态表单的需求,并解决上述方案的不足,采用NoSQL技术来优化设计,因为NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。按NoSQL的特性,可以灵活进行schema结构(列定义)的修改,理论上应该可以很好支持这些动态表单的持久化保存。

        基于上述思路,采用审批单(表单)模版,以及NoSQL与关系型数据库相结合的方案,设计目标如下:

        (1)使用用户化工具设计审批单模版;

        (2)通过配置管理工具,配置审批单关键数据项,例如:标题、部门、关键数值(例如统计、流程流转规则所需要的)、时间等;

        (3)审批单模版需要版本化管理;

        (4)审批单数据存储分为两部分:一是关键字段内容,存储到关系型数据库中;整个表单(含HTML、CSS、JavaScript、图标等)连同数据内容,以文档整体对象存储到NoSQL数据库中;

        (5)审批单上所涉及到的CSS、JS、图标等资源性文件,需要进行版本管理(在数据库中只保存他们的URL);

        (6)历史表单查询保存原样;

        (7)保留表单数据内容修改痕迹(存储流转中多版本表单),提供定期清理功能;

        (8)保证高效读写性能,以及稳定性。

        上述目标也适用于信息专栏内容。

        另外,还有一套折中方案,也是在审批单模版的基础上,表单上非关键数据,组合成一个字符串保存(例如:JSON格式),在数据保存和提取展现时,按配置数据进行展现数据适配。

        上述方案需要技术验证,欢迎读者反馈、建议。

参考资料:

基于PaaS平台开发流程审批框架界面设计方案(草稿)

从原理分析审批流表单配置功能使用的问题

通用流程化应用审批单设计思路(一)

动态表单的数据库结构设计

QForm是什么? QForm是一套基于数据库的电子表格平台,QForm是一套基于WEB的数据库表单快速制作平台,QForm是一套强大的次开发平台。 QForm有些什么特点? 1、QForm上设计表单不需要编写代码,通过简的拖拉和配置即可制作出各种数库表单,如生产质量验验、客户订、入库出库、合同、会议记录、各种统计分析报表……。 2、QForm为制作业务表单提供了大量的常规业务逻辑,如强制输入、强制输入、默认值、文本长度、文本类型、小数位数、负数红字、表单间调用、依据流程设定某些区域是否可用……,只需过简配置就可以完成这些功能。 3、QForm具备强大的文档和电子表格制作能力,可以勾画出类似Word或Excel文档的表单,与Word和Excel不同的是QForm表单读写或统计的数据来源于数据库。QForm目前支持112个表格函数,这些函数大部分保持了与Excel函数的一致性。 4、QForm内部采用XML+HTML+TCP/IP与数据库交互数据,确保QForm可以在同一表单内,读写分布在不同区域(如不同城市)或不同系统(如ERP、CRM等)的数据,实现数据集成,消除信息孤岛,轻松撑控企业各种信息。 5、QForm允许我们编写各种SQL语句和VBScript或Jscript。此外,QForm制作的表单可以脱离QForm客户端框架供第三方系统调用, 也允许我们在QForm表单上调用的第三方组件。 6、QForm通常由实际业务人员快速勾画适合本部门需求的业务表单,消除对开发人员或软件公司的依赖和沟通障碍,并且结果表单柔韧性强,根据业务变更及时调整,从而大大降低成本和风险。 总之QForm具备快速、简、经济、灵活、数据异构等特点,使得我们可以在低成本,低风险的情况下,轻松架构和撑控高质量的信息系统。 联系QForm:qform@163.com,13711407657。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肖永威

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值