Hi,

I've got an other problem with an eval function.
I will try to discribe the path to the error.

I've got a repository where some people can put rules with .drl extension.
My program is listing this repository and execute every rule in this repository.

At the begining, I've got a 'PatientDto' who have a property :
int nbFactRisque;
(with getters and setters)

Some rules increments this number.

In the last rule (the rules are executed in alphabetic mode) I'm testing this number like this :

rule "RisqueNormal"
    when
        $patient : PatientDto()
        eval( $patient.getNbFactRisque() == 0)
    then
        $patient.addDonnees( Constants.CLE_RISQUEPATIENT, Constants.RISQUE_NORMAL );
        System.out.println("RisqueNormal vérifié." + $patient.getNbFactRisque() + "Facteurs.");
end

Here's my problem :
The 'Then' traitement is always executed so the eval always think that
$patient.getNbFactRisque() is equal to 0.
But the system.out.println() show me that
$patient.getNbFactRisque()  = 2 !

Here's the output : "RisqueNormal vérifié.2Facteurs.".

Perhaps I did something wrong ? Can someone help me ?
Thank you.