Veröffentlicht am :
Makro CREATION_INTERNE

Verwaltung von OS-Pfadvariablen

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Makro `%os_fvars` ist darauf ausgelegt, dynamisch globale SAS©-Makrovariablen zu generieren, die auf spezifische Verzeichnispfade verweisen. Es verwendet bestehende globale Makrovariablen wie `_projpre` (Projektpräfix), `_divider` (Verzeichnistrennzeichen des Betriebssystems) und `_suffix` (Pfadsuffix). Das Argument `projpath` ermöglicht die Angabe von Unterverzeichnissen, wobei die Verzeichnisebenen durch Doppelpunkte (':') getrennt sind. Diese Doppelpunkte werden dann durch das entsprechende Verzeichnistrennzeichen (`_divider`) für das aktuelle Betriebssystem ersetzt. Das Makro stellt sicher, dass die globale Makrovariable mit dem durch das Argument `mvar` angegebenen Namen erstellt wird und zeigt eine informative Notiz im SAS©-Log an, um die Erstellung und den endgültigen Wert der Variable zu bestätigen.
Datenanalyse

Type : CREATION_INTERNE


Der `DATA _NULL_`-Schritt manipuliert Zeichenketten, um einen Dateipfad basierend auf vorhandenen Makrovariablen und an das Makro übergebenen Argumenten zu konstruieren. In diesem Skript erfolgt kein direktes Lesen oder Verarbeiten von Daten aus externen Quellen oder SASHELP-Tabellen. Die Hauptausgabe ist die Erstellung einer globalen Makrovariable.

1 Codeblock
DATA STEP Data
Erklärung :
Dieser Block definiert das Makro `%os_fvars`, das zwei Argumente akzeptiert: `mvar` für den Namen der zu erstellenden globalen Makrovariable und `projpath` für den projektrelativen Pfad. Das Makro deklariert die Variable `mvar` als global. Innerhalb eines `DATA _NULL_`-Schritts bestimmt es den Pfad `path`: Wenn `projpath` leer ist, wird `path` aus `_projpre` und `_suffix` konstruiert. Andernfalls bindet es `_divider` ein und ersetzt die Zeichen ':' in `projpath` durch `_divider`. `call symput` wird dann verwendet, um die globale Makrovariable mit dem konstruierten Namen und Pfadwert zu erstellen. `PUT`-Nachrichten werden im SAS-Log generiert, um die Erstellung der Variablen zu bestätigen.
Kopiert!
1 %macro os_fvars (mvar=, projpath=);
2 
3 %** SETUP GLOBAL MACRO VARIABLE ***;
4 %global &mvar;
5 DATA _null_;
6 mvar=upcase("&mvar");
7 %IF &projpath= %THEN %DO;
8 path="&_projpre"||"&_suffix";
9 %END;
10 %ELSE %DO;
11 path="&_projpre"||"&_divider"||trim(left(tranwrd("&projpath",":","&_divider")))
12 ||"&_suffix";
13 %END;
14 call symput(mvar,trim(left(path)));
15 put "NOTE: os_fvars macro has set-up the following global macro variable:-";
16 put "NOTE: " mvar ": " path;
17 RUN;
18 
19 %mend os_fvars;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.