Ronald,
Yes, this is one way (I would say probably the preferred way) of doing
it.
For BigDecimals, drools will use equals() method.
Look at the BigDecimalFactory class for details.
[]s
Edson
2007/7/9, Ronald R. DiFrango <ron.difrango(a)gmail.com>:
OK, I think I found it and here is what the rule could look like:
rule "Repayment Code Requires Approval"
salience 60
when
repaymentCode : RepaymentCode( code == "MD", matchApprv ==
"Y" )
mdOutput : ModelDiscrepancyOutput( $amt1 : sumRTVQty, sumCmAndRnr
== $amt1)
then
System.out.println("Repayment Code Requires Approval");
processMDAdjustments(drools.getWorkingMemory ().getQueryResults(
"MD Adjustments" ), StatusConstants.APPROVAL);
System.out.println("mdOutput: " + mdOutput);
end
Now my question is, how does Drools handle these objects and the
comparison because the underlying objects are BigDecimal?
On 7/9/07, Ronald R. DiFrango <ron.difrango(a)gmail.com> wrote:
>
> All,
>
> I have the following rule:
>
> rule "Repayment Code Requires Approval"
> salience 60
>
> when
> repaymentCode : RepaymentCode( code == "MD", matchApprv ==
"Y" )
>
> mdOutput : ModelDiscrepancyOutput( $amt1 : sumRTVQty, $amt2 :
> sumCmAndRnr)
> eval($amt1.doubleValue() == $amt2.doubleValue())
> then
> System.out.println("Repayment Code Requires Approval");
> processMDAdjustments(drools.getWorkingMemory().getQueryResults(
> "MD Adjustments" ), StatusConstants.APPROVAL);
> System.out.println("mdOutput: " + mdOutput);
> end
>
> If I remember correctly, there was going to be an update to the rules
> language that would allow me to eliminate the eval. Is this true and if so
> what is the syntax that accomplishes this?
>
> Ron
>
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
Software Engineer - JBoss Rules Core Developer
Office: +55 11 3529-6000
Mobile: +55 11 9287-5646
JBoss, a division of Red Hat @
www.jboss.com