Thanks I have number of rules between the 2 rules, I just sent, that can get other inputs that affect my decision to fire the second rule and update again the case.
for example: - at the beginning the case value is 80 - according to the first rule I update the case value to 40 - ....other rules... - according to the previous rules I need to update again the case value - add 5 to the last value (40 + 5), but I get 80 + 5, because to working memory was not updated with my updates (change to 40). Yaniv 2010/9/16 Michael Anstis <[email protected]> > This is by design > > http://lists.jboss.org/pipermail/rules-users/2009-March/008299.html > > <http://lists.jboss.org/pipermail/rules-users/2009-March/008299.html>What > are you trying to accomplish? There is no difference in the patterns you are > matching in both rules however you expect different consequences to occur > based upon salience. Based upon the foregoing link you could try changing > one rule to be in a different ruleflow-group however that could have other > consequences. > > 2010/9/16 Yaniv Itzhaki <[email protected]> > >> Hi All, >> >> >> >> I have an urgent problem which I hope someone can explain it to me and how >> it can be solved. >> >> >> >> I created 2 rules "Update 1" and "Update 2", basically the rules are the >> same, get all the CaseLog objects according to "Category" and "Value" and >> update the Case, which holds a list of CaseLogs, with a new object. >> >> >> >> Note that in the update method I am updating the working memory by >> retracting the old log and inserting the new one. >> >> >> >> Now for the problem: >> >> >> The problem is that on one hand, when I insert a new log line all rules >> without lock-on-active re-fire. On the other hand, rules with lock-on-active >> seem to disregard the addition of the new object and fire only on the lines >> that were present when their group was activated. >> >> >> >> Please see the rules below >> >> >> >> Thanks >> >> Yaniv >> >> * * >> >> *rule* "Update 1" >> >> *salience* 4 >> >> *ruleflow-group* "group1" >> >> *lock-on-active* >> >> *when* >> >> $case : Case() >> >> $myLog : CaseLog( myClass == "Category", >> >> myValue == "1" ) >> >> *then* >> >> System.out.println("Logic: Update 1"); >> >> $case.update($myLog,40.0,*null*); >> >> *end* >> >> *rule* "Update 2" >> >> *salience* 0 >> >> *ruleflow-group* "group1" >> >> *lock-on-active* >> >> *when* >> >> $case : Case() >> >> $myLog : CaseLog( myClass == "Category", >> >> myValue == "1", $score : myScore ) >> >> *then* >> >> System.out.println("Logic: Update 2 " + $score + 5.0); >> >> $case.update($myLog,$score + 5,*null*); >> >> *end* >> >> _______________________________________________ >> rules-users mailing list >> [email protected] >> https://lists.jboss.org/mailman/listinfo/rules-users >> >> > > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users > >
_______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
