Was ist SAS Enterprise Guide?

19. August 2024

SAS Enterprise Guide (SAS EG) ist eine Windows Anwendung, die sowohl ein intuitives Point- und Click-Interface für Analyse oder Datenverarbeitung bietet, als auch eine mächtige Entwicklungsumgebung zur SAS-Programmierung. Kernstück des EGs sind die sogenannten Enterprise Guide Projekte in denen Analyse- oder Verarbeitungsschritte in einem Ablauf (Prozessfluss) aneinandergereiht werden können. Dies ermöglicht einen standardisierten Ablauf zu schaffen, der immer nach dem gleichen Muster ausgeführt wird und leicht nachvollzogen werden kann. Der Code Editor verfügt über ein Syntax-Highlighting und über begrenzte Autovervollständigungsfunktionen.

Der EG war ursprünglich für SAS 9 Umgebungen vorgesehen, mittlerweile gibt es aber auch Möglichkeiten ihn mit SAS Viya 3.5 und sogar SAS Viya 4 zu verwenden.

Oberfläche SAS Enterprise Guide 8.3

Oberflaeche Oliver Pitzius

Die Anordnung der Oberfläche ist größtenteils frei konfigurierbar. Oben ist die von mir bevorzugte Anordnung zu sehen. Auf der linken Seite finden sich (in meiner Ansicht):

git Oliver Pitzius

Anwendungsroutinen Oliver Pitzius

Anbindung etwaiger git-Repositories zur Codeversionierung

Die Übersicht diverser Anwendungsroutinen.

Diese lassen sich in Enterprise Guide Projekten sequenziell anordnen und ausführen. Die meisten dieser Routinen beziehen sich auf statistische Analysemethoden, es finden sich allerdings auch Visualisierungsmöglichkeiten und Datenaufbereitungswerkzeuge.

Die Projektübersicht in der die angeordneten Analyse- oder Verarbeitungsschritte zu sehen sind. Die Ausführung erfolgt von links nach rechts.

Projekt Oliver Pitzius

In der Mitte des EGs werden in der Regel SAS Codes, das Log der ausgeführter Codes oder EG-Projekte, sowie deren Ergebnisse angezeigt.

SAS Code

Hier handelt es sich entweder um von Anwendungsroutinen generierten Code (wie im Screenshot unten) oder aber um selbst geschriebenen SAS Code.

SAS Code Oliver Pitzius

SAS Log

Im SAS Log erscheinen nach der Ausführung eines Codes hiweise zur erfolgreichen Ausführung oder Fehlermeldungen die einen Hinweis auf den Grund des Abbruchs liefern.

SAS Log Oliver Pitzius

Ergebnisse

Anwendungsroutinen geben in der Regel (soweit nicht anders konfigueriert oder programmiert) Ergebnisseberichte oder Grafiken zurück. Bei den Ergebnissen sind unter anderen Ausgaben als HTML, PDF und Excel möglich.

Ergebnisse Oliver Pitzius

Ausgabedaten

Sollte eine Verarbeitung als Ziel die Erstellung einer SAS-Tabelle haben, befindet sich diese unter dem Writer Ausgabedaten.

Ausgabedaten Oliver Pitzius

Serveransicht

Auf der rechten Seite habe ich die Übersicht der SAS-Server und Ordnerstrukturen auf dem jeweiligen Server untergebracht.

Serveransicht Oliver Pitzius

Diese bietet auch Zugriff auf die allokierten SAS-Bibliotheken und die sich dort befinden SAS-Tabellen.

Nützliche Funktionen des SAS Enterprise Guides

Nachdem ich nun eine kurze Vorstelllung der Oberfläche gemacht habe, würde ich gerne ein paar nützliche Funktionen vorstellen.

Anwendungsroutinen

Diese Bausteine von SAS-EG Projekten bieten die Möglichkeit per Drag und Drop Analysen zu erstellen.

ARotinteWizard Oliver Pitzius

Dabei werden die Variablen einer Tabelle den entsprechenden Rollen für die Routine zugewiesen. Nach der Ausführung kann man sich im Writer Code, den von der Routine erstellen, SAS-Code ansehen und kopieren.

ARoutineCode Oliver Pitzius

Dies ist nützlich um den Code einer Prozedur kennen zu lernen und später selbst auf Codeebene zu modifizieren.

Viewer

Unter dem Menüpunkt Extras finden sich der SAS-Makrovariablenviewer und der Systemoptions-Viewer.

Viewer Oliver Pitzius

Der Makrovariablenviewer ermöglicht es sich die derzeit im Speicher des SAS-Servers (bzw. Serverkontextes) befindlichen SAS-Makrovariablen und deren Werte anzuschauen.

Die für die SAS-Session gesetzten SAS Optionen kann man im Systemoptions-Viewer überprüfen.

Geordnete Listen

Über die Anlage einer geordneten Liste lassen sich SAS-Codes und Anwendungsroutinen in einer bestimmten Reihenfolge zur Ausführung sortieren.

GeordneteListe Oliver Pitzius

Wird die Liste ausgeführt, wird diese sequenziell vom SAS-Server abgearbeitet. Dies kann als Alternative zum Bau eines Prozessflusses mit diesen Codes gesehen werden. Allerdings bieten Prozessflüsse die Möglichkeit komplexe Ausführungslogiken (z.B verschiedene Verarbeitungszweige mit Wenn-Dann Logiken) zu erstellen.

Prozessfluss-Code exportieren

Mit einem Rechtsklick auf den Prozessfluss lässt sich der gesamt Code eines Flusses exportieren.

Oliver Pitzius



Dies ist hilfreich, sollte man den Code nicht mehr manuell ausführen wollen, sondern ihn in ein regelmäßiges Scheduling übergeben wollen.
Es gibt zwar die Möglichkeit ein Projekt auch über den EG zu schedulen, diese öffnet jedoch nur den Windows Scheduler auf dem Rechner, so dass der Rechner eingeschaltet sein müsste damit das Projekt zum gewünschten Zeitpunkt automatisch ausgeführt
wird.

Schlussbemerkung

Ich persönlich bevorzuge nach wie vor den SAS Enterprise Guide gegenüber SAS Studio1. Er bietet einen immens großen Werkzeugkasten zur SAS Entwicklung und fühlt sich aufgeräumt und durchdacht an. Vermutlich ist es Gewöhnungssache ob man EG oder SAS Studio bevorzugt, insbesondere seit die meisten der EG Funktionen auch dort verfügbar sind. Dennoch zeigt, die Tatsache, dass der EG jetzt auch mit SAS Viya 4 interagieren kann, dass er weiterhin seine Anhängerschaft hat.

  1. Was ist SAS Studio? ↩︎
cross-circleCookie Consent Banner von Real Cookie Banner