E-Book, Deutsch, 1148 Seiten
Reihe: SAP Press
Roth ABAP – Das umfassende Handbuch
3. Auflage 2023
ISBN: 978-3-8362-9451-5
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
E-Book, Deutsch, 1148 Seiten
Reihe: SAP Press
ISBN: 978-3-8362-9451-5
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Dieses Buch ist ein unverzichtbares Hilfsmittel, ob als Begleiter während einer Einstiegsschulung oder als Nachschlagewerk. Es erklärt Ihnen alle Techniken, Sprachelemente und Werkzeuge der ABAP-Programmierung. Sie erlernen den Umgang mit ABAP Workbench und ABAP Development Tools und verstehen die wichtigen Konzepte von der objektorientierten Programmierung bis zu den neuen Programmiermodellen für SAP S/4HANA.
Aus dem Inhalt:
- ABAP Workbench und ABAP Development Tools (Eclipse)
- ABAP Dictionary
- Datenbankzugriffe und neue Open SQL-Funktionen
- CDS und BOPF
- Reports und Selektionsbildschirme
- Tests und Performanceanalyse
- Transporte und Jobverwaltung
- Schnittstellen, RFC und Erweiterungstechniken
- Klassen, Methoden, Ereignisse und Interfaces
- ABAP-Programmiermodell für SAP Fiori und ABAP-RESTful-Programmiermodell
- ABAP Channels und ABAP Daemon Framework
- SAP NetWeaver 7.57
- Nützliche Übersichten und Glossar
Die Fachpresse zur Vorauflage:
Programmierbuch.de: »Wenn du dich ernsthaft mit der ABAP-Programmierung befassen willst, dann ist dieses Buch ein Muss.«
Felix Roth ist selbstständiger ABAP-Trainer, -Entwickler und Berater (LOOP AT Consulting). Er berät Kunden in verschiedenen Entwicklungsprojekten und beschäftigt sich vor allem mit den neuesten SAP-Technologien. Seit 2014 hält er regelmäßig SAP-Schulungen, u.a. beim Rheinwerk Verlag.
Autoren/Hrsg.
Weitere Infos & Material
Einleitung ... 33
TEIL I. Die Werkzeugkiste des ABAP-Entwicklers ... 43 1. Die ABAP Workbench ... 45 1.1 ... Die Werkzeuge der ABAP Workbench ... 46 1.2 ... Der Object Navigator ... 47 1.3 ... Der Repository Browser ... 50 1.4 ... Der ABAP Editor ... 52 2. Die ABAP Development Tools ... 69 2.1 ... SAPs Eclipse-Strategie ... 69 2.2 ... Installation und Konfiguration ... 71 2.3 ... Ein System anbinden ... 75 2.4 ... Einen Report anlegen ... 76 2.5 ... Die Menüleiste und wichtige Tastaturkürzel ... 77 2.6 ... Der Pretty Printer und weitere Quellcodefunktionen ... 81 2.7 ... Die Musterfunktion ... 81 2.8 ... Der Debugger ... 83 2.9 ... Dokumentation mit ABAP Doc ... 89 2.10 ... Refactoring-Funktionen ... 93 3. Das ABAP Dictionary ... 97 3.1 ... Domänen ... 99 3.2 ... Datenelemente ... 104 3.3 ... Strukturen ... 107 3.4 ... Tabellentypen ... 109 3.5 ... Datenbanktabellen ... 112 3.6 ... Indizes ... 118 3.7 ... Typgruppen ... 119 3.8 ... Views ... 120 3.9 ... Pflegedialoge ... 124 3.10 ... Suchhilfen ... 128 3.11 ... Datenbank-Utility-Tool ... 131 3.12 ... Das Sperrkonzept ... 132 4. Transaktionen ... 135 4.1 ... Transaktionen anlegen ... 136 4.2 ... Transaktionen mit ABAP aufrufen ... 140 5. Der Function Builder ... 143 5.1 ... Der Aufbau eines Funktionsbausteins ... 143 5.2 ... Einen Funktionsbaustein anlegen ... 146 5.3 ... Funktionsbausteine testen ... 147 5.4 ... Funktionsgruppen ... 148 6. Der Class Builder ... 151 6.1 ... Klassen anlegen ... 151 6.2 ... Ausnahmeklassen anlegen ... 163 6.3 ... Interfaces anlegen ... 164
TEIL II. Der Kern der Sprache ABAP ... 165 7. Die ABAP-Grundbefehle ... 167 7.1 ... Syntaxregeln ... 168 7.2 ... Kommentare ... 169 7.3 ... Die SAP-Hilfe ... 170 7.4 ... Datendeklaration ... 171 7.5 ... Inline-Deklarationen ... 183 7.6 ... Typdefinitionen ... 185 7.7 ... Initialisierung ... 188 7.8 ... Steueranweisungen ... 189 7.9 ... Rechenoperationen ... 196 7.10 ... Ausgabeanweisungen ... 199 7.11 ... Meldungen ... 201 7.12 ... Mit Zeichenketten arbeiten ... 203 7.13 ... Konstruktorausdrücke ... 216 7.14 ... Operandenpositionen ... 227 7.15 ... Änderungen und Neuerungen bis ABAP 7.57 ... 229 8. Mit internen Tabellen arbeiten ... 231 8.1 ... Tabellenarten ... 232 8.2 ... Interne Tabellen definieren ... 234 8.3 ... Interne Tabellen initialisieren ... 238 8.4 ... Zeilen hinzufügen ... 239 8.5 ... Inhalt auslesen ... 250 8.6 ... Einträge löschen ... 264 8.7 ... Inhalt ändern ... 265 8.8 ... Interne Tabellen kopieren ... 270 8.9 ... Interne Tabellen aufbereiten ... 272 8.10 ... Eingebaute Funktionen für interne Tabellen ... 279 8.11 ... Änderungen und Neuerungen im Umfeld von internen Tabellen bis ABAP 7.57 ... 281 9. Zugriff auf Datenbanken ... 285 9.1 ... Die fünf goldenen Regeln ... 286 9.2 ... Die Open-SQL-Anweisung SELECT ... 288 9.3 ... Open-SQL-Ausdrücke ... 315 9.4 ... Open-SQL-Funktionen ... 321 9.5 ... Ändernde Open-SQL-Anweisungen ... 334 9.6 ... Sekundäre Datenbankverbindungen ... 343 9.7 ... Natives SQL ... 343 9.8 ... ABAP Core Data Services (CDS) ... 346 9.9 ... Änderungen und Neuerungen im Umfeld von Open SQL bis ABAP 7.57 ... 378 9.10 ... Änderungen und Neuerungen im Umfeld von CDS bis ABAP 7.57 ... 381
10. Zugriff auf SAP-HANA-Entwicklungsobjekte ... 385 10.1 ... Aufruf von SAP-HANA-Views ... 385 10.2 ... Aufruf von Datenbankprozeduren ... 388 10.3 ... ABAP Managed Database Procedures (AMDP) ... 391 10.4 ... Änderungen und Neuerungen beim Zugriff auf SAP-HANA-Entwicklungsobjekte bis ABAP 7.57 ... 396
11. Die ABAP-Objects-Syntax ... 399 11.1 ... Grundaufbau einer Klasse ... 400 11.2 ... Sichtbarkeiten ... 403 11.3 ... Datentypen und Attribute ... 404 11.4 ... Methoden ... 405 11.5 ... Konstruktoren ... 412 11.6 ... Ereignisse ... 415 11.7 ... Vererbung ... 418 11.8 ... Klassenarten ... 420 11.9 ... Ausnahmen für Methoden ... 422 11.10 ... Freunde ... 428 11.11 ... Interfaces ... 428 11.12 ... Das ABAP-Objects-Muster ... 432 11.13 ... Casting ... 433 11.14 ... Objekttyp überprüfen ... 434 11.15 ... Änderungen und Neuerungen in ABAP Objects bis ABAP 7.57 ... 436
12. Reports und Selektionsbildschirme ... 437 12.1 ... Ereignisse eines Reports ... 438 12.2 ... Eingabeelemente ... 439 12.3 ... Strukturierungselemente für den Selektionsbildschirm ... 449 12.4 ... Ereignisse eines Selektionsbildschirms ... 453 12.5 ... Textelemente ... 457 12.6 ... Nachrichtenklassen ... 461 12.7 ... Einen Report mit ABAP aufrufen ... 464 12.8 ... SPA-/GPA-Parameter ... 466
13. Strukturierungselemente in ABAP ... 469 13.1 ... Unterprogramme ... 470 13.2 ... Makros ... 476 13.3 ... Includes ... 478 13.4 ... Funktionsbausteine ... 481 13.5 ... Datenkonsistenz ... 487
14. Die Dynpro-Programmierung ... 489 14.1 ... Dynpros anlegen ... 490 14.2 ... Ablauflogik eines Dynpros ... 494 14.3 ... SAP Control Framework ... 502 14.4 ... Pop-up-Fenster ... 506
TEIL III. Techniken zur Qualitätssicherung ... 511
15. Tests und Qualitätskontrolle ... 513 15.1 ... Der ABAP Debugger ... 513 15.2 ... Das Debugging-Skript ... 532 15.3 ... Der Code Inspector ... 538 15.4 ... ABAP Unit ... 542 15.5 ... Das ABAP Test Cockpit ... 551
16. Werkzeuge und Tipps zur Performanceanalyse ... 555 16.1 ... Richtlinien für die ABAP-Entwicklung ... 556 16.2 ... Transaktion SAT: Laufzeitanalyse ... 558 16.3 ... Transaktion SE30: Die alte Laufzeitanalyse ... 562 16.4 ... SQL-Monitor ... 564 16.5 ... SQL Performance Tuning Worklist ... 568 16.6 ... Transaktion ST05 ... 569 16.7 ... Laufzeitanalyse mithilfe der ABAP-Programmierung ... 573 16.8 ... Application Log ... 575
17. Das Transportwesen ... 581 17.1 ... Die SAP-Systemlandschaft ... 582 17.2 ... Transportaufträge ... 585
18. Die Jobverwaltung ... 597 18.1 ... Transaktion SM36: Jobs definieren ... 597 18.2 ... Transaktion SM37: Jobs überwachen und freigeben ... 604 18.3 ... Ereignisse für Jobs ... 605 18.4 ... Jobs mit ABAP definieren ... 606
TEIL IV. Fortgeschrittene Programmiertechniken ... 609
19. Tabellenanzeige mit dem SAP List Viewer (ALV) ... 611 19.1 ... Die alte ALV-Anzeige ... 613 19.2 ... Die neue ALV-Anzeige ... 632 19.3 ... SAP List Viewer mit integriertem Datenzugriff (IDA) ... 647 19.4 ... Mehrere ALV-Tabellen auf einer Oberfläche ... 662
20. SAP-Schnittstellen ... 665 20.1 ... RFC-Funktionsbausteine ... 666 20.2 ... Business-Objekte und BAPIs ... 668 20.3 ... Flat Files ... 679 20.4 ... Webservices (SOAP) ... 686 20.5 ... Batch Input ... 702 20.6 ... Einführung in die Legacy System Migration Workbench (LSMW) ... 709
21. SAP-Erweiterungen ... 711 21.1 ... User Exits ... 711 21.2 ... Customer Exits ... 714 21.3 ... Klassische Business Add-ins (BAdIs) ... 718 21.4 ... Enhancement Framework ... 722 21.5 ... Neue Business Add-ins (BAdIs) ... 742 21.6 ... Switch Framework ... 755 21.7 ... Suche nach Erweiterungen ... 757
22. SAP-Formularentwicklung ... 759 22.1 ... Der Druckdialog ... 761 22.2 ... SAPscript ... 762 22.3 ... SAP Smart Forms ... 770 22.4 ... SAP Interactive Forms by Adobe ... 780 22.5 ... Generierung von PDFs ... 785
23. Business Object Processing Framework ... 791 23.1 ... Aufbau von Geschäftsobjekten ... 794 23.2 ... Anwendung der Consumer-API ... 805
24. Fortgeschrittene Programmiertechniken ... 821 24.1 ... Object Services ... 822 24.2 ... Mit XML und JSON arbeiten ... 830 24.3 ... Daten im Memory ablegen ... 835 24.4 ... Parallelisierung ... 842 24.5 ... Dynamische Erzeugung von Datenobjekten ... 844 24.6 ... Runtime Type Services (RTTS) ... 850 24.7 ... Dynamisches SQL ... 860 24.8 ... Das ABAP Daemon Framework (ADF) ... 862 24.9 ... ABAP Channels ... 870
TEIL V. Objektorientierte Programmierung ... 883
25. Grundlagen der Objektorientierung ... 885 25.1 ... Einführung für ABAP-Entwickler ... 885 25.2 ... Klassen und Objekte ... 891 25.3 ... Instanziierung ... 894 25.4 ... Datenkapselung ... 897 25.5 ... Ereignisse ... 900 25.6 ... Vererbung ... 902 25.7 ... Klassenarten ... 907 25.8 ... Interfaces ... 908 25.9 ... Polymorphie ... 912 25.10 ... Zusammenfassung ... 914
26. Unified Modeling Language (UML) ... 917 26.1 ... Anwendungsfalldiagramm ... 918 26.2 ... Klassendiagramm ... 923
27. Anwendungsentwicklung -- wo fange ich an? ... 933 27.1 ... Anforderungsermittlung ... 935 27.2 ... Analyse ... 940 27.3 ... Entwurf ... 944
28. Entwurfsmuster ... 947 28.1 ... Singleton ... 948 28.2 ... Fabrikmethode ... 950 28.3 ... Model View Controller ... 955 28.4 ... Fassade ... 963 28.5 ... Observer ... 964 28.6 ... Objektorientierte Reports ... 971
TEIL VI. Ein Blick über den Tellerrand: Was Sie als ABAP-Entwickler sonst noch kennen sollten ... 975
29. ABAP-Programmiermodelle ... 977 29.1 ... Das klassische Programmiermodell ... 980 29.2 ... Die Innovation für die Zukunft ... 982 29.3 ... Das ABAP-Programmiermodell für SAP Fiori ... 983 29.4 ... Das ABAP RESTful Application Programming Model ... 987
30. SAP HANA ... 999 30.1 ... Überblick ... 1000 30.2 ... Architektur ... 1001 30.3 ... Migration auf SAP HANA ... 1005 30.4 ... SAP-HANA-Objekte ... 1006 30.5 ... Volltextsuchen ... 1010
31. SAPUI5, SAP Fiori und SAP Gateway ... 1019 31.1 ... SAPUI5 ... 1020 31.2 ... SAP Fiori ... 1022 31.3 ... OData ... 1024 31.4 ... SAP Gateway ... 1030 31.5 ... Entwicklung eines OData-Service ... 1032 31.6 ... Überblick über die Implementierung der CRUDQ-Methoden ... 1044
32. Andere SAP-Webtechnologien ... 1053 32.1 ... Business Server Pages (BSP) ... 1054 32.2 ... Web Dynpro ABAP ... 1061 32.3 ... Internet Communication Framework ... 1079 Anhang ... 1083 A ... Das SAP-Flugdatenmodell ... 1085 B ... Übersicht der ABAP-Anweisungen ... 1087 C ... Eingebaute Datentypen ... 1097 D ... Transaktionscodes ... 1099 E ... Wichtige Systemfelder ... 1103 F ... Technische Tabellen ... 1105 G ... Nützliche Funktionsbausteine ... 1107 H ... Klassen ... 1111 I ... Namenskonventionen für die Programmierung ... 1113 J ... Systemglossar und Suche nach fremdsprachigen SAP-Begriffen ... 1117 K ... Glossar ... 1119 Der Autor ... 1125 Index ... 1127
Einleitung
ABAP ist die von SAP entwickelte Programmiersprache für die Erstellung kundenspezifischer Anwendungsprogramme. Die Abkürzung steht für Advanced Business Application Programming. Darüber hinaus nutzt SAP selbst ABAP auch als Basis für SAP ERP, die SAP Business Suite und die SAP-NetWeaver-Plattform. All diese Systeme basieren auf Millionen von in ABAP geschriebenen Zeilen.
Die Abkürzung ABAP bedeutete ursprünglich Allgemeiner Berichtsaufbereitungsprozessor und war, wie es der Name vermuten lässt, dafür gedacht, kundeneigene Berichte aufzubereiten. ABAP orientierte sich in seiner ursprünglichen Form an der Syntax der Programmiersprache COBOL. Über die Jahrzehnte wurde ABAP kontinuierlich weiterentwickelt und verbessert. So hat sich der Sprachumfang mittlerweile vervielfacht, da immer wieder neue Anweisungen und Funktionen hinzukamen, wobei ältere aus Kompatibilitätsgründen beibehalten wurden.
Die aktuelle Version von ABAP (7.57, Stand Ende 2023) steht in ihrer Funktionalität anderen modernen Programmiersprachen kaum noch nach. Bereits 2004 wurde der Sprachumfang um die objektorientierten Elemente von ABAP Objects erweitert. Dennoch findet man aufgrund der erwähnten Kompatibilitätssicherung in ABAP auch heute noch viel ältere Funktionalität, die sich mit den neuen, modernen Konstrukten vermischt hat. In der Praxis hat es der Entwickler daher häufig mit einer Mischform aus »alter« und »neuer« Welt zu tun. Eine einseitige Betrachtung ergibt daher keinen Sinn.
Dennoch ist die Zukunft von ABAP bereits angebrochen. ABAP hat durch die letzten Releases bis 7.57 sehr viele neue Funktionen gewonnen, die in die Kapitel dieses Buches integriert sind. In Abbildung 1 können Sie die verschiedenen ABAP-Versionen über die Jahre dargestellt sehen.
Auffällig ist hier, dass zwischen 2004 und 2013 praktisch keine Neuerungen in ABAP eingeführt wurden. Dies war auch die Zeit, als es hieß, dass Java der Nachfolger von ABAP werden sollte. Dies hat sich aber zum Glück nicht durchgesetzt.
Besonders wichtig in Bezug auf dieses neue ABAP sind die neue Datenbank SAP HANA und die neue Oberflächentechnologie SAPUI5 bzw. die von SAP bereitgestellten SAP-Fiori-Apps. Diese neuen Technologien sind das Aushängeschild des SAP-ERP-Nachfolgers SAP S/4HANA. Doch auch wenn die SAP Business Suite für SAP S/4HANA (auf Vorlage der alten Systeme) komplett überarbeitet wurde, bleibt ABAP die Kernprogrammiersprache auch für dieses System.
Abbildung 1 Neuerung in ABAP seit 1999 bis heute
Altlasten existieren weiterhin
Es ist wichtig zu verstehen, dass in der On-Premise-Version von SAP S/4HANA weiterhin alle alten Sprachelemente vorzufinden sind. Das heißt, Sie können auch hier Makros, Unterprogramme, Funktionsbausteine etc. verwenden. Technisch gesehen ist es für uns ABAP-Entwickler der gleiche Unterbau. In anderen Worten: Es muss alles beherrscht werden, insbesondere, wenn Altanwendungen gewartet oder erweitert werden sollen.
Betrachtet man die durchschnittliche Halbwertszeit (d. h. die Einsatzzeit beim Kunden) eines ERP-Systems von ca. 20 Jahren (SAP R/3 kam 1993, SAP ECC 2004), wird uns ABAP durch SAP S/4HANA noch lange erhalten bleiben – auch wenn dies in den letzten Jahren (z. B. im Rahmen der Ankündigung der Java-Strategie) nicht immer als Selbstverständlichkeit galt.
In anderen Worten: ABAP ist die Programmiersprache von SAP und wird dies bleiben. Herzlich willkommen seien daher alle Leser, die sich entschieden haben, sich intensiver mit ABAP im Allgemeinen und ABAP Objects im Speziellen zu beschäftigen.
Aufbau dieses Buches
Zuallererst möchte ich Ihnen einen Überblick über das vor Ihnen liegende Buch geben. Im Anschluss habe ich Ihnen verschiedene Lesepläne zusammengestellt – abhängig davon, welche Vorkenntnisse Sie mitbringen.
-
Teil I, »Die Werkzeugkiste des ABAP-Entwicklers«, beschäftigt sich mit den Entwicklungswerkzeugen des SAP GUI wie der eingebauten ABAP Workbench (Transaktion SE80). Außerdem stelle ich Ihnen hier die neuen ABAP Development Tools for SAP NetWeaver (ADT) für die Entwicklungsumgebung Eclipse vor.
-
Teil II, »Der Kern der Sprache ABAP«, beschäftigt sich mit dem ABAP-Sprachkern. Von absolut grundlegenden Anweisungen über den Zugriff auf Datenbanktabellen, die Verarbeitung der Daten und ABAP-Objects-Anweisungen bis hin zur Report- und Dynpro-Programmierung ist hier alles vertreten. So hat hier auch der Zugriff auf die neue SAP-HANA-Datenbank mit ABAP (auch ABAP für HANA genannt) mit Eingang gefunden. Insbesondere finden Sie in diesem Teil Sprachbefehle und Funktionen, die mit den Releases bis ABAP 7.57 nochmals erweitert wurden.
-
Teil III, »Techniken zur Qualitätssicherung«, dreht sich um den Test und die Qualitätskontrolle Ihrer geschriebenen Anweisungen. Hier werden die gezielte Verwendung des ABAP Debuggers sowie die zur Verfügung stehenden Analysewerkzeuge erläutert.
-
Teil IV, »Fortgeschrittene Programmiertechniken«, behandelt weitere Themen aus dem Umfeld von ABAP. Dazu gehören die Entwicklung von Schnittstellen, die Erweiterung von SAP-Standardprogrammen, die Entwicklung von Formularen und Tabellenanzeigen sowie auch fortgeschrittene Techniken wie die dynamische Programmierung oder die Anwendung objektorientierter Frameworks wie der Object Services oder Shared Objects.
-
Teil V, »Objektorientierte Programmierung«, vermittelt in erster Linie die Grundlagen der objektorientierten Programmierung mit ABAP und zeigt konkrete Methoden für den Entwicklungsprozess. Insbesondere werden hier die objektorientierte Modellierung sowie Hilfsmittel wie UML und Entwurfsmuster besprochen.
-
Im letzten Teil des Buches, Teil VI, »Ein Blick über den Tellerrand: Was Sie als ABAP-Entwickler sonst noch kennen sollten«, möchte ich Ihnen den Grund für die vielen Änderungen der letzten Releases etwas genauer vorstellen: SAP HANA als neue Datenbankplattform sowie SAPUI5 als neue Web-Frontend-Technologie, die eine regelrechte Innovationswelle ab 2010 angestoßen haben. In diesem Teil gehe ich insbesondere sowohl auf die vielen neuen Begriffe im Umfeld dieser Technologien als auch auf die Entwicklung von OData-Services ein.
Der Anhang fasst alle wichtigen ABAP-Anweisungen, obsoleten ABAP-Anweisungen, Systemfelder, eingebauten Datentypen, nützliche Funktionsbausteine und Klassen, Transaktionscodes sowie technische Tabellen zur Programmierung mit ABAP zusammen.
Ihr Weg durch das Buch
Da sich dieses Buch an mehrere Zielgruppen richtet (ABAP-Einsteiger, -Kenner und -Experten) und gleichermaßen als Nachschlagewerk für den Alltag dienen soll, finden Sie im Folgenden einige Hinweise, wie Sie aus dem Buch für sich am meisten Gewinn erzielen können.
Aus folgenden Leseplänen können Sie wählen:
-
Einsteiger in ABAP
-
Einsteiger in ABAP Objects
-
Kenner von ABAP Objects (vor allem der Releases vor und bis 7.40)
-
Leser der Vorauflage
-
Interessenten an den neuen Technologien
-
Fortgeschrittene
Die Lesepläne bauen aufeinander auf, vom Einsteiger bis zum Experten. Versuchen Sie, wann immer es geht, so viel wie möglich am System nachzuvollziehen, da sich Programmierung am besten durch die konkrete Anwendung erlernen lässt.
In hervorgehobenen Informationskästen sind Inhalte zu finden, die wissenswert und hilfreich sind, aber etwas außerhalb der eigentlichen Erläuterung stehen. Damit Sie die Informationen in den Kästen sofort einordnen können, haben wir die Kästen mit Symbolen gekennzeichnet:
[+] Die mit diesem Symbol gekennzeichneten Tipps geben Ihnen spezielle Empfehlungen, die Ihnen die Arbeit erleichtern können.
[»] In Kästen, die mit diesem Symbol gekennzeichnet sind, finden Sie Informationen zu weiterführenden Themen oder wichtigen Inhalten, die Sie sich merken sollten.
[ ! ] Dieses Symbol weist Sie auf Besonderheiten hin, die Sie beachten sollten. Es warnt Sie außerdem vor häufig gemachten Fehlern oder Problemen, die auftreten können.
Leseplan für Einsteiger in ABAP
Fangen Sie mit der Lektüre des Kapitels 1 an, um sich mit der Entwicklungsumgebung vertraut zu machen. Insbesondere ist hier Abschnitt 1.4.2, »Einen Report anlegen«, von...