Skip to end of metadata
Go to start of metadata

URule2技术交流QQ群及在线体验示例

在线体验示例:http://112.124.15.63:8084/ 为了不同用户操作互不影响,需要注册账号登录体验操作。

URule2技术交流QQ群:423339793

URule2规则引擎产品教学视频:https://pan.baidu.com/s/1oAeJeCM,密码:evsk

       交叉决策表是URule PRO版中提供的一种类型的业务规则编辑方式,开源版URule中没有交叉决策表功能。相比普通决策表,它更适合复杂的带有交叉结构的业务规则定义与实现。交叉决策表效果如下:

       交叉决策表是一种特殊类型的决策表,它是由横向和纵向两个维度的条件交叉来确定一个具体值,在配置好“交叉单元格值要赋予的对象”后,这些交叉后单元格的值满足横向和纵向两个维度的条件后就会赋给配置的对象。比如上图中横向条件“银行号”等于001,“车系”等于A,同时“产地类型”等于SH,这三个组合条件与纵向的“车辆级别”等于L1,“变速箱类型”等于0的交叉值为"1213",如果这两个维度对应的条件都满足时将会把1213这个交叉值赋给上面配置的“输出项.建议额度”这个对象;依次类推,其它交叉单元格值也是同样的情况。

       相比普通的决策表,交叉决策表是从横向和纵向两个维度来唯一确定一个值,所以它更加简单,也更为直观,相同类型的交叉决策表实现的交叉业务规则,如果换成普通决策表来定义,那将大大增加定义的复杂度。

导入Excel中定义的交叉决策表

       在URULE PRO-2.0.5+版本中,交叉决策表支持从外部Excel中导入。Excel可以按照URULE中的要求定义好交叉决策表,然后就可以直接导入,这样可以大大减轻交叉决策表定义的工作量,大幅提高工作效率。比如下面的Excel文件(点击此处下载此Excel文件):

导入到URULE中的效果如下:

        可以看到,Excel在定义交叉决策表时同样支持横向和纵向两个维度多层条件配置,这与URULE中的交叉决策表功能功能一致。在Excel中定义要导入到URULE的交叉决策表时需要注意以下几点:

  1. 交叉表左上角单元格一定要合并起来,否则将出现错误,如下图所示:

    左上角单元格合并后,可以输入具体内容,这些内容在导入到URULE后就变成交叉表的表头,在导入时,URULE就是根据这里的单元格合并情况来区分横纵向条件的,所以正确的合并左上角的交叉单元格是定义合法交叉决策表的先决条件。
  2. 对于横纵向条件的第一个单元格里,要为这个单元格添加批注,用以说明该条件行或列所绑定的变量或参数对象,如下图所示:

    需要注意的是,在定义要绑定的参数或具体变量时,一定要保证该参数或具体变量能在当前项目中找到,否则将导入失败。比如上图中的“会员.是否有房”就是一个变量,这个变量就需要在项目中定义好,如下图所示:
  3. 在定义横向或纵向条件单元格里具体内容时,可不写等于号;比如上图中的横向列条件都没有比较符,所以就表示等于。需要特别指出的是,多条件不支持括号,不能用括号把多个条件连接。
  4. 对于横向及纵向条件交叉后单元格值只支持字符串、数字之类简单值,不支持引用别的参数、变量或调用方法等复杂类型的值。


       定义好Excel后,就可以点击交叉决策表编辑器工具栏上的将定义的Excel导入到URULE当中。

Labels
  • No labels