我是Drools的新手,并且正在探索能力流氓决策表。我已经下载了Drools 6.2.0示例并修改了为决策表提供的示例。在那里我想要删除政策条件,如下图所示
此处策略只需要是结果对象,但我遇到错误。
text =规则编译错误策略无法解析或不是 字段
我不确定在第一个“行动”专栏下写什么来使其发挥作用,因为我尝试了不同的值,例如政策:政策,政策等。
以下是我为上述决策表布局收到的drl输出。
// rule values at C10, header at C5
rule "Pricing bracket_10"
when
Driver(age >= 18, age <= 24, locationRiskProfile == "LOW", priorClaims == "1")
then
policy.setBasePrice(450);
end
我曾尝试检查文档,但我无法找到任何方法使其正常工作。请注意,我没有在示例的源代码中修改任何内容。只更改excel中的决策表布局。
任何指针都会有所帮助。
答案 0 :(得分:3)
您需要将类策略的对象绑定到变量策略。一种可能性是插入Policy对象,并使用它具有模式。 DRL中的规则应如下所示:
rule "Pricing bracket_10"
when
Driver( age >= 18, age <= 24, locationRiskProfile == "LOW", priorClaims == "1")
policy: Policy()
then
policy.setBasePrice(450);
end
在决策表中,您可以使用条件列,如下所示:
CONDITION
policy: Policy()
/*$param*/
match a Policy fact
x
你需要一个&#39; x&#39;在每一行中,或加入单元格以使用单个&#39; x&#39;。