I have looked at my expression and tried to write it in a different way, with a "pick/match" expression. To do this I have taken what I had written bit by bit and found out what my error was.
if ([Contrat] = 'CONTRAT MSN SFR', 'OK', 'NOK') => that looks for the chain of character containing 'CONTRAT MSN SFR', when I should have been looking for 'CONTRAT NSN SFR'
A small error in typing that makes a great difference, but that easy to find wghen one does not know whether I was looking for a syntax error or a error of logic. That's the pleasure of breaking a new tool I guess.