我需要计算满足工作记忆中某个约束的事实数量,然后在事实数量超过某个阈值时触发规则。我尝试了下面的内容,但它抱怨输入不匹配' $ cnt'在规则" Rule1"
rule Rule1
when
accumulate ( AFact ( code == "XXXX" ); $cnt : count(1) ; $cnt > 1 )
then
// fire
end
任何有助于获得正确语法的帮助将不胜感激。谢谢!
答案 0 :(得分:0)
累积的条件元素(正在使用)仅在Drools 5.4及更高版本中可用 - 您必须使用5.3.0或更早版本。
您可以使用旧格式的累积,可以作为from
Number( intValue > 1 )
from accumulate( AFact ( code == "XXXX" ), count(1) )