当前位置: 首页 > 知识库问答 >
问题:

如何在基于电子表格的drools决策表中触发多个规则?

秋飞鸾
2023-03-14

因此,如果输入条件是TRUEFALSEFALSETRUEFALSE,那么有没有什么方法可以同时触发第一个规则和第二个规则,并在列表中返回结果,在本例中,第一个操作是APPROVERTWO和APPROVERFOUR。

-------------------------------------------------------------------------------------------------------------------------------------------
Role    |ConditionOne   |   ConditionTwo    |   ConditionThree  |conditionFour  |conditionFive  |   Approver one        |   Approver two
-------------------------------------------------------------------------------------------------------------------------------------------
ROLEONE |   TRUE        |   FALSE           |   FALSE           |   FALSE       |   TRUE        |   APPROVERTWO         |   APPROVER SEVEN
ROLEONE |               |                   |                   |   TRUE        |   FALSE       |   APPROVERFOUR        |   -
ROLEONE |               |                   |                   |   TRUE        |   TRUE        |   APPROVERFIVE        |   -
ROLEONE |               |                   |                   |   FALSE       |   FALSE       |   APPROVERSIX         |   -
---------------------------------------------------------------------------------------------------------------------------------------------

共有1个答案

微生毅
2023-03-14

简单的解决方案是修改列“Approver One”中的操作,使其在结果列表中返回APPROVERTWO和APPROVERFOUR。

您的应用程序逻辑也可能不符合Drools的电子表格决策表的模式(或者反之亦然,这是同样的事情)。你所描述的可以很容易地表达为一个规则:

rule
when
  Fact( role == "ROLEONE",
        conditionOne == true, conditionTwo == false, conditionThree == FALSE,
        conditionFour != conditionFive )
then
  return APPROVERTWO and APPROVERFOUR in a list
end

在电子表格中表示的逻辑基于属性的单独不同值。显然,如果#2触发,则从第一行产生的规则将永远不会触发,或者相反。

 类似资料:
  • 我将Drools 6.5.0与Java1.8.0_162一起使用,所有功能都可以在单个决策表(电子表格)中正常工作,请参见下面的代码: 谢谢!!

  • 问题:我在决策表(电子表格)中有三个规则表,前两个规则表的规则定义了从第三个规则表中触发哪个规则。在第一个规则表中,根据某些条件,我更新了事实,该事实用于从第二个规则表中触发规则。在第二个规则表的ACTION列中,我更新了事实,我想根据这个更新的事实在第三个规则表中触发规则,但由于更新的事实,第一个表中的规则再次触发,然后第二个,循环继续。 每当我添加规则流组时,我都找不到在规则表中添加规则流组的

  • 在一个场景中,我们有一组主规则。其中一条规则类似于以下规则: 这些规则将向客户提供。我们希望我们的客户能够定制规则。若决定不定制,则应适用规则。自定义可以在“何时”中添加其他条件,也可以覆盖现有条件,还可以添加或修改“何时”部分。他们还可以添加到规则的“then”部分。 像这样的东西: 我们还有一些需要类似定制的决策表。 根据规则,最初建议使用“extends”,但据我所知,“extends”的作

  • 我想使用决策表实现基于流口水中较少和较大值的简单规则。 在drl中实现规则非常简单,例如: 但是我怎样才能把它翻译成流口水的决策表呢?到目前为止,我看到的所有例子都是在条件单元格中进行比较。甚至可以在值单元格中进行比较吗? 我看到的所有示例的格式如下: 但这只适用于1条规则,执行以下操作完全有不同的含义: 甚至可以执行以下操作吗? 实施这些规则的正确方式是什么?

  • 我有一个drools决策表,其中包含条件和位置类型 我的excel如下所示 设置参数的代码如下 我按要求提供的excel文件条件对象: 需求级别==$参数位置类型==$参数 当我像上面那样设置时,我得到以下错误: 创建KieBase时出错[消息[id=1,级别=错误,路径=规则.xls,行=8,列=0文本=[错误102]行8:14不匹配的输入'=='在规则“替换规则”中],消息[id=2,级别=错

  • 首先,我创建了一个基于时间的触发器,每天在凌晨1点到2点之间运行。我需要这个触发器来每次跨多个工作表运行一个函数,而不需要创建额外的函数。我想我已经基本上弄清楚了,但是我在没有运行触发器的情况下测试它,然后等到第二天看它是否工作时遇到了问题。有没有一种方法可以测试触发器,而不必为我所做的每一个更改等待24小时? 其次,当我点击run on时,它似乎没有运行我在函数运行期间需要运行的函数,即。我知道