CKRule BRMS-决策表使用说明
决策表的编辑有2个步骤,即规则包编辑、规则数据设置和发布。
1. 规则包编辑
双击CKBoot.exe打开CKRule规则引擎编辑界面。点新建,在左侧的工程窗口中,就会出现一个新的规则包。点击根结点
,可以修改规则包的名称。
1.1. 传入传出参数
双击对象库-传入传出参数,打开编辑界面,把通用格式的字段填写到界面中。
名称列所填写的内容必须符合.Net的字段命名规范,如-,空格,@等字符都不能使用,首字母不能为数字。
传入传出参数和自定义类型的定义,会影响到后面的所有编码。
与外部进行json通讯时,使用的属性名称是映射名称,如果映射名称为空时才使用名称。
1.2. 决策表定义
打开规则库-决策表定义界面。
所谓决策表,就是用表格的形式保存规则数据,以便于一下子处理大量的规则。
其执行的核心处理逻辑就是扫描每一行,检查相关单元格的值,当达到某种条件时,就执行相应的动作。
如设置停车场决策表时,要填写这个表的各列信息,包含标题,数据库字段,数据类型,逻辑类型,精度,规则等内容。其中
标题就是决策表最终显示在前端时的列标题。
数据库字段就是绑定到管理平台或其他数据库的字段。当前是绑定到管理平台上面的RoolTbl表的,该表的数据如下:
数据类型用于控制输入时使用的类型,以减少输入的差错。
逻辑类型是指条件、结论或无。设置时,条件和结论都必须存在,可以存在多个。如果存在多个条件,意思就是多个条件都成立时,就执行一个或多个结论。当代码比较复杂,不太适合这种定义时,可以直接使用结论列,填写相关的代码,而条件列则填写1==1;即可,意思为就像编辑中的if(1==1){}。
规则编写
选择结论列的脚本,点设置后弹出如下界面。
这个界面可以设置遍历时使用的脚本。
如需要获取当前行的对象时,使用Row属性,Row.Cells[“Prop1”].Value意思就是获取当前行,并且数据库名称为Prop1的单元格的值,这个值的类型为string。通过这个Row属性就可以获取所有单元格的值。
CDouble是系统内置的方法,点击界面左边的类别—扩展(15),就可以查看不同函数的用法。同时,该界面也可以直接使用.Net自身的所有API。
上面的代码的意思是,找出各个单元格的值,并转换为正确的类型,遍历传入的所有点位数据,如果点位值在区间之中,且类型为“信息”,就将信息设置为其中一个单元格的内容。
1.3. 主规则
本功能用于调用客户端编写的规则。
上面2个步骤,用于定义决策表,而主规则界面可以调用决策表逻辑。双击规则库-主规则,新增一个规则集。
在规则集中添加如下代码:
详细代码如下:
代码的作用是,读取规则管理平台中的RuleTbl的数据,初始化决策表,然后执行决策表。
2. 规则数据设置与发布
编辑规则数据和发布规则等功能都在规则管理平台中进行的。
2.1. 规则包管理
登录规则管理平台,打开规则包管理界面,找到相应的分类,右键新增规则。
点击浏览,找到刚才生成的ckp文件,系统自动加载规则包名称,填写到编码,名称上面。而字段就会拉出规则的输入输出信息。在编辑类型中,选择决策表。
2.2. 规则发布
打开规则发布界面
找到未发布的规则包,双击行记录。
在界面下部会显示该规则的相关的信息,如当前规则、服务开始时间、服务结束时间和服务类型。服务开始时间必须小于当前时间,服务结束时间必须大于当前时间,服务类型选择Json即可。然后点击发布。
2.3. 规则数据设置
打开规则数据设置界面,该界面显示所有已经发布的记录。
找到对应的规则,点击用决策表设置。弹出决策表编辑界面。
上图中,运行时机和描述都是由规则包编辑时设置的,而表格中的各列,都是决策表设置的各列。数据保存后,会按数据库字段对应的内容,保存到RoolTbl表中。
至此,一个决策表编辑完毕。
CKRule BRMS-决策表使用说明的更多相关文章
- Ckrule业务规则管理系统简介
1. 简述 Ckrule业务规则管理系统(BRMS)是一个集成的应用程序存储.管理.执行和测试的平台,允许组织定义.部署.监控和维护运营系统使用的各种复杂决策逻辑.Ckrule BRMS 独立于核 ...
- .Net规则引擎Biztalk,Workflow和CKRule的比较
微软的规则引擎 很多朋友会问,.Net平台有没有规则引擎?像Java就有很多的规则引擎,Drools,ILog都做得非常好,但.Net好像还没有哦.很多知道规则引擎,但不知道.Net的朋友都烦这个 ...
- ckrule规则编辑器在wpf中的使用
当前,ckrule的IDE和业务管理系统都是由winform开发的,规则编辑器也只提供了winform的版本,所以很多的朋友都提出意见,要有wpf的版本.wpf的界面设置和管理都更加的方便. 事实上可 ...
- 规则引擎ILog和CKRule的对比
IBM™ WebSphere™ ILOG是业界最有影响力的业务规则商业软件,它提供了最好的业务规则管理系统,在Java领域更是有广泛的成功案例.网上关于ILOG的技术资料非常多,大家都比较了解ILOG ...
- 使用CKRule规则引擎处理多变业务
1, 多变业务 开发系统时,有没有试过下面的情况,如果你试过,那可以考虑一下使用规则引擎了. 序号 问题 举例 1 业务规则来自于一个或多个表格 商店的会员积分表,停车场的计费标准,快递费的计算表,客 ...
- 使用CKRule实现PVC配方计算
1,PVC计算的基本原理 配方员设计好配方,再进行抽象提炼,会出现相对于软件而言可以理解的逻辑,如属性的概念,对厂企生成的PVC产品而言,一般都有产品大类名称,花纹,颜色,长度,宽度,厚度等概念,这对 ...
- Atitit.项目修改补丁打包工具 使用说明
Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...
- awk使用说明
原文地址:http://www.cnblogs.com/verrion/p/awk_usage.html Awk使用说明 运维必须掌握的三剑客工具:grep(文件内容过滤器),sed(数据流处理器), ...
- “我爱背单词”beta版发布与使用说明
我爱背单词BETA版本发布 第二轮迭代终于画上圆满句号,我们的“我爱背单词”beta版本已经发布. Beta版本说明 项目名称 我爱背单词 版本 Beta版 团队名称 北京航空航天大学计算机学院 拒 ...
随机推荐
- uCos 之 TaskIdle() 注意事项【worldsing笔记】
在大多OS里都存在Idle线程或任务,同样uCos也不例外,为什么估计很少有人细研究.为什么设立Idle? 能不能去了? 首先看看uCos中关于Idle的代码做个介绍: config.h里对Idle的 ...
- Cocos2d-x 重写draw方法绘制直线等图形时被遮挡覆盖问题的一种解决方案
最近在学习过程cocos2dx的过程中需要使用到绘制直线的功能,所以我就采用了引擎中 ccDrawLine 方法,然后重写 draw 方法,在该方法中绘制直线. 但是出现了一个问题,那就是绘制的图形被 ...
- 剑指OFFER之从上往下打印二叉树(九度OJ1523)
题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 输入: 输入可能包含多个测试样例,输入以EOF结束.对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, : ...
- JSon实体类快速生成插件 GsonFormat 1.2.0
写在前头:本插件只适用 android studio和 Intellij IDEA 工具,eclipse 的少年无视我吧!!! 这是一个根据JSONObject格式的字符串,自动生成实体类参数. gi ...
- MySQL通过RPM安装
以前写过一篇文章,RedHat Linux 6.1 安装MySQL,本文是从解决依赖的角度上再次描述如何在Linux下以RPM包方式安装MySQL. [root@serv01 ~]# ls /iso/ ...
- IOS 横屏中添加UIImagePickerController获取系统图片
今天写ipad的项目,然后需要调用系统相册选择图片,然后用了UIImagePickerController ,崩溃了,后来查了一下,UIImagePickerController只支持竖屏,但是... ...
- Funambol Developer's Guide 中 connector development样例的问题
今天学习Funambol的connector开发,官方文档中的样例有问题. 首先,文档中提供的maven命令不可用: mvn archetype:generate -DarchetypeGroupId ...
- POJ 1329
三角外接圆
Circle Through Three Points Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3169 Acce ...
- mysqldump备份7
http://www.cnblogs.com/ivictor/p/5505307.html 对于MySQL的备份,可分为以下两种: 1. 冷备 2. 热备 其中,冷备,顾名思义,就是将数据库关掉, ...
- perl dtrace2
http://search.cpan.org/~chrisa/Devel-DTrace-Provider-1.11/lib/Devel/DTrace/Provider.pm