决策流
决策流又称规则流,它整个的结构类似于工作流,用来对已有的决策集、决策表、交叉决策表、决策树、评分卡、复杂评分卡或其它决策流的执行顺序进行编排,以清晰直观的实现一个大的复杂的业务规则。
URule Pro规则引擎中的决策流可以实现对已有的决策集、决策表、交叉决策表、决策树、评分卡、复杂评分卡或其它决策流进行编排执行;编排过程中既可以常见串行执行,也可以并行执行,或者是根据条件选择分支执行。URule Pro中提供了一个基于网页的流程设计器,通过简单拖曳就可以快速实现对已有的决策集、决策表、交叉决策表、决策树、评分卡、复杂评分卡或其它决策流执行顺序的编排。
一个设计好的规则流如下图所示:
在这个流程设计器当中,上面是工具栏,下面是设计区,在工具栏第一排可实现流程模版的保存、选择、创建连接、重做、取消、网格吸附、删除、竖直居中对齐、水平居中对齐及将多个选中节点设置成相同尺寸等工具。
工具栏的第二排就是URule Pro中规则流支持的流程节点,URule Pro中规则流中共有八种类型的节点,分别是开始节点、规则节点、知识包节点、动作节点、向导式动作节点、决策节点、分支节点、聚合节点。
需要注意的是,URule Pro的决策流中没有结束节点,在URule Pro的决策流当中,决策流必须要以开始节点开始,可以在任何分支以任意节点结束,这点与类似UFLO 之类的工作流引擎不同,UFLO 之类的工作流引擎要求流必须要以开始节点开始,同时任何分支都必须要以结束节点结束。
创建决策流
打开URule Pro规则引擎控制台,在项目的决策流节点点右键,从右键菜单中选择添加决策流,创建一个新的决策流文件,如下图:
在设计器的设计区中,属性面板是可移动的,我们可以通过鼠标点击属性面板任何部位来移动它。点击工具栏第二行上的流程节点图标,然后在设计区单击,就可以在设计区添加对应节点。
在URule Pro的决策流中,节点图标的尺寸是可以通过鼠标改变的;节点创建完成后,可点击工具栏第一行上的连线图标,在节点间添加连接。点击工具栏上的选择图标,可实现节点或连线的选择,选择方式可以是点选,或拖选。
在定义好节点间的连线后,如需将连线变成折线,那么可以先采用拖选方式选中目标连线,如下图所示:
选中连线后,中连线中间就会出现可拖拽的锚点,拖动描点即可改变连线形状,如下图所示:
如不需要这个锚点,那么可以先取消连线的选择,然后再次选中连线,双击要删除的锚点,这样即可删除锚点对象,对应的连线也会回到没有锚点的状态。
节点或连接选中后就可以在属性面板上修改它们的属性,点击选择图标后,在设计区空白处点击就可以配置决策流的全局属性,如定义决策流ID,需要导入的库文件等。
决策流的全局属性有两块,第一块就是决策流的ID,这个很重要,在一知识包中,如果有多个决策流,那么决策流ID要唯一;第二部分是导入相关库文件,这与之前介绍的决策集、决策表、决策树、评分卡一样,唯一不同是这里的库文件管理放在了属性面板上。
决策流工具栏按钮说明
接下来就来介绍URule Pro中决策流提供的各种类型节点的作用及使用方法。