Die Daten werden dynamisch durch Ausführen des Systembefehls 'set' über die Anweisung 'filename pipe' generiert. Die Quelle ist somit keine bereits vorhandene Datei, sondern die Standardausgabe dieses Systembefehls, der die Umgebungsvariablen der Sitzung auflistet.
1 Codeblock
FILENAME
Erklärung : Diese Anweisung ordnet den Fileref '_env2ds' einer 'Pipe' zu. Sie führt den Systembefehl 'set' aus und erfasst dessen Standardausgabe, sodass sie von SAS als flache Datei gelesen werden kann.
Kopiert!
filename _env2ds pipe 'set';
1
filename _env2ds pipe 'set';
2 Codeblock
DATA STEP Data
Erklärung : Dieser DATA STEP Block liest die Daten aus der 'Pipe' _env2ds. Für jede gelesene Zeile ('input') extrahiert er den Namen der Umgebungsvariablen, indem er den Teil vor dem '='-Zeichen nimmt, und ihren Wert, indem er den Teil danach nimmt. Eine Bedingung prüft, ob der Wert nicht leer ist, bevor er zugewiesen wird. Die Variablen 'name' und 'value' werden mit vordefinierten Längen und beschreibenden Labels erstellt.
Kopiert!
data &dsout;
length name $ 40 value $ 1000;
infile _env2ds;
input;
name=scan(_infile_,1,"=");
if scan(_infile_,2,"=") NE " " then value=substr(_infile_,index(_infile_,"=")+1);
label name="Environment Variable Name"
value="Environment Variable Value"
;
run;
1
DATA &dsout;
2
LENGTH name $ 40 value $ 1000;
3
INFILE _env2ds;
4
INPUT;
5
name=scan(_infile_,1,"=");
6
IF scan(_infile_,2,"=") NE " "THEN value=substr(_infile_,index(_infile_,"=")+1);
7
label name="Environment Variable Name"
8
value="Environment Variable Value"
9
;
10
RUN;
3 Codeblock
FILENAME
Erklärung : Diese Anweisung gibt den Fileref '_env2ds' frei und schließt die zugehörige 'Pipe', was eine gute Praxis für die Ressourcenbereinigung ist.
Kopiert!
filename _env2ds clear;
1
filename _env2ds clear;
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.
Urheberrechtsinformationen : This is public domain software. No guarantee as to suitability or accuracy is given or implied. User uses this code entirely at their own risk.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.