2 Rein in die Küche – raus aus der Küche – Starten mit dem SAP-System
47
Anmelden zum Tauchkurs: Eintauchen in die SAP-Welt
48
Alles ist Transaktion – Transaktionen als Shortcuts
50
Melde dich an! – SAP-Anmeldung
51
Willkommen Schrödinger! – SAP-Willkommenstext
54
Die Auslage des SAP-Systems – SAP GUI-Aufbau
57
Alles auf einen Blick – SAP Easy Access
59
Modus Operandi – Zusätzliche Fenster öffnen
61
Das ist doch kein Thema
63
Hüben und drüben, nichts als Üben – Rolands Folterkammer oder Übung macht den Meister
64
Hoppi-Galoppi … SAP Fiori
66
3 Ciao a tutti! (Hallo Welt!) – Der 20-Minuten-Einstieg in die ABAP-Programmierung
69
Einsteigen und anschnallen!
70
Object Navigator – Die integrierte Entwicklungsumgebung
72
Entwicklung organisieren – Systemlandschaft, Änderungsauftrag
73
Ihr neuer Auftrag lautet: Auftragsanlage
75
Organisationskapsel Paket
77
Vom Entwickler zum Pakettier – Paket anlegen
79
Einen Schritt zurück und bald zwei nach vorne
82
Die Infos zum Aufbau einer Datenbanktabelle
83
Das zweischichtige Domänenkonzept
84
Technisches Fundament eines Typs – Domäne anlegen
86
Lege die Bedeutung an – Datenelement anlegen
89
Kühlschrankdesign – DB-Tabelle anlegen
91
Daten verarbeiten – Programm anlegen
95
Das ABAP-Einmaleins – Grundlegende Syntax
96
Der Durchblicker – Programm entwickeln
98
Her mit den Daten – DB-Zugriff
100
Ohne Struktur läuft nichts – Grundlegende Programmstruktur
102
Alles muss es auch nicht sein – Einfaches Selektionsbild
104
Layouten und Daten transportieren – Ein einfaches Dynpro
108
Dekorieren der Auslage – Dynpro-Layout
111
Ablauflogik ohne Ablaufdatum – Ablauflogik programmieren
117
Ein Shortcut für den User – Transaktionscode anlegen/ausführen
121
Aufbruch in eine neue Welt: ABAP Development Tools
122
4 AAA – Alles außer ABAP – ABAP-Infrastruktur und -Werkzeuge
125
Die Ablage der Entwicklungsobjekte – Repository
127
Wer suchet der findet – Suchen mit dem Repository Infosystem
132
Suchen und Finden – Repository Infosystem
134
Geschichtet, aber nicht gefaltet – ABAP-Infrastruktur
135
Wohin mit dem Anwender – Speicherorganisation extern und intern
138
Werkzeugkiste – Entwicklungswerkzeuge
140
Object Navigator – Der Regisseur
141
Repository Browser ausnutzen
143
Repository Browser browsen
144
Synchron oder aus dem Tritt – Objekt-Browser-Synchronisation
147
ABAP Editor – Die Schreibmaschine
149
Debugger – Der Kammerjäger
152
Debugger entschleunigt
153
Verwendungsnachweis – Der Rückwärtssucher
157
Die ADT können das auch
160
5 Schräge Typen* *also jetzt nicht der Schwaiger Roland – Datentypen und -objekte
165
Von 0 auf 100 in wenigen Seiten – Technik der Datenspeicherung im Hauptspeicher
166
Variables Standgas – Datenobjekte
168
Variablen sind zum Angreifen
169
Variablendeklaration inline
170
Ein typischer Blickwinkel – Datentypen
171
Anders betrachtet – Datentypen
173
Ansprache – Datenobjekte verwenden
175
Dynamik pur oder Statik nur? – Statisch und dynamisch typisierte Variablen
176
Zuerst mal elementar lokal – Lokale elementare Typen
178
Dann elementar global – Globale elementare Typen
180
Elementar global con domäne – Domäne
183
Strukturell lokal – Lokale strukturierte Typen
186
Struktur global – Globale strukturierte Typen
188
Tabellarisch – typisch/intern – Lokaler Tabellentyp
192
Her mit der internen Tabelle
193
Wie viel Spalten hätten Sie denn gerne – Zeilentyp
194
Normal, sortiert oder doch gehasht – Tabellenart
195
Open the door please – Schlüssel
197
Heute mal kopflos – Kopfzeile
198
Tabellen für alle – Globaler Tabellentyp
199
Operation: Table – Tabellenoperationen
201
Einzeln geht es auch – Einzelverarbeitung von Tabelleneinträgen
205
Ändern und Löschen zum Abrunden – Noch mehr Tabellenoperationen
206
Eine kleine Gutenachtgeschichte (über CDS)
207
6 Si parla ABAP? Echtes Küchenlatein – ABAP-Syntax I
213
Von Kontrollen und Schleifen
213
Zuweisungen, Operationen, Funktionen
214
Bitte nicht abweisen – Zuweisungen
217
Was du darfst und was du sollst – Konvertierungsregeln
219
Ketten ohne Perlen – Zeichenketten-Funktionen
221
Von Segmenten und Offsetten – Zeichenketten-Operationen
225
Ohne Rechnung, ohne mich – Arithmetische Operationen
227
Notandor – Logische Ausdrücke
228
Verzweige, falls … – IF … THEN … ELSE
230
Cassis – CASE … WHEN … ENDCASE
232
Bedingungslose Schleifen – DO … ENDDO
233
Krasses Projekt für Hardcore-ABAPer
234
Bedingte Schleife – Fußgesteuert
236
Bedingte Schleife – Kopfgesteuert
237
Jetzt aber mal systematisch – Systemfelder
238
Großbaustelle Rezeptprogramm
240
7 Kleine Häppchen sind leichter wiederverdaut( „Schluss mit Spaghetti!“ ) – ABAP-Syntax I I
243
Motivation durch Demotivieren
244
Den richtigen Zeitpunkt finden – Ereignisblöcke
245
Ereignisreiche Programme – Ereignisschlüsselwörter
246
Ereignisse: Rekapitulation mit Selbstreflexion
247
Zur richtigen Zeit an irgendeinem Fleck?
249
Meine schönsten Ereignisse – Rahmenprogramm
250
Dynpros mit Modul – PBO, PAI, HOV
252
Module, ganz kurz – Dynpro-Programmierung
253
Aber nun mit Schnittstelle – Unterprogramme
254
Definiere zuerst! Unterprogramm-Definition
255
Übergeben und Übernehmen – Schnittstellenparameter für das Unterprogramm
256
Lesen von DB mit Kapsel – DB-Zugriff in Unterprogramm
258
Ein Typ muss es sein – Schnittstelle typisieren
259
Bitte mit Typ – Typisieren
260
Warum in die Ferne schweifen? – Lokale Variablen
261
Sichtbar oder nicht – Lokale Überdeckung
262
Aufruf bitte – Unterprogramm-Aufruf
263
Globale Wiederverwendung – Funktionsbausteine
268
Leg dir eine Funktionsgruppe an
273
Es ist so weit, global bereit – Funktionsbaustein
274
Haaalloooooo – Funktionsbaustein-Aufruf
279
8 Schrödinger zeigt Klasse – ABAP Objects
283
Begriffe aus der Realität
285
Holistische Sichtweise
287
Erst denken, dann lenken: Einfache UML als Analysewerkzeug zur Visualisierung von Klassen/Objekten
292
Klasse Kaffee(-vollautomat) auf dem Papier
294
Ohne meine Kollaborateure bin ich nichts
296
Klasse oder doch Objekt
298
Dein kleines Objektistan
303
Datenablage – Attribute
308
Wasserstand und Pause
310
Klasse Attribute, oder was?
311
Privat verkalkt / Private Attribute
314
Ab jetzt mit Methode – Schrödinger frischt auf
315
Mit Methode – ran an den Code
316
Die Schnittstelle der Methode
320
Ganz spezielle Methoden
323
Methoden für den Wasserbehälter
334
Von lokal nach global
336
Attribute und Methoden
338
Kaffeebohnen im Behälter
342
Sender mit Sendungsbedürfnis
347
Nächster Zubereitungsschritt: der Empfänger
348
Objektorientiertes Verkuppeln
349
Kaffee s'il vous plaît
351
11 Das Kapitel für Feiglinge – Ausnahmen
417
Ausnahmsweise behandelt
418
Eine kleine Geschichte der Ausnahmen
420
Noch mal langsam: Mit SY-SUBRC. Ausnahmewert wird gesetzt …
424
… und von dir behandelt
425
It’s RAISING man, hallelujah.
426
The Catcher in the System
430
Ausnahmen melden (mit Nummern) …
430
… und behandeln (nach Nummern)
431
Ausnahmen melden (mit Ausnahmeklassen) …
437
… und Ausnahmen behandeln, aber richtig! Mit Ausnahmeklassen.
440
Das ausnahmengespickte Projekt
441
12 Spaghetti-Programmierung – Selektionsbilder, Listen und Nachrichten (GUI I)
447
Vom kleinen Window-Farmer bis zum Groß-GUI-Besitzer: Jeder will ein Selektionsbild!
448
Selektionsbild für Beschränkte mit Liste
450
PARAMETERS: Das kleinere der Selektionsbild-Ungeheuer
452
Rund wie ein Radiobutton
459
„Du darfst“ war gestern, heute ist „Du musst“
461
Aber satt war er noch immer nicht: SELECT-OPTIONS
465
Mehr, Mehrere, Mehreres (ohne Rauschen)
470
Zur Anwendung gebracht … fast
474
Graue Theorie: Eingabehilfe, Prüftabelle
476
Entfessle den Künstler in dir: Screen-Gestaltung
478
Ereignisreich geht’s weiter
490
Tagesschau … also eine Nachrichtensendung
493
L – Li – Lis – List – Liste
497
Keine Beichte notwendig: Interaktion mit einer Liste
504
17 Vorratskammer einrichten mit ziemlich viel Schnickschnack – DB-Tabellen erstellen
611
Freiland-Datenhaltung – Daten persistieren
612
Warum einfach, wenn es mit Schnittstelle geht – Die Datenbankschnittstelle
614
Transparente Tabelle en Detail
617
Spalten und der Rest – Tabellenfelder
620
Ohne Technik keine Tabelle – Technische Einstellungen
625
Mehr als eine Tabelle
630
Welcher Wert ist möglich – Fremdschlüssel
633
Ich will auch anders suchen – Sekundärindex
638
Ändern oder nicht, was geht – Erweiterungskategorie
641
Definieren und Realisieren – Datenbankobjekt
643
Mein erster Eintrag – Datenbanktabellen-Einträge erzeugen
644
Artenvielfalt im Dictionary – Weitere Tabellenarten
646
18 Vorratskammer plündern – DB-Tabellen auslesen
647
Eingelagert und geplündert – Datenpufferung
649
Datenmanipulator nativ – DML mit Native SQL
650
Einfach definieren – Datendefinition mit dem ABAP Dictionary
650
Alles recht und schön – Berechtigungen und Konsistenzprüfungen
651
Open SQL grundiert – Basisbefehlssatz aus Open SQL
651
Verklausuliert – SELECT-Klausel
653
Wohin damit – INTO target
656
Aber bitte nicht alles – WHERE-Klausel
659
Da geht noch mehr – Weitere Klauseln
660
Und jetzt alles kombiniert – SELECT-Beispiel
661
Mehr als eine Tabelle ist auch okay – Views
666
Schritt für Schritt zum View mit relationalen Operatoren
670
Da will ich auch nicht alles – Selektionsbedingungen
679
Zusammenfassung in Bildern – View-Definition
680
Mit Views programmieren
682
Weil du so brav warst – Programmieren mit Views
684
Die CDS-Beziehungskiste: Von Joins und Assoziationen
686
Mit CDS-Views programmieren
688
19 Vorratskammer in Schuss halten – DB-Daten pflegen
691
Lesen ist Silber, Schreiben ist Gold – DELETE, UPDATE, MODIFY und INSERT
692
Sichere Daten – Transaktionskonzept
692
Von einem Zustand zum nächsten – Datenbank-LUW
694
Aktionen bündeln – SAP-LUW
698
Und jetzt auch noch transaktional – SAP-Transaktion
699
Datenmanipulator-Entwicklungsrahmen – Das Programm für die Open-SQL-Anweisungen
701
Und noch eins und noch eins und … – INSERT
706
Ändern muss man auch ab und zu – UPDATE
711
Kombianweisung – MODIFY
717
Halt, Sperre! – Sperrkonzept
719
Die fünf Gebote der performanten DB-Programmierung
720