Get Example source ABAP code based on a different SAP table
ABAP Programming Language, Overview ABAP is a programming language developed by SAP for the development of business applications with the ABAP development environment (ABAP DE)> of an ABAP_PLATFORM >. ITOC
ABAP on the Application Server ABAP ABAP is the programming interface of the Application Server ABAP> (AS ABAP) of an ABAP system>.
Before the ABAP programming language can be used, an AS ABAP must be installed as the application layer> of an ABAP system>. The AS ABAP provides the ABAP runtime framework> in which ABAP programs are executed independently of the actual host computer>.
AS ABAP must be connected to a database layer> or to a database system> where its central dataset is stored in a standard database>.
UI-based access requires a presentation layer> that displays the AS ABAP user interface (in SAP GUI> or a Web browser). BEGIN_SECTION VERSION 5 OUT AS ABAP also has the following communication components:
RFC Interface> This is the classic functional interface of AS ABAP. A remote function call is a call of a function in a system other than the one in which the calling program is running. Calls are possible between different AS ABAP or between an AS ABAP and an external system. On an AS ABAP, the functions are implemented using function modules. In external systems, specially programmed functions are called whose interface simulates a function module.
Internet Communication Manager (ICM)> The Internet Communication Manager (ICM) is a process of the AS ABAP that allows it to communicate directly with the Internet using HTTP, HTTPS, or SMTP. The ICM is used to connect Web-based presentation components such as SAPUI5>, Web Dynpro ABAP>, and BSP>. The ICM also allows the use of the AS ABAP as a client and as a server for Web services. The ICM is accessed from ABAP programs using the classes and interfaces of the Internet Communication Framework> (ICF).
ABAP Channels> ABAP Channels are a framework for event-based communication between ABAP_ASINSTANCES and the Internet. ABAP Messaging Channels (AMC)> are used to exchange messages between ABAP programs on different ABAP_ASINSTANCES , whereas ABAP Push Channels (APC)> enable bidirectional communication between an AS ABAP and the Internet using the WebSocket protocol or the TCP socket protocol. The essential role of ABAP programs on the AS ABAP involves the processing and formatting of data from the database layer and its transfer to or the receipt of input from the presentation layer or the communication components. For more information about the organization of ABAP programs on the AS ABAP, see ABAP Programs in AS ABAP>. END_SECTION VERSION 5 OUT
Programming Models ABAP supports the following:
An object-oriented programming model that is based on classes> and interfaces > of ABAP Objects>. BEGIN_SECTION VERSION 5 OUT
A procedural programming model that is based on function modules> and subroutines> Both models are interoperable.
Latest notes: NON_V5_HINTS ABAP Objects> is the recommended approach for both new projects and the redesign of existing projects. ABAP_HINT_END END_SECTION VERSION 5 OUT
Database Access One of the fundamental properties of ABAP as a programming language for business applications is the access to database tables that is fully integrated into the language.
Data modeling ABAP data modeling makes it possible to create data models for business applications that are defined on the database:
The ABAP Dictionary> is a persistent repository for data types and their relationships that are visible and can be used in all other development objects. The ABAP Dictionary manages the database tables, views, and lock objects of the standard AS ABAP database>.
The ABAP Core Data Services> implement the SAP CDS concept for the AS ABAP. A platform-independent CDS DDL> and CDS DCL > make it possible to define CDS entities > such as CDS views> or CDS table functions>, and associated CDS roles> and their semantic enrichment.
Database access Access to data in database tables is fully integrated in ABAP:
AB_SQL > makes it possible to access the database objects defined in the ABAP Dictionary or in ABAP CDS with implicit client handling>. This access is platform-independent and integrated into the language. The performance can be optimized by using the table buffering > integrated into the ABAP runtime framework.
AMDP> can be used to manage and call database procedures and database functions of the SAP HANA database>. BEGIN_SECTION VERSION 5 OUT
Native SQL> enables platform-dependent access to databases. ADBC> enables a general class-based access to all databases. END_SECTION VERSION 5 OUT
Special Characteristics ABAP is a 4GL language developed specifically for the mass processing of data in business applications and, in addition to integrated database access, has the following characteristics when compared with the elementary languages in which such functions are usually stored in libraries:
Internal tables> for the dynamic storage and processing of tabular mass data in the working memory.
An LUW concept> integrated into the ABAP runtime framework that allows many users to access the standard database> simultaneously.
An integrated interface of the language to other programming environments using Remote Function Call>.
An integrated interface of the language to XML>. The integration of such functions into the language is particularly beneficial for static checks and performance of programs. In return, this means that ABAP also contains considerably more language elements than an elementary programming language.
Multilingualism ABAP programs can be programmed as fully language-independent by removing language-specific program parts from the source code and then reloading them during program execution in accordance with the language environment. A text environment> determines the exact program behavior at runtime, for example the order in which text is sorted.