SLink: SAS-Programme in Eclipse entwickeln

Der Titel klingt für die / den eine(n) oder andere(n) sicherlich verheißungsvoll. Um keine unrealistischen Erwartung zu wecken, sei daher gleich zu Beginn der Kollege zitiert, der das hier vorgestellte Tool entwickelt hat. Der Kollege ist Thomas Vater von anaxima und die Einordnung seines Tools: “This is coffee-break programming – literally – so do not expect too much from it.�

Aber trotz „coffee-break programming“: Sein Tool namens SLink ist ein sehr interessanter Versuch, Grundfunktionen einer SAS-Entwicklungsumgebung auf Basis der bekannten Entwicklungsumgebung Eclipse zur Verfügung zu stellen.

Diese Grundfunktionen sind:

  • das Anlegen, Erfassen und Bearbeiten von Base-SAS- und SAS-SCL-Programmen,
  • das Ausführen dieser Programme,
  • das Ansehen von Log, Output und Compiler-Meldungen.

Was man durch Eclipse gratis dazubekommt, ist z.B. die von vielen von uns bisher schmerzlich vermisste Möglichkeit, durch Nutzung eines Repositories (CVS, ...) eine Versionsverwaltung von SAS-Programmen aufzubauen.

Da dieser Artikel nur als Verweis auf SLink gedacht ist, soll im folgenden lediglich die Installation und das Ausführen eines einfachen Beispielprogramms beschrieben werden. SLink selbst einschließlich einer ausführlichen Dokumentation gibt's auf der Web-Seite von SLink.

Die Installation von Eclipse mit SLink ist denkbar einfach. In Stichworten:

  • Die aktuelle Eclipse-Version (z.Zt. 3.1.2) als ZIP-Archiv von http://www.eclipse.org herunterladen,
  • dann die aktuelle SLink-Version (z.Zt. 0.5.1) von der Web-Seite von SLink.
  • Eclipse in ein beliebiges Verzeichnis entzippen und
  • SLink in das Installationsverzeichnis von Eclipse entzippen, so dass SLink als Plugin im Eclipse-Verzeichnis /plugin steht. (Achtung: Slink bringt das Verzeichnis „plugin“ nochmal mit.)

Plugin-Verzeichnis

Nun ist Eclipse mit SLink als Plugin aufrufbar - durch Ausführen von „eclipse.exe“ aus dem Installationsverzeichnis von Eclipse.

Unter dem Menüpunkt "Windows - Preferences" muß nun die Konfiguration von SLink angepaßt werden:

Konfiguration

Mit "File - New Project" kann jetzt ein neues SLink-Projekt angelegt werden (Projekttyp "anaxima SLink - SLink Project"). In diesem Projekt (ggf. auch in zuvor angelegten Unterverzeichnissen) werden dann mit "File - New - File" SAS- oder SCL-Programme angelegt, oder mit den einschlägigen Eclipse-Funktionen existierende Programme importiert. Zum Arbeiten in SLink-Projekten sollte man den "SLink Session Explorer" verwenden (im Menü Window - Show View - Other ... - Slink Views / Slink Session Explorer").

Das war's. Mit dem Menüpunkt "anaxima SLink - Save and execute" können die Programme nun gestartet werden. Das Log-Fenster öffnet sich nach der Ausführung eines Programms in der unteren Hälfte des Eclipse-Fensters.

Ausführen

Mit den Buttons im Titel des Log-Fensters kann u.a. zwischen SAS-Log und -Output umgeschaltet werden.

Zu der hier beschriebenen Installationsmethode gibt es übrigens eine noch einfachere Alternative, nämlich die Installation über den Eclipse Update Manager. Diese Methode ist in den genannten SLink-Dokumentationen ausführlich beschrieben. Ich hatte mich für die hier beschriebene "manuelle" Installation entschieden, weil sie 1. lehrreicher ist :-) und 2. ich nicht auf Anhieb gefunden hatte, wo ich dem Eclipse Update Manager den Proxy vorgeben konnte, über den er eine Internet-Verbindung herstellen soll.

Bevor ich zum Schluß komme, noch zwei Hinweise auf kleinere Hürden bzw. Besonderheiten, die sich bei meinen ersten Tests von SLink zeigten:

  1. Eine ungeschickte bzw. unvollständige Angabe der Ports in der SLink-Konfigurationen erforderte einen Neustart von Eclipse, bevor Änderungen angenommen wurden.
  2. SLink arbeitet mit einer SAS-Session im Hintergrund, die zwischen mehreren Ausführungen von SAS-Programmen aktiv bleibt. Dadurch erklärt sich, dass globale Optionen (z.B. nocenter) oder Titel von einem auf das andere Programm gültig bleiben und dass ein vergessenes Hochkomma die SAS-Session in bewährter Weise lahmlegt; das Beenden von „sas.exe“ im Windows Task Manager bringt’s wieder in Ordnung.

Angesichts „coffee-break programming“ sind das sicherlich verzeihliche Schwächen.

Und zum Schluss natürlich die Bitte an die SAS-Community um Feedback!

Falls sich die / der eine oder andere meiner Einschätzung, dass SLink ein interessanter Lösungsansatz ist, anschließt, könnten wir Thomas Vater evtl. dazu überreden, an dieser Stelle zu skizzieren, wie man den Java Source Code von SLink in Eclipse importieren muss (denn SLink ist Open Source!), um zur SLink-Entwicklung beizutragen.

SAS AppDev Studio jetzt auf Basis von Eclipse?

Ich habe gehört, dass das SAS-Produkt AppDev Studio in der Version 3.2 jetzt auch teilweise auf Eclipse beruht. Das geht auch aus der Kursbeschreibung für den Kurs Entwickeln von serverseitigen Java-Anwendungen mit Eclipse hervor: "Die Java-Entwicklungsumgebung in SAS AppDev Studio 3.2 basiert auf Eclipse." Weiß jemand näheres?

Sieht spannend aus

Hallo,
der Ansatz sieht ganz spannend aus. Wir arbeiten gerade an einer Umgebung, in der SAS als Data Warehouse und Eclipse Programmierumgebung für Clients dienen. Leider kenne ich mich "nur" mit SAS aus, aber ich schaue mir das mal gemeinsam mit meinem Kollegen aus der Softwareentwicklung an. Sobald wir etwas rumgetestet haben, melde ich mich gerne wieder.
Dubravko Dolic (www.komdat.com)

Zu Eclipse s.a. ...

Hallo Herr Dolic,

zu SAS + Eclipse gibt's auch diesen Thread: Java-Anwendungen mit SAS-Zugriff in Eclipse entwickeln.

Gruß S.F.