ABAP Objects

Objektorientiertes ABAP für moderne Clean Core SAP Systeme

Modernes ABAP

Unsere SAP Welt hat sich verändert

SAP im Wandel

Quelle: DSAG Jahreskongress 2025, Impulsbühne, "Von der Tradition zur Innovation", Babett Ruß, IN4MD Service GmbH

ABAP bleibt wichtigste Technologie für S/4 HANA

ABAP Technologie für S/4 HANA


  • Der ABAP Stack wird weiterhin das "technologische Fundament" von S/4 HANA bleiben
  • Es gibt den ABAP Stack auch ohne S/4 HANA als ABAP Cloud für Erweiterungen
  • Inzwischen gibt es S/4 HANA nicht nur On-Premise sondern in unterschiedlichen Deployment Optionen

ABAP Deployment Optionen

ABAP Deployment Optionen

  • Der ABAP Stack hat sich verändert und läuft jetzt auch in der Cloud
  • Das ABAP Cloud development model bringt neue Möglichkeiten aber auch Einschränkungen
  • Das bisherige Classic ABAP development model ist ggf. noch verfügbar (Private Cloud)
  • Neue Entwicklungen sollten bevorzugt im neuen Model erfolgen, um zukunftssicher zu sein (Clean Core) und keine neuen Technischen Schulden aufzubauen

ABAP Cloud development model "anschalten"

Paket

ABAP Cloud Package

Klasse

ABAP Cloud Class


  • Die ABAP Language Version kann auf Paket- oder Entwicklungsobjektebene aktiviert werden
  • Diese Paketeinstellung wird für neue Entwicklungsobjekte im Paket übernommen, kann aber manuell angepasst werden
  • Sobald ABAP for Cloud Development aktiviert ist, greifen sofort strengere Prüfungen

Was ist mit ABAP for cloud development nicht mehr erlaubt?


  • Eine kleine Auswahl:
    • SAPGUI Technologie
    • Transaktionen
    • Reports
    • SM30
    • Batch-Input
    • Implizite Enhancements
  • ABER:

Stop Classic ABAP

Beispiel: Nicht freigegebenes Objekt mit Alternative

Tabelle

Nicht freigegebene Tabelle

CDS View

Freigegebener CDS


  • Ob ein Entwicklungsobjekt freigegeben ist, erfährt man in der Eclipse-Sicht Properties unter API State
  • Für die ABAP-interne Nutzung ist der Contract C1 Voraussetzung
  • Manchmal weisen nicht-freigegebene Entwicklungsobjekte selbst auf die Alternative hin
  • Sonst Recherche notwendig (z.B. SAP Hinweise, Blogs, ...)

Beispiel: Nicht freigegebene Objekte

Funktionsbaustein

Nicht freigegebener Funktionsbaustein

Klasse

Nicht freigegebene Klasse


  • Leider der Normalfall: viele oft benutzte Bausteine sind nicht mehr verfügbar
  • die jeweiligen Alternativen müssen aufwendig recherchiert werden: oft durch verschiedene Personen parallel ohne Austausch
  • Anregung: im Entwicklungsteam solche Sachen sammeln und als kundenindividuelle Toolbox zur Verfügung stellen (z.B. über objektorientierte API und temporäre Tier-2-Proxies)

ABAP Erweiterungsoptionen

ABAP Erweiterungsoptionen

  • Einfache Erweiterungen sind in der modernen ABAP Welt sehr wichtig
  • SAP unterscheidet hier On-Stack und Side-by-Side sowie Low-Code und Pro-Code Erweiterungsoptionen
  • Zusätzliche Erweiterungsoptionen bieten die Tools rund um SAP Build und die SAP KI Joule
  • ABAP bleibt im Pro-Code Bereich eine wichtige Komponente für kundenindividuelle Anpassungen

Clean Core

ABAP Clean Core Levels


  • Clean Core bedeutet für die SAP vor allem Upgrade Stable
  • Clean Core ist nicht nur eine Aufgabe der Entwicklung: Am Standard bleiben und Nein sagen wird eine wichtige Tugend (für alle Beteiligten)
  • SAP fordert von SAP Kunden und Partnern eine Clean Core Governance und mehr Bewusstsein für Technische Schulden

Clean Core Extensibility Model

ABAP Clean Core Levels


  • Bei Public Cloud Systemen hat man kaum eine Wahl, alle anderen haben mehr Verantwortung für die Zukunft
  • Für die Bewertung hat die SAP seit Mitte 2025 auf ein Level-System (ABCD statt Tier 1-3) umgestellt
  • Hinweis: 3578329 - Frameworks, Technologien und Entwicklungsmuster im Kontext der Clean-Core-Erweiterbarkeit

SAP Hinweis 3578329

SAP Hinweis 3578329

Entwicklungsumgebungen und Programmiersprachen für SAP Entwickler

Entwicklungsumgebungen

  • Eclipse mit den ABAP Development Tools (ADT) - z.B. Entwicklungen auf dem SAP ABAP Backend und SAP HANA
  • Visual Studio Code (VSC) - z.B. FIORI und SAPUI5 basierte Benutzeroberflächen
  • SAP BTP Business Application Studio (BAS) - sehr viele Einsatzmöglichkeiten
  • SAP Build - Low-Code, Pro-Code, KI
  • SAP BTP Integration Suite - z.B. Integrationen
  • ...

SAP Teched 2025

Programmiersprachen

  • ABAP - Backend
  • HTML, Javascript, CSS - Frontend
  • Java
  • Python
  • ...

ADT for VSC

ABAP Development Tools

ADT ist Pflicht

ABAPGit und Opensource

  • ABAPGit hat sich in den letzten Jahren zum Standard in der SAP Community entwickelt
  • Der Austausch von ABAP Code wird so einfach unterstützt
  • Der Einsatz in den Projekten ist ebenfalls sinnvoll
  • In der ABAP Cloud ist es sogar das Tool für den Import und Export von Entwicklungen
  • Der "App Store" für Opensource Projekte im SAP Bereich ist https://dotabap.org/ und https://github.com
  • Die SAP stellt auf https://github.com/SAP und https://github.com/SAP-samples/ einiges an Dokumentationen und kostenlosen Programmen zur Verfügung
  • Die klassischen Quellen für die Informationsbeschaffung wurden fast vollständig ersetzt durch Youtube, Github, Devtoberfest, DSAG u.a.




ABAPGit

Zusammenfassung

  • ABAP bleibt weiterhin wichtig für SAP und speziell für die ERP Lösungen
  • Die Zukunft geht aber in Richtung des neuen ABAP Cloud development model
  • Selbst wenn die Möglichkeiten des Classic ABAP development model derzeit noch verfügbar sind, wir haben Verantwortung für die Zukunft
  • Mit dem modernen ABAP sind gewohnte Technologien nicht mehr verfügbar und wir müssen anfangen, uns mit den neuen Technologien und Werkzeugen beschäftigen
  • Opensource und Kenntnisse über Git werden immer wichtiger
  • Das SAP ABAP Backend ist nicht mehr allein auf der Welt - Business Logik, Datenflüsse und Oberflächen sollen ggf. über Side-by-Side Konzepte implementiert werden und erfordern stabile Integrationen
  • Objektorientierung begegnet uns in der modernen Welt sehr häufig und wird von SAP verwendet, um klassische Technologien abzulösen
  • Neben ABAP Objects verwenden auch andere moderne Technologien wie CDS und RAP objektorientierte Konzepte