News Artikel Foren Join Projekte List Links Random Über Redscope Previous Next Startseite › Foren › Allgemeine Fragen zu SAS Alle globalen Variablen auf Null bzw Leerstring setzen 29 June, 2010 - 11:23 — SAS-Fidi Gibt es eine Möglichkeit alle globalen Variablen auf Null bzw Leerstring zu setzen, ohne sie einzelnd der Reihe nach anzusprechen? Das Ganze ist gedacht, um vor dem erneuten Aufruf mehrerer Macros das Programm wieder in den Anfangszustand zu versetzen. VG SAS-Fidi Foren: Allgemeine Fragen zu SAS Log in or register to post comments Eine oder abzählbar viele 29 June, 2010 - 12:17 — Chris86 Eine oder abzählbar viele Makrovariablen kann man wie folgt zurücksetzen/löschen. %LET test = 11; %SYMDEL test; %PUT _global_ ; Log in or register to post comments Rückblickend erscheint es mir 20 July, 2010 - 10:11 — SAS-Fidi Rückblickend erscheint es mir nun doch zu gefährlich alle globalen Variablen auf einmal auf einen Standardwert zu setzen. Hab zuviel Angst, daß ich mir damit wichtige Variablen kille. Habe sie jetzt doch einzelnd mit %symdel auf ihren Anfangswert gesetzt. VG SAS-Fidi Log in or register to post comments Query auf dictionary.macros 30 June, 2010 - 10:57 — AlexK Hallo SAS-Fidi, man könnte das mit einer Abfrage auf dictionary.macros machen. Ich bin mir nur nicht sicher, ob bestimmte SAS-Prozeduren (außer SQL, deren Variablen ich unten explizit ausschließe) weitere globale Variablen anlegen können, mit denen man ins Gehege kommen könnte. proc sql noprint; select Name into :GlobalMacVars separated by ' ' from dictionary.macros where Scope = 'GLOBAL' and substr( Name, 1, 3 ) not in ('SQL', 'SYS') ; quit; %put &GlobalMacVars ; %symdel &GlobalMacVars; Beste Grüße Alex K. Log in or register to post comments