Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  Processing External Data →  ABAP Database Access 

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 AMDP class.

The following sections describe the components of AMDP:

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.

Other versions: 7.31 | 7.40 | 7.54


  • 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 SQL 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 connection to access SQLScript procedures that exist in a different SAP HANA database.

  • To manage and call database procedures and database functions with Native SQL, the AMDP framework uses the Native SQL interface to access the database.

Programming Guideline

The programming guideline Use ABAP SQL is particularly relevant for AMDP too. The use of AMDP is not recommended if the same task can be achieved using ABAP SQL (or ABAP CDS). The executable example AMDP, Comparison with ABAP SQL demonstrates how a database access not programmed well in ABAP SQL can often be optimized using an improved use of ABAP 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 ABAP SQL (see the executable 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 AS Instance can be swapped out.


AMDP - Classes

AMDP - Methods

AMDP - Inheritance

AMDP - Use

AMDP - Client Handling


AMDP - Database Connections

AMDP Macros

AMDP - Exception Classes

AMDP - Examples