【问题标题】:How to run technical rule in IBM ODM如何在 IBM ODM 中运行技术规则
【发布时间】:2014-09-01 05:46:49
【问题描述】:

我想知道,我们应该如何执行IBM ODM技术规则中写的规则。 我正在使用 ODM V8.0.1。我已经尝试如下。

  1. 我创建了一个类名为 Courier.java 的 XOM

    公共类快递{ 私人字符串快递员类型; 私人 int 距离;

    使用 getter 和 setter

    }

  2. 我创建了一个添加此 XOM 的规则项目并创建了相应的 BOM。

  3. 我已将 Courier 对象添加为 IN_OUT 规则集参数,名称为“courier”
  4. 然后用下面的代码创建了一个技术规则

    当{ 库尔:快递(); }

    然后{ note("Courier Object Check 满足"); }

  5. 创建了一个规则流,其中只有一个规则任务指向上述技术规则。

  6. 然后我运行这个规则流

    • 运行方式 --> 运行配置

      • 在“运行配置”对话框中,编写下面的函数来创建快递对象和
        运行配置。

      com.seldart.Courier cour=new com.seldart.Courier(); 回程;

      Ruleflow 执行了 2 秒,但 note() 方法中的语句没有执行
      打印在控制台中。

我不确定,是规则流没有选择技术规则本身运行还是无法识别快递对象?请指导我以正确的方式执行此技术规则。谢谢。

【问题讨论】:

    标签: rule ibm-odm


    【解决方案1】:

    我认为您必须将 courier 规则集参数显式添加到工作内存中,例如在 Start NodeInitial Action 中你的规则流。

    例如,在 IRL 中:

    insert courier;
    

    【讨论】:

      【解决方案2】:

      简单地说,首先为您在 B2X 中的功能创建一个动作表达。这样,它就对项目和引用中的所有规则对象“可见”了。

      其次,尝试创建一个操作规则并用它引用这个新的语言。

      第三,创建一个规则流来编排这个动作规则。

      要执行所有这些东西,请尝试模拟规则集或使用 ILOG/IBM JRules API 导出和运行 jar 包。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-18
        • 1970-01-01
        相关资源
        最近更新 更多