AMDP

Blog posts for category "AMDP"

Semantische Gruppierung im BW 7.50

5. März 2024

Leider funktioniert im BW 7.50 bei der HANA-Ausführung die semantische Gruppierung nicht, um damit alle Datensätze mit gleichen…

SELECT einzelner Datensätze aus 1:N Beziehungen

29. August 2022

Ein häufiges Problem im SQL (und damit auch in CDS ABAP ) ist das Nachlesen einzelner Daten aus einer anderen Tabelle (hier Lookup-Tabelle…

AMDP Coding Guidelines

12. Juli 2022

Diese AMDP Programmierrichtlinien sind ein Vorschlag für ABAP und SAP BW Projekte. Sie sind ursprünglich für den Anwendungsfall von AMDP…

Vortrag Best of ADT auf der ABAPConf 2021

9. Dezember 2021

Hier sind die Folien von meinem Vortrag auf der ADT auf der ABAPConf 2021 . Herunterladen Anmerkung zu den Folien : Es ist keine…

SAP ABAP und HANA Programmiersprechstunde

15. November 2021

In der Sprechstunde lösen wir gemeinsam konkrete Probleme der Teilnehmer Wir haben jetzt wieder regelmäßige Sprechstunden im Programm. Jetzt…

Die 2. Auflage von SQLScript for SAP HANA ist erschienen

17. September 2021

Offiziell ist die 2. Auflage von SQLScript for SAP HANA, also der Englischen Ausgabe meines Buches, schon seit Mitte August verfügbar. Heute…

Die 2. Auflage der englischen Ausgabe von SQLScript for SAP HANA erscheint im August

19. Juli 2021

Das Erscheinen der 2. Auflage der englischen Ausgabe von SQLScript für SAP HANA ist für den 26. August 2021 geplant. Die Ausgabe ist…

Der ABAPVARCHARMODE: Leerzeichen und leere Zeichenketten in ABAP und SQLScript

21. April 2021

Die beiden Programmiersprachen ABAP und SQLScript der SAP verhalten, wenn es um die Verarbeitung von Zeichenketten mit Leerzeichen geht…

Webinar: SQLScript im SAP BW/4HANA

28. Februar 2021

Im Februar habe ich für die Bitech AG ein Webinar für die Kunden der Bitech AG in Leverkusen mit dem Thema " SQLScript im SAP BW/4HANA…

Wiederverwendung von Geschäftslogik in AMDP Transformationsroutinen

16. November 2020

Heute morgen habe ich den großartigen Artikel von Lars Breddemann über die Trennung von Business Logik von den darunterliegenden…

Nicht erlaubte Zeichen im SAP BW/4HANA mit SQLScript behandeln

6. November 2020

Mit SQLScript lassen sich Fehler wegen der nicht erlaubten Zeichen im SAP BW elegant und performant beim Laden vermeiden. Dieser Artikel…

AMDP-Prozeduren

29. Oktober 2020

Mit AMDP-Prozeduren kann im ABAP ganz einfach und elegant komplexere Anforderungen in der SAP HANA Datenbank auslagern. Ein Auszug aus der…

Das AMDP Framework

29. Oktober 2020

Das AMDP Framework liefert einen einfachen Weg, mit dem Datenbankprozeduren in SQLScript in ABAP Programmen und BW-Transformationsroutinen…

HANA SQLScript Transformationsroutinen im BW/4HANA - ein Beispiel

27. Oktober 2020

In diesem Blogpost möchte ich ein kleines Beispiel für eine AMDP aka. HANA Script oder AMDP Script Transformationsroutine im SAP BW…

AMDP Debugging in Transformationsroutinen

19. Oktober 2020

Mit AMDP Debugging in Transformationsroutinen im BW/4HANA können Fehler leicht gefunden werden. Ein Auszug aus der 2. Auflage meines Buches…

Fragen und Antworten aus dem Webinar SQLScript und AMDP für SAP BW

13. September 2019

Am 13.9.2019 hat das Webinar SQLScript und AMDP für SAP BW stattgefunden. Am Ende der Veranstaltung bestand die Möglichkeit, Fragen zu…

Aufzeichnung des Webinar SQLScript und AMDP für SAP BW

2. September 2019

Aufzeichnung und Folien des Webinars SQLScript und AMDP im SAP BW Folien des Webinars Aufzeichnung des Webinars Nachträgliche Aufzeichnung…

Webinar: SQLScript & AMDP im SAP BW

15. August 2019

Webinar: SQLScript und AMDP im SAP BW Das Webinar hat am 13.9.2019 live online stattgefunden. Nutzen Sie bereits ein SAP BW on HANA oder SAP…

Neue Parameter in der Signatur der AMDP-Routinen in den BW-Transformationen

26. Oktober 2018

In der Schnittstelle der AMDP-Routinen für BW-Transformationen haben sich ein paar neue Parameter eingeschlichen. Das ist grundsätzlich zu…

Mit den ABAP Managed Database Procedures, kurz AMDP, gelingt es der SAP, die Performance der SAP HANA Datenbank in ABAP Entwicklungen einfach nutzbar zu machen. Dabei handelt es sich um ein Framework, das mittlerweile nicht nur SQLScript Prozeduren, sondern auch Funktionen umfasst und mit den CDS-Table Functions auch die Erstellung von in SQLScript _programmierten Views _erlaubt. Auf dieser Seite habe ich ein paar nützliche Links zu diesem Thema zusammengetragen.

Anwendungsfälle von AMDP

Die Technik der ABAP Managed Database Procedures wird für unterschiedliche Szenarien eingesetzt. Das wahrscheinlich wichtigste ist die Verwendung im SAP BW/4HANA:

AMDP für SAP BW/4HANA Transformationsroutinen

Mit dem BW on HANA hat die SAP die Ausführung von Data Transfer Prozessen (DTPs) neu implementiert. Und zwar direkt auf der HANA Datenbank. Das hat eine enorme Beschleunigung gebracht und die Laufzeiten ca. um den Faktor 10 reduziert. Eine Voraussetzung für diese HANA Ausführung ist allerdings, dass keine ABAP Routinen in den Transformationen verwendet werden. Die Alternative zu ABAP Routinen sind Prozeduren in SQLScript. Diese werden bei der Entwicklung als AMDP Methoden erfasst. Der Rahmen dieser Klassen und Methoden wird vom BW-System passend zur Transformation generiert. Der Entwickler muss dann noch den SQLScript-Code schreiben. Eine tiefergehende Kenntnis von der Definition von Datenbankprozeduren ist nicht notwendig.

AMDP in ABAP Programmen

Die Nutzung von SQLScript ist vor allem dann sinnvoll, wenn es sich

  1. um große Datenmengen handelt und
  2. auf die Laufzeit ankommt. Beides ist im SAP BW gegeben, weshalb AMDP hier eine große Rolle spielt. Wenn diese Faktoren aber auch auf ein ABAP Programm in S/4HANA zutreffen, dann können wir auch hier SQLScript über AMDPs nutzen. Entweder um direkt auf der Datenbank Prozeduren auszuführen. Diese können lesend und schreibend auf Tabellen zugreifen. Oder in Form von CDS-Table Functions als programmierte Views. Diese werden in SQLScript als Funktion implementiert. Eine CDS-Entität dient dann als Wrapper darum, um sie für ABAP Programme zur Verfügung zu stellen. Sie können dort wie ein DDic-View in einer SELECT-Abfrage genutzt werden.