Bonjour,

Après plusieurs jour sde recherche j'ai détecté un comportement assez cocasse de SAS :

Exemple :

%let monextension='.xls'; /* on peut imaginer aussi du csv, txt , xlsx , dat ... */

data _null_

var1=&monextension;

call execute(param1!!param2!!var1!!param3);

run;

Lors de l'affichage de la requête dans le journal var1 va générer une double quote supplémentaire intempestive juste après cette valeur et faire cracher le compilateur. Le compilateur va en détecter un nombre impaire de quotes.

Pour ma part j'ai du saucissonner tous les éléments présents dans le call execute que j'utilise . Puis je concatène de nouveau l'ensemble avant exécution. Cela m'a permi d'éviter ce genre de plantage ...

Avez vous un avis en particulier sur ce type de comportement ?