AMDP (ABAP): Unterschied zwischen den Versionen
Aus MattWiki
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
AMDP steht für ABAP Managed Database Procedures. Damit wird das Paradigma Code-to-Data umgesetzt. | AMDP steht für ABAP Managed Database Procedures. Damit wird das Paradigma Code-to-Data umgesetzt. | ||
Eine AMDP-Methode ist eine Methode einer ABAP-Klasse, die jedoch statt ABAP-Code SQLScript enthält. | |||
Dieser Artikel enthält grundsätzliche Informationen über AMDP. | Dieser Artikel enthält grundsätzliche Informationen über AMDP. | ||
Zeile 5: | Zeile 7: | ||
Mehr zum in AMDP verwendeten SQLScript siehe [[SQLScript_(SAP)]] | Mehr zum in AMDP verwendeten SQLScript siehe [[SQLScript_(SAP)]] | ||
== | == AMDP-Methoden definieren == | ||
Damit AMDP-Methoden genutzt werden können, muss in der Klasse das folgende Interface vorhanden sein: | |||
<syntaxhighlight lang="abap"> | |||
CLASS ZMO_CL_AMDP_01 DEFINITION | |||
PUBLIC | |||
FINAL | |||
CREATE PUBLIC . | |||
PUBLIC SECTION. | |||
" Interface notwendig, um in Klasse AMDP nutzen zu können | |||
INTERFACES: IF_AMDP_MARKER_HDB. | |||
PROTECTED SECTION. | |||
PRIVATE SECTION. | |||
ENDCLASS. | |||
</syntaxhighlight> | |||
== Eigenschaften von AMDP-Methoden == | |||
Parameterübergaben nur mit '''Value''' möglich. | |||
Unterstützte Parameter: | |||
{| class="wikitable" | |||
! Parametertyp !! Unterstützt | |||
|- | |||
| IMPORTING || Ja | |||
|- | |||
| EXPORTING || Ja | |||
|- | |||
| RETURNING || Nein | |||
|- | |||
| CHANGING || Ja | |||
|} | |||
Zeile 49: | Zeile 78: | ||
ENDCLASS. | ENDCLASS. | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Transporte == | |||
Mit AMDP kann das ABAP-Transportsystem genutzt werden - Zusätzliche HANA-Transporte sind nicht notwendig. | |||
== Zugriffsrechte und Benutzerparameter == | == Zugriffsrechte und Benutzerparameter == |
Version vom 26. April 2018, 08:37 Uhr
AMDP steht für ABAP Managed Database Procedures. Damit wird das Paradigma Code-to-Data umgesetzt.
Eine AMDP-Methode ist eine Methode einer ABAP-Klasse, die jedoch statt ABAP-Code SQLScript enthält.
Dieser Artikel enthält grundsätzliche Informationen über AMDP.
Mehr zum in AMDP verwendeten SQLScript siehe SQLScript_(SAP)
AMDP-Methoden definieren
Damit AMDP-Methoden genutzt werden können, muss in der Klasse das folgende Interface vorhanden sein:
CLASS ZMO_CL_AMDP_01 DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
" Interface notwendig, um in Klasse AMDP nutzen zu können
INTERFACES: IF_AMDP_MARKER_HDB.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
Eigenschaften von AMDP-Methoden
Parameterübergaben nur mit Value möglich.
Unterstützte Parameter:
Parametertyp | Unterstützt |
---|---|
IMPORTING | Ja |
EXPORTING | Ja |
RETURNING | Nein |
CHANGING | Ja |
Codebeispiel AMDP-fähige Klasse
CLASS ZMAOT_CL_AMDP_01 DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
" Interface notwendig, um in Klasse AMDP nutzen zu können
INTERFACES: IF_AMDP_MARKER_HDB.
" Import- und Export-Parameter werden als VALUE übergeben
" Export-Parameter einen statischen Datentyp / Tabellentyp haben
CLASS-METHODS:
METHOD_01_READ
EXPORTING
VALUE(ET_AMDP) TYPE ZTW_TT_AMDP_DEMO_01
RAISING
CX_AMDP_ERROR.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS ZMAOT_CL_AMDP_01 IMPLEMENTATION.
METHOD METHOD_01_READ BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY USING ZTW_AMDP_DEMO_01.
et_amdp =
select * from ZTW_AMDP_DEMO_01;
ENDMETHOD.
ENDCLASS.
Transporte
Mit AMDP kann das ABAP-Transportsystem genutzt werden - Zusätzliche HANA-Transporte sind nicht notwendig.
Zugriffsrechte und Benutzerparameter
Benutzerparameter: Benutzerparameter (ABAP)
Zugriffsrechte: Zugriffsrechte (SAP)