SAP NetWeaver AS ABAP Release 750, ©Copyright 2016 SAP AG. All rights reserved.
ABAP - Keyword Documentation →
ABAP - Reference →
Processing External Data →
ABAP Database Accesses →
Native SQL →
AMDP - ABAP Managed Database Procedures
ABAP Managed Database Procedures are a framework for managing and calling
in AS ABAP. Accordingly, the ABAP Managed Database Procedures manage
A procedure or function of this type is implemented in a database-specific language (
SQLScript, L, ...) in an
and at the same time as an AMDP method in an
The following sections describe the components of AMDP:
- ABAP developers or consumers do not need separate users for the database system to manage and call
database procedures and database functions using AMDP Instead, the AS ABAP logged on to the database
system using its work processes requires the correct authorizations to manage database procedures and functions using AMDP. Missing authorizations can be detected using transaction SICK.
- If the current database of an AS ABAP is an SAP HANA database and ABAP programs access
Script procedures used to swap out code from ABAP programs to the database, ABAP Managed Database Procedures are the replacement technology for
database procedure proxies. Database procedure proxies
are still recommended when using a secondary database connection to access SQL Script procedures that exist in a different SAP HANA database.
- Currently, AMDP only supports database procedures and functions from the SAP HANA database. In principle,
however, AMDP is designed so that stored procedures and functions from other database systems can also be supported.
- The constant CALL_AMDP_METHOD of the class CL_ABAP_DBFEATURES can be used to query whether the current database supports AMDP procedures.
The programming guideline Use
Open SQL is particularly relevant for AMDP too. The use of AMDP is not recommended if the same task can be achieved using Open SQL (or
ABAP CDS). The example
AMDP, Comparison with Open SQL demonstrates
how a database access not programmed well in Open SQL can often be optimized using an improved use of
Open SQL, removing the need to use AMDP in these cases. AMDP should be used only if it enables database-specific functions to be accessed that do not exist in Open SQL (see the example for
Currency Conversion) or if large process
flows or analyses that incur repeated transports of large amounts of data between the database and the application server can be swapped out.
AMDP - Classes
AMDP - Methods
AMDP - Inheritance
AMDP - Use
AMDP - Client Handling
AMDP - BAdIs
AMDP - Database Connections
AMDP - Exception Classes
AMDP - Examples