Publié le :
Macro SASHELP

Macro de recherche de macros par préfixe

Ce code est également disponible en : Deutsch Español
La macro `AHGurlMacros` prend deux paramètres : `startwith` (le préfixe à rechercher, par défaut 'AHGurl') et `into` (le nom de la macro-variable dans laquelle stocker la liste des macros trouvées, par défaut 'AHGmacs'). Elle utilise `PROC SQL` pour interroger la vue système `sashelp.vmacro`, filtrant les macros dont le nom commence par la chaîne spécifiée dans `startwith` (la comparaison est insensible à la casse grâce à `%upcase`). Les noms des macros correspondantes sont ensuite stockés dans la macro-variable spécifiée par `into`, séparés par des espaces. Cette macro est utile pour l'introspection de l'environnement SAS© et la gestion dynamique des macros.
Analyse des données

Type : SASHELP


Le script interroge la vue système `sashelp.vmacro`, qui fournit des métadonnées sur les macros SAS compilées et disponibles dans la session courante.

1 Bloc de code
MACRO DEFINITION / PROC SQL
Explication :
Ce bloc définit la macro `AHGurlMacros` avec deux paramètres. À l'intérieur, `PROC SQL` est utilisée pour sélectionner la colonne `name` (nom de la macro) de la table `sashelp.vmacro`. La clause `where` filtre les enregistrements pour inclure uniquement les macros dont le nom commence par la valeur du paramètre `startwith` (après conversion en majuscules pour une recherche insensible à la casse). Les noms de macros trouvés sont ensuite concaténés dans la macro-variable spécifiée par le paramètre `into`, chaque nom étant séparé par un espace.
Copié !
1%macro AHGurlMacros(startwith=AHGurl,into=AHGmacs);
2 PROC SQL noprint;
3 select name into :&into separated BY ' '
4 from sashelp.vmacro
5 where index(name,%upcase("&startwith"))=1
6 ;QUIT;
7%mend;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.