触发规则时禁用其他规则

时间:2020-09-24 09:34:03

标签: drools

我有三个规则 A B C

如果 A或B被解雇,则C不应被解雇

A和B可以一起发射

如何在流口水决策表中构建它?

我试图将A和B都放在同一个议程组同一个激活组中,

+--------+------------+--------------+------------------+----------+
|  Name  | auto-focus | agenda-group | activation-group | priority |
+--------+------------+--------------+------------------+----------+
| Rule_A | true       | Rule_Agenda  | Rule_Activation  |        3 |
| Rule_B | true       | Rule_Agenda  | Rule_Activation  |        2 |
| Rule_C |            |              | Rule_Activation  |        1 |
+--------+------------+--------------+------------------+----------+

这不能用作激活组替代

1 个答案:

答案 0 :(得分:0)

If either A or B is fired对您来说具有商业意义,对。因此,您需要引入表示这种有意义情况的事件,并将其插入到知识库中,规则C应该将其考虑在内。从技术上讲,您将需要降低规则C的显着性,并且可以使用logical insertions来避免打扰事件生命周期