Bonjour,

J'aurais besoin, en drools, d'utiliser une règle dans le when pour l'exclure.
Exemple :
Dans un contexte qui correspond à R1, je souhaiterais trouver uniquement R1 comme résultat. Or je me retrouve avec R1 et R3.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
rule "R1" when 
ListePlat(Type in ("Type1","Type2","Type3"))
 
then
insert (new RuleName("R1"));    
end
 
rule "R2" when 
ListePlat(Type in ("Type4","Type5","Type6"))
 
then
insert (new RuleName("R2"));    
end
 
rule "R3" when 
not RuleName(name == "R1")
not RuleName(name == "R2")
 
then
insert (new RuleName("R3"));    
end
 
rule "R4" when 
ListePlat(Type in ("Type7","Type8","Type9"))
 
then
insert (new RuleName("R4"));    
end
Or ce code ne fonctionne pas tout le temps (cela dépend peut-être de l'ordre des règles).

Merci par avance pour votre aide.