zoukankan      html  css  js  c++  java
  • 驰骋工作流引擎如何实现发送阻塞模式?

    1.1.1.1: 发送阻塞模式

    定义:一个节点在向下运动时候,在特定的条件下需要阻塞向下运动,这些条件满足了要阻塞向下运动。

    解释:比如一个节点启动了多个子流程,该节点需要所有的子流程都完成才能向下运动。这就符合发送阻塞模式的第二种,如下图。

    image

    规则说明:

    不阻塞:就是没有条件,它是默认的规则。

    当前节点的所有未完成的子流程:当该节点启动一个或者多个,一种或者多种子流程时,需要等到所有的子流程都完成才能向下移动。

    实例:在B节点上,我启动了甲流程三个条,乙流程4条。该节点要向下运动,必须等到所有启动甲的流程与所有启动乙的子流程都完成了,才能向下运动。

    按约定的格式阻塞未完成的子流程:当该节点向下运动时,要检查指定的历史节点曾经启动的指定的子流程全部完成,作为条件。

    实例:在D节点上,要检查曾经在C节点上启动的甲子流程是否全部完成,如果完成就不阻塞。

    配置格式:@指定的节点1=子流程编号1@指定的节点n=子流程编号n。

    按SQL阻塞:执行该SQL,返回大于0就阻塞,小于0不阻塞,在表达式里配置该sql,sql支持表达式。

    配置格式: SELECT COUNT(*) FROM WF_XXXX WHERE ABC=@XXXX

    按照表达式阻塞:在表达式框里填写一个表达式,如果表达式成立就阻塞,不成立不阻塞。

    配置格式:@参数 空格 运算符 常量/变量值 , 比如: @JineE >= 1000 , @FaType = 1

    相关属性:如下两个属性来与该模式一起工作,一下两个属性都支持cc的表达式。

    阻塞表达式:根据选择的模式不同,设置该模式相关的表达式。

    被阻塞时信息提示:如果被阻塞,需要提示什么样的友好信息給用户。

    事例演示: \流程树\父子流程\经典流程\节点发送阻塞测试

    image

    在第2个节点上,启动子流程,但是子流程没有结束,直接发送就抛出如下错误。

    image

    以上讲解了如何使用阻塞规则,来友好的、可配置的实现用户的需求。

  • 相关阅读:
    0593. Valid Square (M)
    0832. Flipping an Image (E)
    1026. Maximum Difference Between Node and Ancestor (M)
    0563. Binary Tree Tilt (E)
    0445. Add Two Numbers II (M)
    1283. Find the Smallest Divisor Given a Threshold (M)
    C Primer Plus note9
    C Primer Plus note8
    C Primer Plus note7
    C Primer Plus note6
  • 原文地址:https://www.cnblogs.com/ccflow/p/4247999.html
Copyright © 2011-2022 走看看