]
Mario Fusco updated DROOLS-3510:
--------------------------------
Sprint: 2020 Week 01-03 (from Dec 30)
Decision table unable to generate rule for row with pattern without
constraint
------------------------------------------------------------------------------
Key: DROOLS-3510
URL:
https://issues.redhat.com/browse/DROOLS-3510
Project: Drools
Issue Type: Bug
Components: decision tables
Affects Versions: 7.15.0.Final
Reporter: Andre Piwoni
Assignee: Mario Fusco
Priority: Minor
Attachments: failingDecisionTable.xlsx
When second condition refers to a field of a variable bound in first condition and there
exists row/rule without condition constraint than decision table compiler fails to
generate rules. See attachment.
Expected rules to be generated:
{code:java}
rule "Test_1"
when
$factA:FactA(hasSomething == "true")
$numberOfFactsB: Number(this > 0, this <= 1) from accumulate(FactB(x == 1) from
$factA.listOfFactsB,count(1))
then
insert(X);
end
rule "Test_2"
when
$factA:FactA(hasSomething == "true")
$numberOfFactsB: Number(this > 1, this <= 2) from accumulate(FactB(x == 1) from
$factA.listOfFactsB,count(1))
then
insert(X);
end
rule "Test_3"
when
$factA:FactA()
$numberOfFactsB: Number(this > 2, this <= 3) from accumulate(FactB(x == 1) from
$factA.listOfFactsB,count(1))
then
insert(Y);
end
{code}
Also, there does not seem an alternative way to generate following rule using decision
table:
{code:java}
rule "Test"
when
$factA:FactA($factsB: listOfFactsB)
$numberOfFactsB: Number(this > 1) from accumulate(FactB(x == 1) from
$factsB,count(1))
then
insert(Y);
end
{code}