proc cas;
/* 1. Initialisation */
sessionProp.addFmtLib / fmtLibName="MesFormats" replace=true;
/* 2. Création de la Version 1 du format */
sessionProp.addFormat /
fmtLibName="MesFormats", fmtName="AlerteStock",
ranges={"low - high = 'Pas de statut'"};
print "--- Tentative de modification avec replace=FALSE ---";
/* 3. Tentative d'écrasement sans forcer le remplacement */
/* Utilisation de try/catch pour capturer l'erreur proprement */
try
sessionProp.addFormat /
fmtLibName="MesFormats", fmtName="AlerteStock",
replace=false, /* <--- Interdit l'écrasement */
ranges={"low - high = 'Nouveau statut'"};
catch e;
print "ERREUR CAPTURÉE : " e.message;
end_try;
print "--- Modification forcée avec replace=TRUE ---";
/* 4. Mise à jour réussie (Hot Swap) */
sessionProp.addFormat /
fmtLibName="MesFormats", fmtName="AlerteStock",
replace=true, /* <--- Autorise la mise à jour */
ranges={"low -< 50 = 'Urgent'", "50 - high = 'OK'"};
/* Vérification sur les données */
table.fetch /
table={caslib="casuser", name="produits"}
format={Quantite="AlerteStock."};
quit;
sessionProp