Alle Technologien in einem Band! Ob Sie neue, zukunftssichere Erweiterungen programmieren oder endlich mit den Modifikationen in Ihren SAP-Systemen aufräumen möchten in diesem Buch erhalten Sie das erforderliche Wissen. Jede Methode wird ausführlich und mit Codebeispielen erläutert: User-Exits, klassische und neue BAdIs, Business Transaction Events, implizite und explizite Erweiterungspunkte u. v. m.
Aus dem Inhalt:
Klassische Erweiterungstechniken und Modifikationen
Enhancement Framework
Erweiterungskonzept für SAP S/4HANA
Erweiterung des ABAP Dictionary
User-Exits
Customer-Exits
Klassische und neue BAdIs
Business Transaction Events
Implizite und explizite Erweiterungspunkte
Modifikationsabgleich
Erweiterung von CDS, BOPF, AMDP, SAP Fiori
Erweiterung von IMG, IDocs, BAPIs
Erweiterungsmöglichkeiten bereitstellen
Inhaltsverzeichnis
Einleitung . . . 17
1. Erweiterungstechniken von SAP im Überblick . . . 21
1. 1 . . . Modifikationen . . . 22
1. 2 . . . User Exits . . . 22
1. 3 . . . Customer Exits . . . 23
1. 4 . . . Klassische Business Add-ins . . . 23
1. 5 . . . Business Transaction Events . . . 24
1. 6 . . . Enhancement Framework . . . 25
1. 7 . . . Abgleich von Erweiterungen . . . 29
1. 8 . . . Vererbung und Redefinition von Klassen . . . 29
1. 9 . . . CDS Views erweitern . . . 30
1. 10 . . . Geschäftsobjekte erweitern . . . 31
1. 11 . . . ABAP Managed Database Procedures erweitern . . . 31
1. 12 . . . OData-Services erweitern . . . 32
1. 13 . . . Fiori-Apps erweitern . . . 33
1. 14 . . . BAPI-Funktionsbausteine erweitern . . . 34
1. 15 . . . IDocs erweitern . . . 35
1. 16 . . . Zusammenfassung . . . 35
TEIL I Klassische Erweiterungstechniken . . . 37
2. Erweiterung des ABAP Dictionarys . . . 39
2. 1 . . . Strukturerweiterungen . . . 39
2. 2 . . . Suchhilfenerweiterungen . . . 42
2. 3 . . . Indexerweiterungen . . . 47
2. 4 . . . Einzelwerterweiterung . . . 48
2. 5 . . . Zusammenfassung . . . 50
3. Modifikationen . . . 51
3. 1 . . . Modifikationen am Quelltext . . . 52
3. 2 . . . Modifikationen an ABAP-Dictionary-Objekten . . . 56
3. 3 . . . User Exits . . . 60
3. 4 . . . Abgleich von Modifikationen und Erweiterungen . . . 64
3. 5 . . . Zusammenfassung . . . 73
4. Customer Exits . . . 75
4. 1 . . . Customer Exits implementieren . . . 75
4. 2 . . . Funktions-Exits finden . . . 85
4. 3 . . . Menüerweiterungen . . . 89
4. 4 . . . Screenerweiterungen . . . 98
4. 5 . . . Zusammenfassung . . . 112
5. Klassische Business Add-ins . . . 113
5. 1 . . . Ein klassisches BAdI implementieren . . . 114
5. 2 . . . Aufruf eines klassischen BAdIs . . . 119
5. 3 . . . Klassische BAdIs finden . . . 121
5. 4 . . . Filtersteuerung . . . 123
5. 5 . . . Menüerweiterungen . . . 126
5. 6 . . . Screenerweiterung . . . 135
5. 7 . . . Zusammenfassung . . . 153
6. Business Transaction Events . . . 155
6. 1 . . . Einführung . . . 155
6. 2 . . . Ein BTE implementieren . . . 160
6. 3 . . . BTEs finden . . . 167
6. 4 . . . Zusammenfassung . . . 169
7. Vererbung von Klassen . . . 171
7. 1 . . . Vererbung . . . 171
7. 2 . . . Redefinition . . . 179
7. 3 . . . Zusammenfassung . . . 182
TEIL II Erweiterungstechniken des Enhancement Frameworks . . . 183
8. Das Enhancement Framework . . . 185
8. 1 . . . Architektur des Enhancement Frameworks . . . 185
8. 2 . . . Mit dem Enhancement Framework arbeiten . . . 189
8. 3 . . . Zusammenfassung . . . 193
9. Implizite Erweiterungspunkte . . . 195
9. 1 . . . Erweiterungen am Kopf und Fuß von Entwicklungsobjekten . . . 196
9. 2 . . . Erweiterungen von globalen Klassen . . . 200
9. 3 . . . Erweiterung von Methoden . . . 201
9. 4 . . . Erweiterung von lokalen Klassen . . . 203
9. 5 . . . Funktionsbausteinerweiterungen . . . 204
9. 6 . . . Debugging impliziter Erweiterungspunkte . . . 206
9. 7 . . . Zusammenfassung . . . 208
10. Explizite Erweiterungsoptionen . . . 209
10. 1 . . . Erweiterungspunkte . . . 209
10. 2 . . . Erweiterungssektionen . . . 212
10. 3 . . . Explizite Erweiterungsoptionen finden . . . 215
10. 4 . . . Zusammenfassung . . . 218
11. Neue Business Add-ins . . . 219
11. 1 . . . Quelltexterweiterungen . . . 221
11. 2 . . . Filtersteuerung . . . 234
11. 3 . . . Menüerweiterungen . . . 239
11. 4 . . . Screenerweiterungen . . . 246
11. 5 . . . Migration klassischer BAdIs . . . 261
11. 6 . . . Mehrfachverwendung von BAdIs . . . 267
11. 7 . . . Zusammenfassung . . . 269
12. Das Switch Framework . . . 271
12. 1 . . . Architektur des Switch Frameworks . . . 272
12. 2 . . . Mit dem Switch Framework arbeiten . . . 276
12. 3 . . . Zusammenfassung . . . 287
13. Erweiterungen mit Transaktion SPAU_ENH abgleichen . . . 289
13. 1 . . . Abgleich durchführen . . . 290
13. 2 . . . Zusammenfassung . . . 296
TEIL III Erweiterbarkeit neuer Entwicklungstechnologien . . . 297
14. Erweiterung von CDS Views . . . 299
14. 1 . . . CDS-View-Erweiterungen . . . 300
14. 2 . . . Indirekte Erweiterung mit Extension Include Views . . . 311
14. 3 . . . CDS-Metadatenerweiterungen . . . 314
14. 4 . . . Zusammenfassung . . . 317
15. Erweiterung von ABAP Managed Database Procedures . . . 319
15. 1 . . . Ein AMDP-BAdI implementieren . . . 319
15. 2 . . . Aufruf einer AMDP-BAdI-Methode . . . 322
15. 3 . . . Zusammenfassung . . . 324
16. Erweiterung von Geschäftsobjekten . . . 325
16. 1 . . . Klassische Möglichkeiten der Erweiterung . . . 326
16. 2 . . . Erweiterungsobjekt anlegen . . . 333
16. 3 . . . Zusätzlichen Unterknoten anlegen . . . 336
16. 4 . . . Knotenfunktionen erweitern . . . 341
16. 5 . . . Zusammenfassung . . . 349
17. Erweiterung von OData-Services . . . 351
17. 1 . . . OData-Services überdefinieren . . . 352
17. 2 . . . Standardfall: Entitätstyp mit Struktur . . . 359
17. 3 . . . Sonderfall: Entitätstyp ohne Struktur . . . 374
17. 4 . . . Erweiterten Service testen . . . 382
17. 5 . . . Zusammenfassung . . . 384
18. Erweiterung von SAP-Fiori-Apps . . . 385
18. 1 . . . In-App-Erweiterungen mit webbasierten Werkzeugen . . . 386
18. 2 . . . Programmatische Erweiterung . . . 400
18. 3 . . . Zusammenfassung . . . 412
TEIL IV Weiterführende Themen . . . 415
19. Erweiterungen in eigenen Anwendungen bereitstellen . . . 417
19. 1 . . . Explizite Erweiterungspunkte bereitstellen . . . 418
19. 2 . . . Erweiterungssektionen bereitstellen . . . 421
19. 3 . . . Erweiterungsspot verwalten . . . 423
19. 4 . . . Neue Business Add-ins bereitstellen . . . 425
19. 5 . . . Menüerweiterungen ermöglichen . . . 443
19. 6 . . . Screenerweiterungen ermöglichen . . . 448
19. 7 . . . AMDP-BAdI anlegen . . . 454
19. 8 . . . Zusammenfassung . . . 461
20. Erweiterung von Web-Dynpro-Anwendungen . . . 463
20. 1 . . . Erweiterungsimplementierung anlegen . . . 464
20. 2 . . . Controller erweitern . . . 466
20. 3 . . . Views erweitern . . . 470
20. 4 . . . Windows erweitern . . . 474
20. 5 . . . Eine Web-Dynpro-Komponente erweitern . . . 476
20. 6 . . . Zusammenfassung . . . 495
21. Erweiterung des Code Inspectors . . . 497
21. 1 . . . Einführung in den Code Inspector . . . 498
21. 2 . . . Code Inspector um eigene Prüfungen erweitern . . . 500
21. 3 . . . Zusammenfassung . . . 515
22. Erweiterung von BAPIs . . . 517
22. 1 . . . Übergabe kundeneigener Felder mit EXTENSIONIN . . . 518
22. 2 . . . Auslesen kundeneigener Felder mit EXTENSIONOUT . . . 525
22. 3 . . . Zusammenfassung . . . 526
23. Erweiterung des Einführungsleitfadens . . . 527
23. 1 . . . Eigenen Einführungsleitfaden anlegen . . . 528
23. 2 . . . Eine Erweiterung des Standardeinführungsleitfadens anlegen . . . 534
23. 3 . . . Zusammenfassung . . . 538
24. Erweiterung von IDocs . . . 539
24. 1 . . . Erweiterung für ein IDoc anlegen . . . 540
24. 2 . . . IDoc-Erweiterung testen . . . 548
24. 3 . . . Zusammenfassung . . . 555
Anhang . . . 557
A . . . Beschaffung von Daten: Arbeitsspeicher . . . 559
B . . . Beschaffung von Daten: Dirty Assign . . . 563
C . . . Mögliche Konfliktfälle beim Abgleich von Erweiterungen in Transaktion SPAU_ENH . . . 567
D . . . Fragen und Antworten zum Verständnis dieses Buches . . . 573
E . . . Der Autor . . . 583
Index . . . 585