Michael DELIQUE a écrit:re,
retire le @iserror et teste chaque partie de ta formule séparement
ok je vais essayer et je fais un retour
Tmp := @DbColumn("" : "NoCache"; ""; "(Numfichcom)"; 1);
Numero := @If(Tmp = "" | @IsError(Tmp) ; "001";
@TextToNumber(@Right(@Subset(Tmp; 1); 3)) < 9; "00" + @Text(@TextToNumber(@Right(@Subset(Tmp; 1); 3)) + 1);
@TextToNumber(@Right(@Subset(Tmp; 1); 3)) < 99; "0" + @Text(@TextToNumber(@Right(@Subset(Tmp; 1); 3)) + 1);
@Text(@TextToNumber(@Right(@Subset(Tmp; 1); 3)) + 1));
REM {Le champ est calculé avec calcul après validation et non calculé à la création, ainsi il est réévalué au moment de l'enregistrement. Ceci permet d'éviter des doublons si création simultanée par 2 personnes. Par contre, il faut le calculer seulement lors de la création du document. @IsNewDoc n'est pas utilisable (agent de création)};
@If(Num= "" & @IsDocBeingSaved;Numero;Num)