1.1.1: 流程启动限制
流程发起限制是很多流程常用的一种行为,但是开发者也不重视去配置,会导致数据紊乱,统计出错。
比如有的流程是按照时限发起的,每天一人一次,每周一人一次,。。。。。。。
有的流程是按照一定的主键发起的,比如纳税人注销流程,一个纳税人编号不能启动多次,因为一个纳税人只能启动一次注销流程。
配置界面:
根据各种应用场景ccflow抽象出来如下几种模式,请根据自己的应用场景对号入座。
不限制:默认不限制发起次数.
每人每天一次:每人一天只能发起一次,如果需要时间限制就要在参数里设置,设置规则是:@时间点1-时间点2@时间点3-时间点4@时间点n-时间点n1
比如:@08:30-09:00@18:00-18:30 , 解释:该流程只能在08:30-09:00与18:00-18:30两个时间段发起。如果设置为:@08:30-09:00 只能在此时间点发起。
设置方式:
每人每周一次:每人每周天只能发起一次,如果需要时间限制就要在参数里设置,
设置规则是:@英文周,时间点1-时间点2@英文周,时间点3-时间点4@英文周,时间点n-时间点n1
英文的周是: 周日 Sunday,周1 Monday,周2 Tuesday,周3 Wednesday,周4 Thursday,周5 Friday,周6 Saturday。 配置时注意不要拼写错误。
比如:@Sunday ,08:30-09:00@Monday ,18:00-18:30 , 解释:该流程只能在周日,与周一指定的时间段内发起。
设置方式:
每人每月一次:
每人每月只能发起一次,如果需要时间限制就要在参数里设置,
设置规则是:@-日期,时间点1-时间点2, 多个时间段用@符号隔开。
比如:@01,08:30-09:00, 解释:该流程只能在每月的1号08:30-09:00发起。
设置方式:
每人每季一次:
每人每季只能发起一次,如果需要时间限制就要在参数里设置,
设置规则是:@MM-dd,时间点1-时间点2, @MM-dd,时间点1-时间点2, @MM-dd,时间点1-时间点2,。
比如:@01-01,08:30-09:00, @04-01,08:30-09:00, @07-01,08:30-09:00, 解释:该流程只能在1,2,3季度的第一天的08:30-09:00发起,其他时间点不能发起。
设置方式:
每人每年一次:格式与季度相同.
发起的列不能重复,(多个列可以用逗号分开) :未完成
应用场景:有一些流程不能发起重复,比如我们为税务做一个纳税人注销审批流程,一个纳税人只能注销一次,如果发起多次就是逻辑错误,所以这个限制就应用到了这个场景。 配置界面如下。
说明规则参数,可以是多个列,多个列用逗号分开。比如:纳税人月申报流程。一个纳税人只能在一月发起一次。
设置的SQL数据源为空,或者返回结果为零时可以启动. :未完成
流程启动的限制规则在以上条件都不能很好的满足时,ccflow提供了按照SQL查询的规则,编写一个sql语句返回一行一列,如果信息是0,就是可以启动,非0就不可以启动。
设置的SQL数据源为空,或者返回结果为零时不可以启动. :同上
所有的启动限制,我们已经编写完,流程设计人员根据自己的业务背景选择合适自己的发起限制规则。