zoukankan      html  css  js  c++  java
  • 规则编辑器

    业务规则编辑器的由来

        所谓的业务规则编辑器就是把业务上面的规则用简单的语言写出来,写出来的规则要比较简单易懂,最好是像口语说明一样,而编写的过程也要比较简便,像word那样就最好,当然这些规则都应该是程序可以直接解释的,不要再经过程序员“翻译”为机器语言。
        为了达到这个目的,必要的操作提示是很必要的。
        下面以某工厂的基本工资公式为例说明:
    就职状态
    实发基本工资
    转正
    1310/月工作天数*转正前天数+基本工资/月工作天数*转正后天数 
    其他
    基本工资/月工作天数*实际出勤天数

        上述公式中,实发基本工资是根据企业的制度而编写的,这是经常变化的因素,大部分的工资系统都会由上面的逻辑变成可编辑的公式,这样就算工厂的工资计算工式不断发生变化, 程序是不需要修改的。这样的做法也是客户喜欢的做法,财务人员一般都对Excel非常熟悉,他们会认为“做成像Excel那样就行,很简单”,事实上,做成Excel的功能并不简单,业务程序常常不能直接调用Excel来实现这些功能,因为这相当于要求客户一定要安装Excel,导致很多的费用。

        由此,做一个规则编辑器就可以比较好地解决问题。
     
    IBM的规则编辑器
         IBM的ILog规则引擎,是一个非常成功的规则引擎,其规则编辑器也很成功,很简单易用,直接给客户使用都没问题。

    如上图所示,规则编辑器是一个带有大量提示的编辑框,这类似于我们常常使用的编程工具,如VS2010等,但规则编辑器的编写约束和提示都比IDE多,这是给普通用户使用的,不是给软件开发工程师使用,所以操作一定要简单,提示要多,输入控制也比较多。
        不过,编辑器是很好,但要集成到软件公司的产品中,那就相当的有难度,主要是价格过高,架构过于复杂。
        
    CKRule的规则编辑器
        Ckrule的规则编辑器完全由C#编写,填补了.Net规则编辑器的空白,为小型项目提供了很简单高效的解决方案。

    Ckrule规则编辑器有如下关键特性:
    1,支持嵌套多层IF-ELSE-THEN
           常见的规则编辑器只有一导的IF-ELSE-THEN,但如果IF下面要再来一个IF,就比较困难了。Ckrule完全解决了这个问题。
    2,对象及方法无限扩展
            Ckrule规则编辑器的支持使用的对象和方法,在 Ckrule中编辑和修改后,可以使用所有的.net API,编辑完成之后,规则编辑器即时读取。
    3,支持智能提醒
            支持输入提醒和同类型属性提醒,输入完一个内容按空白键就会提示下一个输入内容。
    4,支持样式显示
            多层嵌套时,各层之间的如果否则那么等,会有不同的缩进,界面样式非常清新。
    综上:Ckrule规则编辑器提供了非常廉价和有效的方案,让你的业务系统快速集成业务规则编辑功能。大大提高系统的灵活度。
  • 相关阅读:
    高可用网站多点部署架构实战经验总结
    使用阿里云发送邮件完美解决 端口 25 465
    阿里云 SSL 证书 总结
    支付宝支付接入流程
    阿里云服务器ECS的环境部署和安装
    对接 第三方物流APP 手机版
    智付支付接入心得
    二次开发本地配置域名
    从1到n整数中1出现的次数:O(logn)算法
    MongoDB——增删改查
  • 原文地址:https://www.cnblogs.com/fubeibei/p/3940491.html
Copyright © 2011-2022 走看看