UFLO 2 : 8.路由决策节点

       路由决策节点功能相对简单,它的作用就是根据某些条件,在旗下众多流出的连接当中选择一条,使用流程实例可以继续向下流转。 路由决策节点在设计器工具栏中位置如下图所示。

        路由决策节点的功能特性决定了它旗下必须要有大于一条的流出连接,否则这个决策就没有意义了。选中一个添加的路由决策节点,在属性窗口当中可以看到除了公共的“基本属性”页签外,它还有个独有的“决策配置”页签。在“决策配置”页签当中,我们可以定义当前的路由决策节点根据什么样的条件来选择下一步要走的路线,如下图所示。

       可以看到,在路由决策节点允许我们通过两个属性来决策下一步该如何流转。第一个是通过一个表达式,但要求表达的计算结果必须是一个字符串,且这个字符串一定要是当前路由决策节点旗下某个流出连接的名称,比如"${dayCount>10?"to 总经理":"to 财务"}",这个表达式就表示在流程实例运行到当前节点后,将会判断dayCount这个变量的值,如果大于10,那么将选择当前路由决策节点往旗下名为"to 总经理"的流出连接继续流程的流转,否则就选择名为"to 财务"的流出连接继续流程的流转。

       除了可以采用表达式来决定路由决策节点该选择哪条流出连接外,还可以指定一个实现了com.bstek.uflo.process.handler.DecisionHandler接口的类并配置到spring中的bean的id,可以看到该接口中的handle方法返回的是一个字符串,这个字符串的含义与表达式返回的字符串含义相同,也是当前路由决策节点旗下某个流出连接的名称,对于这个bean的id除了可以手工输入外,还可以通过右边的“选择”按钮连接远程实现点击选择,选择的URL格式如下:

http://localhost:8080/uflo-test/uflo/handlerlist

说明

UFLO-1.0版本的URL为http://localhost:8080/uflo-test/dorado/uflo/list.handler

如果UFLO在一个包含权限的框架当中,要保证上述URL可匿名访问,否则将产生错误。

      在路由决策节点上可添加的流入与流出连线数量如下表所示:

连线类型
数量
流入连线1~n
流出连线1~n


Attachments:

decision-tools.png (image/png)
decision-prop.png (image/png)
8.路由决策节点.url (application/x-upload-data)