E-Book, Deutsch, 555 Seiten
Reihe: SAP Press
Franz / Kühnhauser Einstieg in ABAP
6. Auflage 2023
ISBN: 978-3-8362-9356-3
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
E-Book, Deutsch, 555 Seiten
Reihe: SAP Press
ISBN: 978-3-8362-9356-3
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Lernen Sie ABAP schnell und effizient! Mit diesem Standardwerk feiern Sie im Handumdrehen erste Erfolge mit selbst geschriebenem Quellcode. Es behandelt alle relevanten ABAP-Sprachelemente in kompakten Lerneinheiten. Mit kommentierten Codebeispielen, vielen Screenshots und wertvollen Tipps.
Aus dem Inhalt:
- Erste Schritte im SAP-System
- ABAP Dictionary und ABAP Editor
- ABAP Development Tools in Eclipse
- Felder und Berechnungen
- Debugging von Programmen
- Datenbanktabellen und CDS-Views
- Programmablaufsteuerung und logische Ausdrücke
- Selektionsbildschirme und SAP Fiori
- Interne Tabellen
- Modularisierung von Programmen
Thorsten Franz ist Gründer des SAP-Beratungsunternehmens operatics und seit mehr als 15 Jahren als Architekt, Berater, Entwickler, Projektleiter und Coach im SAP-Entwicklungsumfeld tätig. Er wurde als SAP Mentor und SAP HANA Distinguished Engineer ausgezeichnet und ist häufig als Referent bei internationalen Entwicklerkonferenzen anzutreffen. Seine Schwerpunkte sind große Entwicklungsprojekte und SAP-Einführungen sowie der Einsatz innovativer Technologien wie SAP HANA. Neben diesem Buch ist er Koautor des Buches Discover ABAP (SAP PRESS 2011).
Autoren/Hrsg.
Weitere Infos & Material
Einleitung ... 15 1. ABAP und die ersten Schritte im SAP-System ... 21 1.1 ... Architektur des SAP-Systems im Überblick ... 23 1.2 ... Anwendungsprogramme und Laufzeitumgebung ... 31 1.3 ... Anmelden am und Abmelden vom System ... 37 2. ABAP Dictionary ... 49 2.1 ... Einstieg in das ABAP Dictionary ... 49 2.2 ... Datenelemente und Domänen ... 56 2.3 ... Datensätze erfassen ... 70 3. Programmieren im ABAP Editor ... 73 3.1 ... ABAP-Report anlegen ... 73 3.2 ... ABAP Editor im Überblick ... 77 3.3 ... ABAP-Programme verstehen und bearbeiten ... 81 3.4 ... ABAP-Report ausführen ... 84 3.5 ... Datenbanktabelle lesen und ausgeben ... 85 3.6 ... Aufbereitung von Listen ... 89 3.7 ... Quellcode schreiben und editieren ... 91 4. Felder und Berechnungen ... 101 4.1 ... Report vorbereiten ... 101 4.2 ... Felder deklarieren ... 105 4.3 ... Grundrechenarten ... 110 4.4 ... Inline-Variablendeklarationen ... 115 4.5 ... Codebeispiel zu Feldern und Berechnungen ... 117 5. Mit Zeichenketten arbeiten ... 125 5.1 ... Zeichenketten deklarieren ... 125 5.2 ... Zeichenkettenoperationen ... 128 5.3 ... Codebeispiel zu String-Operationen ... 137 6. Debugging von Programmen ... 145 6.1 ... Aufruf des ABAP Debugger ... 146 6.2 ... Mit dem ABAP Debugger arbeiten ... 149 6.3 ... Schicht für Schicht: Layer-aware Debugging ... 161 6.4 ... Codebeispiel zum Layer-aware Debugging ... 168 7. Transparente Datenbanktabellen bearbeiten ... 171 7.1 ... Datenbanktabelle kopieren ... 172 7.2 ... Nicht-Schlüsselfelder ergänzen ... 177 7.3 ... Tabellen erweitern ... 190 7.4 ... Schlüsselfelder von Tabellen manipulieren ... 199 7.5 ... Tabellenfelder löschen ... 203 7.6 ... Tabellen löschen ... 204 8. Rechnen mit Datum und Zeit, Mengen und Währungen ... 207 8.1 ... Felddeklarationen ... 207 8.2 ... Rechnen mit Datumsfeldern ... 210 8.3 ... Rechnen mit Zeitfeldern ... 216 8.4 ... Rechnen mit Mengen- und Währungsfeldern ... 220 8.5 ... Codebeispiel zu Datums-, Zeit- und Währungsfeldern ... 222 9. Mit Daten in einer Datenbanktabelle arbeiten ... 235 9.1 ... Berechtigungskonzept ... 236 9.2 ... Sperrkonzept ... 238 9.3 ... Open-SQL-Anweisungen ... 240 9.4 ... Codebeispiel zu INSERT ... 248 9.5 ... Codebeispiel zu UPDATE ... 252 9.6 ... Codebeispiel zu MODIFY ... 256 9.7 ... Codebeispiel zu DELETE ... 259
10. Programmablaufsteuerung und logische Ausdrücke ... 263 10.1 ... Kontrollstrukturen ... 263 10.2 ... Arbeiten mit Mustern ... 264 10.3 ... Verzweigungen ... 268 10.4 ... Schleifen ... 274 10.5 ... Logische Ausdrücke ... 282 10.6 ... Codebeispiel zu IF ... 289 10.7 ... Codebeispiel zu CASE ... 294 10.8 ... Codebeispiel zu DO und Abbruchbedingungen ... 299 10.9 ... Codebeispiel zu WHILE und logischen Ausdrücken ... 305
11. Selektionsbildschirme ... 313 11.1 ... Ereignisse ... 316 11.2 ... Einfache Selektionen ... 319 11.3 ... Komplexe Selektionen ... 327 11.4 ... Selektionstexte verwenden ... 332 11.5 ... Selektionsbild speichern ... 337 11.6 ... Ergänzende Textobjekte ... 344 11.7 ... Selektionsbilder frei gestalten ... 350 11.8 ... Codebeispiel zum Selektionsbild (einfache Form) ... 354 11.9 ... Codebeispiel zum Selektionsbild (erweiterte Form) ... 360
12. Interne Tabellen ... 371 12.1 ... Sinn und Zweck interner Tabellen ... 372 12.2 ... Aufbau und Arten interner Tabellen ... 374 12.3 ... Interne Standardtabelle deklarieren ... 377 12.4 ... Interne Standardtabelle füllen ... 380 12.5 ... Interne Tabelle zeilenweise verarbeiten ... 384 12.6 ... Inhalte von internen Tabellen löschen ... 393 12.7 ... Codebeispiel zum Arbeiten mit internen Tabellen ... 394
13. Modularisierung von Programmen ... 405 13.1 ... Modularisierungstechniken ... 405 13.2 ... Quelltextmodule ... 408 13.3 ... Unterprogramme ... 411 13.4 ... Funktionsbausteine ... 421 13.5 ... ABAP-Klassen ... 437 13.6 ... Speicherbereiche für die Datenübergabe ... 445 13.7 ... Codebeispiele zur Modularisierung ... 449 13.8 ... Codebeispiele zum Aufruf fremder Reports ... 461
14. ABAP in Eclipse ... 467 14.1 ... Eclipse als alternative Entwicklungsumgebung ... 467 14.2 ... Installation von ABAP in Eclipse ... 469 14.3 ... Erste Schritte mit ABAP in Eclipse ... 473 14.4 ... ABAP in Eclipse oder im SAP GUI? ... 482
15. Core Data Services zur Abbildung von Datenmodellen ... 485 15.1 ... Datenbank-Views in der Anwendungsentwicklung ... 485 15.2 ... Klassische Datenbank-Views im ABAP Dictionary ... 487 15.3 ... CDS Views in Eclipse ... 492
16. Weiterführende Themen ... 517 16.1 ... Interessante Zeiten für die Programmiersprache ABAP ... 517 16.2 ... SAP HANA ... 519 16.3 ... Wichtige Frameworks im SAP-Standard ... 519 16.4 ... Cloudbasierte Entwicklung ... 527 16.5 ... Auf zu neuen Ufern! ... 531 Anhang ... 533 A ... Icons auf einen Blick ... 533 B ... Abkürzungsverzeichnis ... 535 Die Autoren ... 537 Index ... 539
Einleitung
Dieses Buch ist auch in der 6. Auflage ein Lehr- und Lernbuch für alle Interessierten, die in die Welt der ABAP-Programmierung einsteigen möchten. Diesem Ziel ordnet es einiges unter: An manchen Stellen »lügt« das Buch, indem es vorgibt, alles sei ganz unkompliziert. Es vereinfacht, indem es technische und betriebswirtschaftliche Probleme auf ein Minimum reduziert. Es nimmt gewisse Lücken in Kauf, weil es das Thema ABAP nicht in epischer Breite behandeln will, sondern sich auf einen thematischen Kern und den roten Faden zum Lernziel beschränkt. Denn dieses Buch möchte Ihnen vor allem eines vermitteln: Erfolgserlebnisse.
»Einstieg in ABAP« kann keinen allgemeinen SAP-Grundlagenkurs ersetzen, ebenso wenig wie vertiefende Literatur zu speziellen ABAP-Themen wie den neuen, gerade im Entstehen begriffenen cloudbasierten ABAP-Varianten. Das Buch erhebt auch keinen Anspruch auf Vollständigkeit. Es möchte kein Trockenkurs sein, sondern Sie zum Lernen am und zum Arbeiten im SAP-System motivieren. Alle hierfür relevanten Arbeitsschritte werden ausführlich mit Beispielen, Hintergrundinformationen und Quellcodebeschreibungen erklärt.
An wen richtet sich dieses Buch?
Dieses Buch ist für Entwickler geschrieben, in deren Firmen ein SAP-System (on premise, d. h. vom Kunden selbst verwaltet und betrieben) eingeführt wird. Es richtet sich an Berater und Projektleiter, die ABAP-Quellcode lesen und verstehen sowie einige Änderungen selbst vornehmen möchten. Außerdem ist es für Studenten und Auszubildende geschrieben, die ABAP im Rahmen ihrer Berufsausbildung erlernen. Besondere Vorkenntnisse sind nicht erforderlich, auch wenn sich einzelne Abschnitte an Programmierer mit Vorerfahrungen aus anderen Programmiersprachen wenden.
Über dieses Buch
Sie werden vom einfachsten ABAP-Report bis hin zur modularisierten Ablaufsteuerung geführt. Auch wichtige Arbeiten zur Tabellenpflege im ABAP Dictionary und komplexe Datenübergabestrukturen zwischen Reports kommen nicht zu kurz. Außerdem lernen Sie die datenbanknahe Programmierung mit CDS Views kennen. Hierbei wird ein einfaches betriebswirtschaftliches Beispiel, eine fiktive Anwendung zur Verwaltung der Teilnehmer von IT-Kursen, durchgängig mitgeführt und immer wieder verwendet, um die Theorie unmittelbar in der Praxis anzuwenden. Der Schwerpunkt dieses Buches liegt demnach auf der Vermittlung und Aneignung von ABAP-Wissen und nicht auf betriebswirtschaftlichen Zusammenhängen und Prozessen.
Neuerungen in der sechsten Auflage
Die SAP-Welt dreht sich schneller denn je weiter, und davon sind die Programmiersprache ABAP und ihre natürliche Umgebung, der ABAP-Applikationsserver, in besonders starkem Maße betroffen. Auch wenn viele Weiterentwicklungen eher fortgeschrittene Programmierer betreffen und in diesem Buch nicht vertieft betrachtet werden können, haben wir ihnen so gut wie möglich Rechnung getragen und Verweise auf aktuelle Themen wie SAP Fiori und SAP HANA an passenden Stellen eingefügt. Vielleicht möchten Sie auf dieser Basis auf eigene Faust bzw. zu einem späteren Zeitpunkt über den Tellerrand des ABAP-Einsteigers schauen.
Die Gemeinde der ABAP-Programmierer erlebt heute erfreulicherweise viel Zuwachs von Programmierern, die Erfahrungen mit den unterschiedlichsten Programmiersprachen mitbringen. Waren es früher vor allem erfahrene COBOL-Programmierer und Geschäftsprozessexperten ohne vorherige Programmiererfahrung, die die Gemeinde bereicherten, kommen heute Webentwickler mit Kenntnissen der neuesten Frontend- und Backend-Technologien, Java-Entwickler, Entwickler mit Erfahrung in den modernen Skriptsprachen sowie in cloudbasierten Programmiermodellen und viele andere hinzu. Die ABAP-Welt ist heute viel weniger in sich geschlossen als noch vor einigen Jahren. Dieser Vielfalt der benachbarten Technologien ist es geschuldet, dass in diesem Buch eine Vielzahl von Bezügen zu Themen auftauchen, auf die wir nicht vertieft eingehen können. In diesem Fall vermitteln wir Ihnen die Grundlagen zur ersten Einordnung des Themas und verweisen auf andere Bücher, die das jeweilige Thema ausführlich behandeln.
Wie können Sie mit diesem Buch arbeiten?
In diesem Buch finden Sie mehrere Orientierungshilfen. Die folgenden Symbole helfen Ihnen dabei, sich schneller zu orientieren:
[+] Tipp: Dieses Symbol steht an Stellen, die spezielle Tipps und Empfehlungen bereithalten, die Ihnen die Arbeit erleichtern können.
[»] Hinweis: Hinweise geben Informationen zu weiterführenden Themen, zu weiteren Quellen oder wichtigen Inhalten, die Sie sich merken sollten.
[ ! ] Achtung: Dieses Symbol warnt Sie vor Fallstricken und typischen Fehlern.
[zB] Beispiel: Unter diesem Symbol finden Sie Szenarien und Beispiele aus der Praxis.
Systemvoraussetzungen
Um von diesem Buch optimal profitieren zu können, sollten Sie einige Voraussetzungen mitbringen: Ideal wäre es sicherlich, sich mit SAP-Grundlagen wie der Navigation im Hauptmenü schon vorab beschäftigt zu haben. Auch Erfahrungen mit allgemeiner Programmierlogik aus anderen Programmiersprachen, mit Makros oder Skripten sind für den Lernerfolg förderlich. Ideal wäre auch der Zugang zu einem SAP-System mit den entsprechenden Berechtigungen – hier genügen zum großen Teil aber auch die SAP-Trial-Systeme.
SAP-Trial-Systeme
Bei den SAP-Trial-Systemen, auch ABAP-Trial-Systeme genannt, handelt es sich um kostenlose, von SAP zu Lehr- und Testzwecken bereitgestellte, persönlich nutzbare ABAP-Systeme. Den einfachsten Einstieg bietet hier die SAP Cloud Appliance Library (http://cal.sap.com). Auf dieser Webseite bietet SAP eine Vielzahl von Trial-Versionen für viele unterschiedliche SAP-Softwareprodukte. Einige davon sind kostenpflichtig, doch die meisten können nahezu kostenlos bezogen werden.
Diese Testsysteme laden Sie nicht wie das sogenannte Mini-SAP-System in früheren Releases herunter und installieren es auf Ihrem eigenen Rechner, sondern nutzen Cloud-Dienstleister wie Amazon Web Services oder Microsoft Azure, um Ihr persönliches Testsystem in der Cloud Ihrer Wahl zu installieren.
Ein Hinweis, um böse Überraschungen zu vermeiden: Durch die Nutzung des Cloud-Dienstleisters entstehen Ihnen Kosten, die Sie sorgfältig kontrollieren sollten, wenn Sie ein solches System nutzen. Studieren Sie die Preisliste, damit Sie wissen, welcher Betrag für die Nutzung auf Sie zukommt. Normalerweise erfolgt die Bezahlung pro Stunde, in der das System aktiv ist. Achten Sie daher stets darauf, Ihr System herunterzufahren, wenn Sie für den Tag damit fertig sind, und löschen Sie es, wenn Sie es nicht mehr benötigen.
Wenn Sie ein lokal installiertes System bevorzugen, prüfen Sie im SAP Developer Center (https://developers.sap.com/) oder im SAP Store (https://www.sapstore.com/), ob aktuell ein Trial-System zur lokalen Installation verfügbar ist. Zum Zeitpunkt der Drucklegung dieses Buchs bietet SAP keine Möglichkeit zum Download für die lokale Installation, aber da es gerade seitens der Open-Source-Community einen großen Bedarf an lokal installierbaren ABAP-Systemen gibt, könnte sich das in naher Zukunft auch wieder ändern.
Ob lokal oder in der Cloud: Das ABAP-Trial-System stellt die ABAP-Entwicklungsumgebung bereit – mehr benötigen Sie für den Lernerfolg mit diesem Buch nicht.
Die Beispiele und Abbildungen in diesem Buch beziehen sich auf SAP ABAP Platform 1909 (Basis-Release 7.54), das zum Zeitpunkt der Drucklegung neueste Release eines reinen ABAP-Systems ohne betriebswirtschaftliche Anwendungen als separat zu installierende Software. Sie können aber auch problemlos mit älteren oder neueren Releases genutzt werden, wie sie Ihnen beispielsweise in Projekten mit SAP S/4HANA oder SAP Business Warehouse begegnen werden.
Das Release SAP ABAP Platform 1909 markiert eine wichtige Änderung für die Standalone-ABAP-Installation, die früher den Namen SAP NetWeaver AS ABAP trug: Es wurde bei der Weiterentwicklung zur ABAP Platform zugleich die separate Installierbarkeit ohne die Anwendungssoftware SAP S/4HANA aufgegeben. Das neueste Release der ABAP Platform, das also nur noch als Bestandteil einer SAP-S/4HANA-Installation vorkommt, trägt die Releasebezeichnung ABAP Platform 2022 und ist Bestandteil des Produkts SAP S/4HANA 2022.
Kapitelübersicht und Aufbau
Kapitel 1, »ABAP und die ersten Schritte im SAP-System«, vermittelt Ihnen das für den Einstieg in ABAP notwendige Wissen über die organisatorische und technische Architektur von SAP-Systemen und die Entwicklungsvoraussetzungen. Ferner wird die Arbeitsteilung zwischen der Laufzeitumgebung und den Anwendungsprogrammen gezeigt sowie die Struktur von ABAP-Reports.
Kapitel 2, »ABAP Dictionary«, liefert einen Überblick über den Sinn und Zweck des ABAP Dictionarys. Am Beispiel einer transparenten Tabelle erlernen Sie das Anlegen einer Tabelle bis hin zum Erfassen und Anzeigen von Tabelleneinträgen und alle notwendigen Arbeiten mit Datenelementen,...