
3 angles de vue sur les commentaires
avril 24, 2008Il existe trois notations différentes pour écrire des commentaires dans un programme SAS. Chacune à ses avantages et ses limites. En en prenant connaissance ici, vous pourrez faire des choix stratégiques.
1. Désactiver une instruction : un commentaire entre une étoile et un point virgule est la plus rapide des notations. Celle-ci fait usage de la particularité de la syntaxe SAS. En effet, chaque instruction se termine par un point-virgule. En ajoutant une étoile (asterisk) en tête, l’instruction est désactivée.
Lors du développement d’un programme, on est amené à suspendre certaines instructions ou à en activer ponctuellement. C’est le cas la procédure PROC PRINT, qui permet d’avoir un aperçu du contenu d’un jeu de donné.
*proc print data=cnt_pct;
*run;
Note : On n’utilisera pas cette syntaxe étoile/point-virgule :
- pour suspendre un large bloc de texte
- si les guillemets ne sont pas fermés dans le commentaire
- entre deux instructions PUT ou deux instructions CALL EXECUTE.
2. Désactiver un bloc de texte plus globales : L’étoile/point-virgule peut-être incluse dans d’autres commentaires plus larges définis pas /* */. Ainsi on peut choisir d’annoter des titres de rubriques d’un programme avec *; . Ainsi on pourra englober ces titres dans une zone de désactivation plus grande.
/*
*Calcul des fréquences;
proc freq…;
run;
*Générer une table;
proc report…;
run;
*/
Note : On pourra choisir de fermer le bloc par /***/ au lieu de */. Ainsi, en enlevant seulement le /* en début de commentaire, l’intégralité du code est réactivée et fonctionne sans que la notation de fin soit impérativement supprimée.
3. Les commentaires et le langage macro :
Les différences entre les instructions à l’intérieur et la l’extérieur d’une définition de macro : les instructions macro doivent avoir l’étoile après le symbole pourcentage à l’intérieur d’une définition de macro. On continuera à mettre l’étoile avant si l’instruction est à l’extérieur de la définition de macro. La notation /**/ ne rencontre pas de difficulté particulière.
%macro commentaires;
%*IF….;
%mend;
*%commentaires;
Le cas particulier des conditions : seul le /**/ peut-être utilisé entre un %if et un %else.
%macro commentaire;
%IF … %THEN %DO; … %END;
/* l’autre notation n’est pas possible ici*/
%ELSE …
%mend commentaire;
Une macro sans nom : la troisième méthode pour écrire un commentaire est de créer une macro sans nom.
%macro;
Mon texte est inactif ici.
%mend;
11, 12 2014LeBron ‘Instinct’ Cave Violet / Hyper Hyper-Raisin Crimson-Hyper TurquoiseNov.
Les Packers ont perdu les Seahawks à la Semaine 1, et donc les Seahawks possèdent le bris d’égalité.