What does ABAP stand for?
Since the 90s all SAP modules (including S/4HANA, the successor software to SAP R/3 ) have been based on ABAP. ABAP (Advanced Business Application Programming) is a high-level, primary programming language on which SAP server platform and applications are based since the SAP R/3 announcement. There are many programming languages with different purposes and various specialties. ABAP as Fourth Generation Language, used by SAP to enable constant improvement. Developers can customize SAP ERP into different environments: ABAP Workbench tools and ABAP Development tools.
ABAB is highly integrated with other features of the SAP application server, one of them is open SQL, ABAP runtime environment converts it to native SQL that is appropriate for the database. It can also be used to gain access to database tables that are declared in the ABAP Dictionary. SQLScript is a new programming language for S/HANA. Open SQL code allows ABAP developer to change databases without changing ABAP programs and buffer data in the Application Server. First and foremost, it allows you to access collections of objects in Internal Tables. This function module is similar to java or C++ and can save the programmer the task of dynamic memory management, by using data as dynamic data objects (the source code has been moved from the program to the database layer and allows completed tasks in real-time).
Data Dictionary is another element of the larger ABAP infrastructure available to all ABAP programs. This is one of the most important tools of the ABAP workbench tools and is a universal dictionary of data structure definitions.
One form of writing the ABAP code is to view and edit the source code by edited through ABAP Workbench tools. This SAP graphical user interface (SAP GUI) can be used to develop, test, run ABAP programs and create dictionary objects. ABAP Workbench includes the following components, among others:
- ABAP Editor – maintains programs
- ABAP Dictionary – maintains Dictionary objects, and allows developers to create and manage metadata. All references to data are taken from the ABAP Dictionary.
- Menu Painter – used by developers to create the user interface and its functions
- Screen Painter – used to design a screen and flow logic
- Function Builder – allows you to manage function modules and function groups
ABAP Development tools
SAP provided two tools to support ABAP programming:
- SAP HANA Studio for ABAP is an integrated development environment for SAP HANA on the SAP GUI tool. It gives you the ability to access the SAP database and allows you to create or modify data models.
- SAP NetWeaver Developer Studio, formerly known as ABAP in Eclipse, allows you to develop Java-based applications. It combines Java persistence and SAP-specific technology. Eclipse is an open-source platform, so it can be extended with plug-ins by developers. Advantages of this solution:
- test on a local server before deploying to SAP NetWeaver
- increases efficiency and saves time thanks to graphical editing tools
- ensures consistency because covers the entire life cycle in Java
SAP ABAP – object-oriented approach
ABAP is a procedural language but with a feature known as “ABAP Objects” which can support object-oriented programming. POO (object-oriented programming) organizes software design around data, or objects (represent abstract or concrete things of the real world). This approach reduces the risk of misunderstandings and facilitates communication with non-programmers because it is close to the way people understand reality.
By organizing programs into object classes and an inheritance system, adding new functions is easier and can be done when needed.