SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse

Seit einiger Zeit steht nun fest, dass seitens der SAP keine Weiterentwicklung der von ABAP-Entwicklern bisher genutzten »ABAP Workbench« in der SAP GUI mehr zu erwarten ist. Mehrfach hat Thomas Fiedler als Verantwortlicher für die neu erschlossene Entwicklungsumgebung Eclipse IDE betont, dass es keine weiteren Funktionen und Verbesserungen für das alteingesessene Programmierwerkzeug der SE80 geben wird.

Alle zukünftigen Anstrengungen werden in die Verbesserung der Möglichkeiten in der Eclipse IDE fließen, die auch strategisch für die Entwicklung auf Basis von SAP HANA vorgesehen ist.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse
  • 160 Seiten - 01.11.2016 (Veröffentlichungsdatum) - Espresso Tutorials (Herausgeber)

In diesem Buch richte ich mich daher an Gleichgesinnte – ABAP-Entwickler, die wie ich schon in der »alten Welt« zwischen dem Data Dictionary (DDIC), dem Function Builder und der ABAP Workbench gependelt sind und sich jetzt auf eine Reise ins Ungewisse begeben.

Wagen Sie wie ich den Sprung heraus aus der bekannten Workbench, in der jedes Tastenkürzel sitzt, und hinein in eine neue Welt, die erst mal einiges an Umstellung mit sich bringt, aber auch hilfreiche Funktionen zur Erleichterung der täglichen Arbeit bereitstellt. Ich möchte Sie Schritt für Schritt an ABAP in Eclipse heranführen.

Einführung in Eclipse

Trotz bestehender Entwicklungsumgebungen für die verschiedenen genutzten Technologien hat sich die SAP dazu entschlossen, in eine weitere Entwicklungsplattform zu investieren – die Eclipse IDE. IDE steht für integrated development environment, zu Deutsch: »integrierte Entwicklungsumgebung«.

Das bedeutet, dass diese Plattform im Optimalfall alle für die Entwicklungstätigkeit notwendigen Bestandteile in sich vereint, sodass keine weiteren Anwendungen oder Hilfsmittel wie etwa ein Texteditor, ein Debugger oder auch eine Versionsverwaltung der Quelldateien benötigt werden.

Motivation der SAP für Eclipse

Für alle von der SAP bereitgestellten oder verwendeten Technologien existieren bereits die notwendigen Bordmittel oder zusätzlichen Anwendungen, um diese nutzen bzw. mit ihnen entwickeln zu können. Für ABAP-Entwickler ist das klassischerweise die ABAP Workbench, auch bekannt als »SE80«.

Für SAP Interactive Forms by Adobe (SIFbA/AIF) steht der Adobe LiveCycle Designer und für die Entwicklung von Java-Komponenten das SAP NetWeaver Development Studio (NWDS) zur Verfügung. Um mehr Flexibilität zu erreichen, ohne eine weitere SAP-eigene Plattform zu schaffen, sondern möglichst nah an bereits etablierte Entwicklungsumgebungen zu reichen, fiel die Entscheidung auf die Eclipse IDE.

Diese wurde 2001 von IBM vorgestellt und ursprünglich für die Entwicklung von Java und C/C++ bereitgestellt. Sie ist unter der Eclipse Public License (EPL), einer Open-Source-Lizenz, veröffentlicht und damit kostenfrei verfügbar.

Zur Standard-Installation von Eclipse können über die im Kapitel 2 beschriebenen Schritte die folgenden Plugins installiert werden:

  • ABAP Development Tools for SAP NetWeaver, nachfolgend mit ADT abgekürzt,
  • Modeling Tools for SAP BW powered by SAP HANA für die Business-Warehouse-Entwicklung,
  • SAP HANA Cloud Platform Tools für die Arbeit auf der SAP HANA Cloud-Plattform,
  • SAP Mobile Platform Tools für die Gateway-Entwicklung,
  • SAP HANA Tools für die SAP HANA-Entwicklung,
  • SAP HANA Cloud Integration Tools für die Prozess-Integration in SAP HANA,
  • SAP Identity Management Configuration Lifecycle Tools,
  • SAP Mobile Tools für hybride Web-Apps,
  • UI Development Toolkit for HTML5 für die SAP-UI5-Entwicklung.

Vorteile von ABAP-Entwicklung in Eclipse

Vor dem Umstieg auf die neue Entwicklungsumgebung stellen Sie sich vermutlich – genau wie ich vor einiger Zeit – die natürlicherweise aufkommenden Fragen: Was sollte besser geeignet sein für die ABAP-Entwicklung als die gute alte Workbench?

Warum sollte ich wechseln, wenn ich doch alle meine Transaktionen kenne? Welche Vorteile bietet mir die Eclipse IDE gegenüber bisher genutzten Transaktionen?

Wichtige Begriffe in Eclipse

  • Projekt: Ein Projekt bezeichnet in Eclipse klassischerweise eine Sammlung von Objekten, die thematisch zusammengehören, wie z.B. alle für eine Applikation benötigten Dateien und Quelltexte. Das für die ABAP-Entwicklung spezifische Projekt wird im folgenden Abschnitt 2.2 näher erläutert.
  • Workspace: Alle über Eclipse bearbeiteten Projekte und verwendeten Dateien werden auf dem PC des Anwenders lokal an einer Stelle gesammelt abgelegt. Dieser technische Speicherort wird Workspace genannt und von Eclipse beim Starten abgefragt.
  • Plugin: Ein Plugin ist eine in sich abgeschlossene Komponente mit bestimmten Funktionalitäten, die in Eclipse eingebunden werden kann und damit die IDE um gewünschte Funktionen erweitert. Eclipse an sich besteht nur aus einem Programm, das Plugins laden kann. Alle anderen gebotenen oder zusätzlich möglichen Funktionen werden über Plugins bereitgestellt.
  • Plattform: Die Plattform bezeichnet die »leere« Eclipse-Installation, zu der keine weiteren Plugins hinzugefügt wurden. Diese bietet neben dem genannten Laden der Plugins den Workspace und eine Benutzeroberfläche zur Bearbeitung der Projekte.
  • View: Eine View bzw. Sicht ist ein Bereich der Benutzeroberfläche, in dem Informationen zu verschiedensten Objekten und Abläufen dargestellt werden. Ein Beispiel ist der Package Explorer, der wie der Object Navigator in der ABAP Workbench (SE80) die Objektstrukturen in einem Baum darstellt und dort eine Navigation zu bestimmten Elementen ermöglicht.
  • Perspektive: Eine Perspektive fasst viele Views zu inhaltlich passenden Benutzeroberflächen zusammen. Der Benutzer kann die Anordnung der Views ändern oder auch verschiedene aus- und dafür andere einblenden.
  • Workbench: Die Workbench bildet die Arbeitsoberfläche der Eclipse IDE. In ihr werden die Perspektiven/Views und die verschiedenen Editoren zur Bearbeitung von Quelltexten oder sonstigen Objekten dargestellt.

Eclipse einrichten

Eclipse ist als eigenständige Open-Source-Entwicklungssoftware kostenlos verfügbar. Erfahren Sie in diesem Kapitel, welche Schritte notwendig sind, bevor Sie mit Eclipse in die eigene Entwicklungsarbeit einsteigen können.

In den folgenden Abschnitten stelle ich Ihnen im Detail die beiden erforderlichen Installationsschritte bis zur vollständig eingerichteten Eclipse-Software vor: Zuerst installieren wir eine Version von Eclipse auf dem lokalen Rechner und laden die benötigten Plugins herunter. Anschließend richten wir ein erstes ABAP-Projekt und eine Verbindung zu den SAP-Entwicklungssystemen ein.

Am Ende des Kapitels sind Sie in der Lage, mit dieser Entwicklungsumgebung auf Ihre SAP-Systeme zuzugreifen und sich voll und ganz der Entwicklung in Eclipse zuzuwenden.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse - Plugins
Abbildung 2.1: Zentrale Bereitstellung der Eclipse-Plugins seitens der SAP

Arbeiten mit Entwicklungsobjekten

Bei der Arbeit in der ABAP Workbench gibt es sowohl Entwicklungsobjekte, die Sie ständig nutzen, als auch solche, die nur unregelmäßig Verwendung finden. Grundsätzlich gilt, dass Sie alle Entwicklungsobjekte der ABAP Workbench auch in den ABAP Development Tools für Eclipse finden. Einige können Sie wie gewohnt anlegen und dann über einen Editor implementieren, wie z.B. Reports oder Klassen.

Andere wiederum haben in Eclipse eine eigene Oberfläche in Anlehnung an die SAP GUI-Oberfläche bekommen, wie etwa die Nachrichtenklassen. Für Strukturen wurde sogar eine eigene, unkomplizierte Syntax geschaffen, um diese komfortabel anlegen zu können (siehe Abschnitt 3.4).

Ich möchte Sie nachfolgend durch das Anlegen der üblichen Entwicklungsobjekte »Paket«, »Programm« und »Klasse« führen. Anschließend zeige ich Ihnen die Besonderheiten für Funktionsbausteine und Strukturen auf.

Entwicklungsobjekt anlegen

Alle zur Verfügung stehenden Entwicklungsobjekte werden über denselben Weg angelegt.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse - Repository-Objekte
Abbildung 3.1: Zur Verfügung stehende ABAP-Repository-Objekte

Wenn Sie nicht genau wissen, wonach Sie suchen, können Sie sich durch die Ordner klicken und nach dem gewünschten Objekt Ausschau halten. Alternativ können Sie aber auch direkt in der Suchleiste oberhalb der Ordnerstruktur einen Teil des Namens eingeben und sich die dazu passenden Objekte anzeigen lassen, ohne alles zu durchsuchen.

Hilfsmittel und nützliche Funktionen

Ein Umstieg von der ABAP-Entwicklung in der ABAP Workbench auf die ABAP Development Tools for Eclipse war keine spontane Laune der SAP, sondern geschah wie eingangs erwähnt aufgrund der neuen Anforderungen an eine zukunftsfähige Entwicklungsumgebung. Die Eclipse IDE bietet zudem standardmäßig wie auch mithilfe installierter Komponenten der ADT viele kleine Hilfsmittel und zusätzliche Funktionen, die die tägliche Arbeit des Entwicklers stark vereinfachen.

Von diesen Funktionen möchte ich Ihnen die wohl am häufigsten genutzten vorstellen. Darunter sind einige, die Ihnen aus der Entwicklung in der ABAP Workbench eines aktuellen SAP-NetWeaver-Systems (7.40 oder höher) durchaus bekannt vorkommen dürften. Andere wiederum gibt es ausschließlich in Eclipse.

Da die ABAP Workbench zudem nicht mehr weiterentwickelt wird, die ADT aber nach wie vor im Fokus sind und ständiger Verbesserung unterliegen, liegt schon jetzt der Vorteil klar aufseiten der Eclipse IDE.

Code-Vervollständigung

Mit dem SAP-NetWeaver-Release 7.40 wurde im SAP Backend ein vermeintlich neues Feature implementiert, dass die Eclipse IDE schon seit vielen Jahren kannte – die Code-Vervollständigung (engl.: Code Completion) oder auch Auto-Vervollständigung. Die Code-Vervollständigung bietet einem Entwickler die Möglichkeit, eine begonnene Anweisung im Quelltext vom System prüfen zu lassen.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse - Auto-Vervollständigung
Abbildung 4.1: Auto-Vervollständigung schlägt Klasse vor

Syntax-Prüfung

Schon während Sie Ihre Klassen und Programme implementieren, wird ständig Ihr Quelltext einer Syntax-Prüfung unterzogen, ohne dass Sie manuell eine Prüfung veranlassen müssten. Das ist am Anfang sicher gewöhnungsbedürftig; schließlich ist es absolut üblich, dass in einem gerade in Arbeit befindlichen Programm noch Fehler sind.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse - Klassenimplementierung
Abbildung 4.6: Klassenimplementierung ohne Fehler

Quick Fix

Mit den ADT wird noch auf eine weitere Funktion von Eclipse zugegriffen, die Ihnen neben der ohnehin schon vorhandenen Code-Vervollständigung zusätzlich Arbeit abnimmt: Für die Entwicklung mit ABAP und ABAP OO sind heute bereits viele verschiedene sogenannte Quick Fixe verfügbar, und mit jeder neuen Version der ADT werden weitere hinzugefügt.

Ein Quick Fix ist eine vordefinierte Aktion zu einem aktuell ausgewählten Befehl oder Entwicklungsobjekt. Davon kann es mehrere für ein Objekt oder einen Befehl geben, aus denen Sie die passende auswählen können.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse - Quick Fix
Abbildung 4.11: Quick Fix zum Anlegen der Methode

Debuggen in Eclipse

Neben der reinen Implementierungstätigkeit testet jeder Entwickler seine Entwicklungen. Üblicherweise wird dafür der Programmablauf in einer Debugger-Session von vorne bis hinten nachvollzogen. Auch die Fehleranalyse findet zum Großteil im Debugger statt. In diesem Kapitel stelle ich Ihnen daher den Eclipse-Debugger und die für diese Plattform verfügbaren Breakpoint-Arten vor.

Grundsätzlich bietet der Debugger in Eclipse die Ihnen bereits aus der SAP GUI vertrauten Funktionalitäten. Wie bisher können Sie in Anweisungen hineinspringen »F5«, Anweisungen ausführen »F6« und den gesamten Schritt ausführen »F7«. Mit dem allgemeinen Ausführen »F8« gelangen Sie zum nächsten Breakpoint, oder das Programm durchläuft alle folgenden Schritte. Was ein Breakpoint ist, wird als bekannt vorausgesetzt.

Vorab sei aber auch gesagt, dass es für nützliche Funktionen des Debuggers in der SAP GUI, wie z.B. die Analyse von Tabellendaten in einer ALV-Darstellung oder das zusätzliche Menü »Werkzeuge« für Speicheranalyse u. Ä., noch keine Entsprechungen im Eclipse-Debugger gibt. In Einzelfällen kann es daher sinnvoll sein, auf die Debug-Bordmittel der SAP GUI zurückzugreifen.

Optisch unterscheidet sich die Oberfläche stark von der SAP-GUI-Variante. Daher erläutere ich zuerst, wo Sie welche Breakpoint-Art finden, und stelle im Anschluss die Oberfläche der Debug-Perspektive in Eclipse vor.

Fazit

Auf den vorangegangenen Seiten haben Sie neben einem allgemeinen Überblick über die Beweggründe der SAP zur Nutzung der Entwicklungsumgebung Eclipse bereits erste Erfahrungen im Umgang mit ihr gesammelt: Sie haben Ihre eigene Eclipse-Installation eingerichtet, die notwendigen Funktionen und Menüs für eine erfolgreiche Entwicklertätigkeit kennengelernt und (hoffentlich) auch bereits ausprobiert.

Damit sind Sie jetzt in der Lage, der ABAP Workbench den Rücken zuzuwenden und sich voller Entdeckerlust in die Arbeit mit der Eclipse IDE zu stürzen. Mit Sicherheit werden Sie noch diverse weitere Funktionen finden, die für Sie persönlich von Nutzen sind.

SAP-Schnelleinstieg: ABAP-Entwicklung in Eclipse 19,95 €
  • Anfänger
  • Fortgeschrittene
  • Experte
4.2

Das erwartet Sie:

SAP-Schnelleinstieg: ABAP-Entwicklung in EclipseSeiten: 152 – Sprache: de

Lernen Sie in diesem Buch, wie Sie von der klassischen SE80 in die neue Entwicklungsumgebung Eclipse wechseln.

  • einfach: Eclipse einrichten und erste Entwicklungsobjekte anlegen
  • nützlich: Auto-Vervollständigung, Quick Fixes, ABAP Doc & Co.
  • neu: Lokale Änderungshistorie, Quelltext-Vergleich u. a.