You'll have to provide one full set of $acc.transaction values (indicating class and relevant field values) where you think the rule should fire, but doesnt, for people to be able to check what's going on.
Also, it is necessary to know how the types of Account.transactions (List<???>), Transaction and RentTransaction are related. -W On 7/14/09, Richard Sherman <[email protected]> wrote: > First I'm new to drools and secondly where I'm working we're using version > 4.0.7. > > I have a list of accounts and each account contains a list of transactions. > I wish to accumulate charge transactions and compare them to an accumulation > of payment transactions for a given time period (such as the last month). > And it gets slightly more awkward in that if a payment transaction is of a > certain type it needs to be converted from a 4 weekly figure to a monthly > figure ( using / 4 / 7 * 365 / 12). I've tried to use structures as follows > but they are causing the then part of the rule never to fire. > > rule "Account in arrears" > salience 10 > no-loop > when > $acc : Account( // balance between £500 and £1000 > accountBalanceInPence >= 50000 && > accountBalanceInPence <= 100000 > ) > > $s : MessageInfo( accountNumber == $acc.accountNumber ) > > Number($charges : intValue) from > accumulate( > (Transaction( > transactionDate > oneMonthAgo && > amountInPence > 0 && > $value : amountInPence) > from $acc.transactions), > sum($value) > ) > > Number($adjustment : intValue) from > accumulate( > (Transaction( > transactionDate > oneMonthAgo && > amountInPence < 0 && > transactionCode == "Type 1" && > $value : amountInPence) > from $acc.transactions), > sum(($value / 4 / 7 * 365 / 12) - $value) > ) > > > Number( intValue > ($charges + $adjustment)) from > accumulate( > (RentTransaction > (transactionDate > oneMonthAgo > $value : amountInPence) > from $acc.transactions), > sum($value) > ) > > then > $s.setMessage( "Account in arrears" ); > update($s); // flag update > end > > Thanks > Richard > > ________________________________ > Beyond Hotmail - see what else you can do with Windows Live. Find out more. > _______________________________________________ > 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
