Timo Eggengoor
14. Juli 2020

Problemaufdeckung bei AMDP? AMDP-Debugging!

Developer programming and coding technology. Website design Safety of the social world Cyberspace concept.

Mit den ABAP Managed Database Procedures (AMDP) gibt es ganze neue Möglichkeiten, um die Performance zu verbessern und Code direkt auf der Datenbank auszuführen. Der sogenannte „Code Pushdown“ überträgt ausführbaren Code direkt auf den Datenbankserver und führt ihn dort aus. Wie kann jedoch der Code auf der Datenbank per Debugging analysiert werden, um Probleme aufzudecken oder das Verhalten der Anwendung zu verstehen? Auch bei AMDP muss auf das Debugging nicht verzichtet werden!

Beitragsbild-Wie Sie Ihre SAP-Systemlandschaft optimal auf S_4HANA vorbereiten
In diesem Webinar erfahren Sie, welche Technologien der SAP für der Umstieg auf S/4HANA wirklich wichtig sind und wie Sie das volle Potenzial von S/4HANA ausschöpfen.

ABAP Managed Database Procedures oder kurz AMDP sind Klassen, die in ABAP erzeugt, mit nativen SQL befüllt und direkt auf der Datenbank ausgeführt werden können. Beim ersten Ausführen der Klasse auf dem Application Server werden auf den SAP HANA DB die entsprechenden Prozeduren erzeugt und ausgeführt. Für das Debugging ist diese erste Ausführung unbedingt notwendig. Erst danach kann AMDP-Debugging stattfinden. Weiteres zu AMDP finden Sie übrigens auch in diesem Blogbeitrag.

Um AMDP anlegen und auch debuggen zu können, sind mindestens die Version ABAP 7.5 und auch Eclipse und die ABAP Development Tools (ADT) notwendig. Die Installation haben wir in einem Ebook zusammengefasst:

ABAP in Eclipse

Einrichtung von ABAP unter Eclipse [HowTo]

Erfahren Sie in diesem HowTo, wie die Einrichtung von ABAP in Eclipse funktioniert.

Zudem müssen Sie sicherstellen, dass die entsprechenden User zum Debugging auch die passenden Berechtigungen besitzen. Auf der SAP-ABAP-Seite sollte der Benutzer die Möglichkeit zum Ausführen und Debuggen des Programms besitzen. Der SAP-HANA-Benutzer benötigt ebenfalls Berechtigungen zum Ausführen und Debuggen der Prozedur auf dem SAP-HANA-System.

Die Benutzer

  • SAP-ABAP-Benutzer: Dies ist der Benutzer zum Programmieren, Debuggen und Ausführen von ABAP-Programmcode auf dem SAP-System.
  • SAP-HANA-Benutzer: Dieser Benutzer kann den Datenbankkatalog und das ABAP-Systemschema lesen. Außerdem kann er Prozeduren ausführen, debuggen und sich per SQLScript Debugging an Sessions des SAP<SID> Benutzers hängen.
  • SAP<SID> Benutzer (Session User): Er initiiert die Ausführung der Datenbankprozedur und vergibt die Berechtigungen, sich an eine Benutzersession per Debugging zu hängen.

AMDP Debugging: Step by step

AMDP - Aufbau des Debuggings

Wir nehmen für unser Beispiel an, dass ABAP-Programmcode eine AMDP-Klasse verwendet. Die ausgeführte AMDP-Methode soll nun mittels Debugging analysiert werden. Zuvor sollte der SAP-HANA-Benutzer in der AMDP-Prozedur einen Breakpoint an der Stelle setzen, wo in der AMDP angehalten werden soll. Zusätzlich ist auf der Datenbank eine Debug-Konfiguration zu erstellen und der SQLScript Debugger anzuschalten.

AMDP - Debugging in Eclipse aktivieren

Wichtig bei der Anlage der Debug-Konfiguration in der Ansicht „Debug“ in Ecplise ist die Auswahl einer SAP HANA Stored Procedure. In der Konfiguration wird das Debugging einer externen Session ausgewählt. Anschließend kann das SAP HANA System angewählt werden. Unter HANA User wird dann der Session User ausgewählt, der die Ausführung auf der Datenbank später über den Report ausführt. Optional kann auch der Applikationsbenutzer, also der SAP ABAP Benutzer, angegeben werden.

Ist der SQLScript Debugger angeschaltet, kann nun der Report durch den SAP ABAP Benutzer ausgeführt werden. Anschließend hält der Debugger am gewünschten Breakpoint an.

ABAP in Eclipse

Einrichtung von ABAP unter Eclipse [HowTo]

Erfahren Sie in diesem HowTo, wie die Einrichtung von ABAP in Eclipse funktioniert.

Sie benötigen Unterstützung bei der der Erstellung oder bei Debugging von AMDP? Kontaktieren Sie uns gern!



Das könnte Sie auch interessieren

Die Erläuterung eines jeden Akronyms (Abkürzung) beginnt meist mit dessen Aufschlüsselung, um so aus den einzelnen Begriffen die ursprüngliche Bedeutung schlusszufolgern. In diesem Fall jedoch entsteht folgendes Horrendum des IT-Berater Fachjargons.

weiterlesen

Core Data Services (CDS) – der wohl meist gefallene Begriff, wenn es sich um das Thema SAP HANA dreht. Kommen wir zum konkreten Doing und der Frage: Wie baue ich […]

weiterlesen

In den letzten Wochen haben wir nun schon erfolgreich zwei Live-Webinare unserer kostenlosen Webinar-Reihe für Sie durchgeführt. Damit Sie auch weiterhin Ihre Zeit optimal nutzen können, wollen wir Sie auch […]

weiterlesen

Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Kontaktieren Sie uns!
Alexander Koessner-Maier
Alexander Kössner-Maier Kundenservice