Edson,

Dulp...you just made me realize what the issue is.  Stupid Developer!

Thanks!

Ron

On Jan 11, 2008 2:04 PM, Edson Tirelli <tirelli@post.com > wrote:

   Ronald,

   you are doing:

ArrayList( size == 0 )

   Am I missing anything?

   []s
   Edson

2008/1/11, Ronald R. DiFrango < ron.difrango@gmail.com>:
All,

I have the following rule which uses the collect function:

rule "Invalid RR Line"
    salience 100
   
    when
        rrDetailLine : DetailLine(detailKeyRecNo:keyRecNo != null, lineNumber != null )
        rrHeader : ArrayList( size == 0 ) from collect(RrHeader( keyRecNo != detailKeyRecNo ))
    then
        // logger.debug("Invalid RR Line: " + rrHeader.size());
        logger.debug("Invalid RR Line: " + rrDetailLine.getKeyRecNo());
        logger.debug("Invalid RR Line: " + rrDetailLine.getLineNumber());
        drools.halt();
end

What I am seeing is that if I only have 1 RrHeader in working memory this rule fails.  Th reason I know that there is an RrHeader object is that I change the rule to the following:

rule "Invalid RR Line"
    salience 100
   
    when
        rrDetailLine : DetailLine(detailKeyRecNo:keyRecNo != null, lineNumber != null )
        rrHeader : RrHeader( keyRecNo != detailKeyRecNo )
    then
        // logger.debug("Invalid RR Line: " + rrHeader.size());
        logger.debug("Invalid RR Line: " + rrDetailLine.getKeyRecNo());
        logger.debug("Invalid RR Line: " + rrDetailLine.getLineNumber());
        drools.halt();

end

And it worked just fine.

Thoughts?

Ron

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




--
  Edson Tirelli
  JBoss Drools Core Development
  Office: +55 11 3529-6000
  Mobile: +55 11 9287-5646
  JBoss, a division of Red Hat @ www.jboss.com