[rules-users] URGENT - using lock-on-active or not

Michael Anstis michael.anstis at gmail.com
Thu Sep 16 04:32:01 EDT 2010


What if you just use salience to control the activation sequence and remove
lock-on-active?

Were you using this attribute to prevent another issue?

2010/9/16 Yaniv Itzhaki <iyaniv at gmail.com>

> 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 <michael.anstis at gmail.com>
>
> 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 <iyaniv at gmail.com>
>>
>>>  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
>>> rules-users at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/rules-users
>>>
>>>
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
>>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100916/f60ce82e/attachment.html 


More information about the rules-users mailing list