1

我一直在尝试 ilog jrules 一段时间。我对规则覆盖功能特别感兴趣,尽管有纯粹的 IRL 方法来创建层次结构并以编程方式覆盖规则。我想使用规则工作室来覆盖规则,而不是在 IRL 中编写它。

在规则工作室的规则属性窗口中,有一个选项可以指定要覆盖的规则,但我没有找到任何地方提供用于为规则做出覆盖决策的条件。

任何人都可以对此有所了解吗?我在哪里添加用于覆盖规则的条件?还是我必须以 IRL 编程方式本身来做?

4

1 回答 1

1

如果在运行时在同一规则任务中选择了这些规则,则规则可以覆盖一个或多个其他规则。

假设您有两条规则 A 和 B。如果您在忠诚度计划中达到黄金级别,则 A 是授予您一般折扣的规则:

规则 A:

if
    the status of 'the customer' is gold
then
    add a 4% discount, reason: "Gold membership"

对于德国市场,规则 B 应以 5% 的折扣覆盖此规则:

规则 B:

if
    the status of 'the customer' is gold
    and the home country of 'the customer' is Germany
then
    add a 5% discount, reason: "German loyalty program: gold status"

规则 B 的属性必须指定规则 A 应该被覆盖(在属性中:覆盖的规则:[规则 A])。如果两个规则都可以执行,则仅选择规则 B,因为“覆盖规则”属性。规则 A 将被覆盖,这意味着在运行时在同一个规则任务中选择了两个规则。

有关更多信息,请查看文档

于 2012-03-09T13:21:21.550 回答