私は2つのルールを持つdrlファイルを持っています
最初のルールは属性を更新します。たとえば、ある条件に基づいて属性bを10に更新します。
2番目のルールには、bが10に等しくない値のチェックがあります。10に等しくない値のエラーをログに記録します。
b値はルール1で10に更新されます。ただし、2番目のルールでは、更新された値を使用せず、エラーをログに記録します。
2番目のルールで更新されたb値を使用する方法はありますか?変更を使用しようとしましたが、それでもエラーがログに記録されます。
私は2つのルールを持つdrlファイルを持っています
最初のルールは属性を更新します。たとえば、ある条件に基づいて属性bを10に更新します。
2番目のルールには、bが10に等しくない値のチェックがあります。10に等しくない値のエラーをログに記録します。
b値はルール1で10に更新されます。ただし、2番目のルールでは、更新された値を使用せず、エラーをログに記録します。
2番目のルールで更新されたb値を使用する方法はありますか?変更を使用しようとしましたが、それでもエラーがログに記録されます。
「変更」-キーワードは正しいことです。正確なエラーを投稿していただけますか?たぶん、これは単なる構文上の問題です。modifyキーワードは、作業メモリーの変更についてエンジンに通知するために使用されます。例:
rule "First Rule"
dialect "mvel"
when
// conditions for the first rule
$obj : MyObject()
then
// modify attribute of the object
modify($obj){number = 10 };
end