ABAP Objects

Objektorientiertes ABAP für moderne Clean Core SAP Systeme

Eclipse und die ABAP Development Tools (ADT)

(C) Brandeis Consulting📁

SAP Entwicklungsumgebungen für ABAP Objects

bisher - SE24

SE24

neu - Eclipse + ADT

alt text

  • ABAP Objects im SAPGUI über SE24 bzw. SE80
  • Modernes ABAP nur noch mit Eclipse + ABAP Development Tools (ADT)
  • Empfehlung der SAP: nutzt Eclipse ADT!
(C) Brandeis Consulting📁

ABAP Klasse anlegen

bisher - SE80

SE80

neu - Eclipse ABAP Projekt

ADT

  • Eclipse ist eine Entwicklungsumgebung, die nicht von und für SAP gebaut wurde
  • Die Konzepte sind etwas anders als gewohnt
  • Das Anlegen von ABAP Objekten erfolgt z.B. über das Kontextmenü
(C) Brandeis Consulting📁

ABAP Klassendefinition

bisher

Claas Props

neu

class ZCL_ABAP_CLASS definition
  public
  final
  create public
  shared memory enabled .

public section.
protected section.
private section.
ENDCLASS.

CLASS ZCL_ABAP_CLASS IMPLEMENTATION.
ENDCLASS.
  • Formularbasiert (SE24/SE80) vs. sourcecodebasiert (Eclipse ADT)
  • Trennung im Sourcecode zwischen definition und implementation
  • Einstellungen aus dem formularbasierten Ansatz werden zu Code
(C) Brandeis Consulting📁

SAPGUI: Support Formularbasiert- und Quelltext-Modus

SAPGUI Formular

SAPGUI Source

  • Im SAPGUI Editor kann zwischen der Quelltext-Sicht und der formularbasierten Sicht gewechselt werden
  • In der Quelltext-Sicht gehen bereits einige Editiermöglichkeiten: Eclipse ADT bietet mehr...
(C) Brandeis Consulting📁

Eclipse + ADT installieren

  1. Installation Eclipse
  1. Installation weiterer Software über Menü Help -> Install new Software
  1. Installation von Addons aus dem Eclipse Marketplace über Menü Help -> Eclipse Marketplace
  • Suche z.B. nach ABAP
  • Tipp für einfacheren Umstieg von der SAPGUI -> ABAP Favorites (ABAPBlog.com)
  • KI Support durch Github Copilot
  1. Update Check über Menü Help -> Check for Updates
(C) Brandeis Consulting📁

Eclipse Schnelleinstieg

Eclipse

(C) Brandeis Consulting📁

Eclipse Konsolenanwendung

CLASS zcl_console_app DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.
    INTERFACES if_oo_adt_classrun .
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.

CLASS zcl_console_app IMPLEMENTATION.
  METHOD if_oo_adt_classrun~main.
    out->write( |Ich bin eine ausführbare Klasse!| ).
  ENDMETHOD.
ENDCLASS.
  • In der ABAP Cloud gibt es keine Reports oder Funktionsbausteine zum schnellen Testen von ABAP Code
  • Die Alternative heißt Konsolenanwendung oder auch ausführbare Klasse
  • Jede Klasse kann über das Einbinden vom Interface IF_OO_ADT_CLASSRUN ausführbar gemacht werden
  • Die Interface-Methode if_oo_adt_classrun~main enthält dann den ABAP Code
  • über out->write( ) kann Text in die Eclipse Console geschrieben werden, eine besondere Sicht innerhalb vom Eclipse

Weitere Infos:

(C) Brandeis Consulting📁

Shortcuts

Bearbeiten

Funktion Tastenkombination
Speichern Ctrl + S
Aktivieren Ctrl + F3
Pretty Printer Shift + F1
Quick-Fix Ctrl + 1
UPPERCASE Ctrl + Shift + X
lowercase Ctrl + Shift + Y
Blockmodus an/aus Alt + Shift + S
Suchen & Ersetzen Ctrl + F
Vorschläge Ctrl + Space
Wort markieren Doppelklick

Ausführen & Navigation

Funktion Tastenkombination
Ausführen in GUI F8
Ausführen in Konsole F9
Unit Tests Ausführen Ctrl + Shift + F10
CDS- oder Tabelleninhalt F8
Element Info F2
Navigieren zur Definition Ctrl + Doppelklick
Vor- oder Zurücknavigieren Alt + 🡪 oder Alt + 🡨
Datei im Editor neu laden F5
Tabreiter schliessen Ctrl + W
GUI Fenster öffnen Ctrl + 6
(C) Brandeis Consulting📁

Shortcuts 2

Coding anpassen

Funktion Tastenkombination
Methode Extrahieren Alt + Shift + M
Rename Alt + Shift + R
ABAP Code Cleaner Ctrl + 4

Arbeiten im Editor

Funktion Tastenkombination
Open in Project Ctrl + Alt + P
Projekt wechseln Alt + Shift + P
Offene Fenster anzeigen Ctrl + E

Eclipse Allgemein

Funktion Tastenkombination
The Mother of all Shortcuts Ctrl + Shift + L
Find Actions Ctrl + 3
(C) Brandeis Consulting📁