本文展示一种基于ju/nx的全新的工作流替代方案。
再谈工作流
工作流是一个老生常谈的话题,虽然村长不推荐使用,但是偶尔用一下也无妨。
工作流的本质是多人协同按照顺序维护一条数据记录,接下来我们基于ju/nx的映射模板特性,即多模板可以显示和维护同一条数据,来构造一种全新的协同填报方式。
映射模板
首先,制作一个【工序总览】
模板,这里面涉及3个工序,每个工序完成后,下一个工序在工作台才能看到数据并修改补填自己工序的数据,直到3个工序全部走完。
作为总览台账模板,该模板我们不做其他设置,关闭新建、修改权限,仅保留管理员的删除权限。
接下来,制作【工序1】
的填报模板,字段全部映射
到总览模板的表,另外增加一个暂存
临时字段。
在状态
字段上设置一个EXCEL公式:=IF((C7>0)*(G1=0),2,1)
,公式的意思就是如果填报了实际产量(C7),就流转到工序2(状态2),但如果勾选了暂存(G1),就仍然保存在本工位。
增加一条新建消息提醒
表间公式,选择【工序2】
模板,关联条件为订单号,消息内容为机器2有新的工序任务
,用来提醒工序2流程人员进行办理。
最后我们要设置一下加载表达式,当状态=1时可见。
这样【工序1】模板就基本完成了。
相类似的,再制做一下【工序2】模板,字段依旧全部映射。
在状态
字段上设置一个EXCEL公式:=IF((C9>0)*(H1=0),3,IF((C9=0)*(H1=1),1,2))
,公式的意思有两层:
1.如果填报了实际产量(C9),就流转到工序3(状态3),但如果勾选了暂存(H1),就仍然保存在本工位。
2.如果没有填报产量(C9=0),可以通过勾选退回(H1=1)到前一步流程(状态1)。
【工序2】要增加两条新建消息提醒
的表间公式,一条向下到【工序3】
模板
另一条向上回到【工序1】
【工序2】模板的加载表达式为状态=2时可见。
如法炮制,制作【工序3】模板,这里不再赘述,只是提醒公式向下返回到【工序总览】。
实际效果
新建工序1,填入实际数,可以看到状态到2了。
如果勾选暂存,状态会回到1。
不勾暂存,保存一下,桌面右下角立即出现提示
通过点击消息前的小图标可以直接办理
工序2任务,太棒了。
在办理工序2时,可以填入数量,状态变成3。
也可以不填,勾退回,状态变成1。
保存后,可以看到消息中出现退回提醒,点击可重新办理【工序1】形成完美闭环。
小结
主要综合应用了映射模板、回写新建提醒、和权限控制(模板权限、字段权限、加载表达式等)
本文旨在拓展映射技术的应用思维,本文涉及的数据库备份可在聚慧禅院中下载。
2019-03-07