Thanks Edson. 
 
I don't why but when i am using the below rule in my drl it's failing to compile.
Not sure if i am doing something stupid or this is an issue with environment or the drl.
 
I am attaching the drl file with the mail. The error that i get is : -
 

testTestsRulesEngine(suitability.TestsRulesEngineTest)suitability.RulesEngineException: Could not load/compile rules file: testAccumulate.drl

at suitability.RulesEngine.<init>(RulesEngine.java:39)

at suitability.TestsRulesEngine.<init>(TestsRulesEngine.java:13)

at suitability.TestsRulesEngineTest.setUp(TestsRulesEngineTest.java:72)

Caused by: java.lang.NullPointerException

at org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java:434)

at org.drools.reteoo.ReteooRuleBase.addPackage(ReteooRuleBase.java:388)

at suitability.RulesEngine.<init>(RulesEngine.java:36)

... 14 more


Regards,
Manav


From: Edson Tirelli <tirelli@post.com>
To: Manav <manav7574@yahoo.com>; Rules Users List <rules-users@lists.jboss.org>
Sent: Mon, August 16, 2010 7:46:54 PM
Subject: Re: [rules-users] Accumulate in Drools

     You can't use the cast and the method call in a regular constraint. You can use it as part of an expression. So:

 $min_score : Number ()
   from accumulate (Client (productTypeExperience.keySet contains $name,
                     $score : productTypeExperience[$name],
                     min ( ((ExperienceLevel)$score).value() ) )

     We are working on the support of free form expressions on constraints for Drools 6 (not sure we can make it for 5.2).

     Edson


2010/8/15 Manav <manav7574@yahoo.com>
Hi,
I am trying my hand at the accumulate function in Drools 5.x but the drl fails
to compile.
Not sure what's wrong with it. Please help.
This is the sample that i am working with

rule "Test Accumulate Function"
when
 $p : ProductType ($name : name)
 $min_score : Number ()
   from accumulate (Client (productTypeExperience.keySet contains $name,
                     $score :
((ExperienceLevel)productTypeExperience[$name]).value()),
              min ($score))
then
 System.out.println ("$min_score" + $min_score);
end
Regards,
Manav




_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users



--
  Edson Tirelli
  JBoss Drools Core Development
  JBoss by Red Hat @ www.jboss.com