1

What is ABAP?

ABAP is one of the many application-specific fourth-generation languages (4GLs) first developed in the 1980s. It was originally the report language for SAP R/2, a platform that enabled large corporations to build mainframe business applications for materials management and financial and management accounting.

ABAP used to be an abbreviation of Allgemeiner Berichtsaufbereitungsprozessor, the German meaning of “generic report preparation processor”, but was later renamed to Advanced Business Application Programming. ABAP was one of the first languages to include the concept of Logical Databases (LDBs), which provides a high level of abstraction from the basic database level.

The ABAP programming language was originally used by developers to develop the SAP R/3 platform. It was also intended to be used by SAP customers to enhance SAP applications – customers can develop custom reports and interfaces with ABAP programming. The language is fairly easy to learn for programmers but it is not a tool for direct use by non-programmers. Good programming skills, including knowledge of relational database design and preferably also of object-oriented concepts, are required to create ABAP programs.

ABAP remains the language for creating programs for the client-server R/3 system, which SAP first released in 1992. As computer hardware evolved through the 1990s, more and more of SAP’s applications and systems were written in ABAP. By 2001, all but the most basic functions were written in ABAP. In 1999, SAP released an object-oriented extension to ABAP called ABAP Objects, along with R/3 release 4.6.

SAP’s most recent development platform, NetWeaver, supports both ABAP and Java.

Where does the ABAP program run?

All ABAP programs reside inside the SAP database. They are not stored in separate external files like Java or C++ programs. In the database all ABAP code exists in two forms: source code, which can be viewed and edited with the ABAP Workbench tools, and generated code, a binary representation somewhat comparable with Java bytecode. ABAP programs execute under the control of the runtime system, which is part of the SAP kernel. The runtime system is responsible for processing ABAP statements, controlling the flow logic of screens and responding to events (such as a user clicking on a screen button). A key component of the ABAP runtime system is the Database Interface, which turns database-independent ABAP statements (“Open SQL”) into statements understood by the underlying DBMS (“Native SQL”). The database interface handles all the communication with the relational database on behalf of ABAP programs; it also contains extra features such as buffering of frequently accessed data in the local memory of the application server.

SAP has three different layers as presentation layer (GUI), application layer (programs run on this) and data base layer where all data is stored and retrieved from user driven conditions, commands given by end user programmer through presentation layer.

GUI Examples

  • Figure – Transaction code SE38 – use it to build Reports and ALVs

ABAP - SE38

  • Figure – Transaction code SE37 – use it to build Function Modules

ABAP - SE37

  • Figure – Transaction code SE80 – use it to build Function Modules and manage Function Groups

ABAP - SE80

SAP Basis

The ABAP language environment, including the syntax checking, code generation and runtime system, is part of the SAP Basis component. SAP Basis is the technological platform that supports the entire range of SAP applications, now typically implemented in the framework of the SAP Web Application Server. In that sense SAP Basis can be seen as the “operating system” on which SAP applications run. Like any operating system, SAP Basis contains both low-level services (for example memory management, database communication or servicing Web requests) and high-level tools for end users and administrators. These tools can be executables (“SAP kernel”) running directly on the underlying operating system, transactions developed in ABAP, or Web-based interfaces.

SAP Basis also provides a layer of abstraction between the business applications and the operating system and database. This ensures that applications do not depend directly upon a specific server or database platform and can easily be ported from one platform to another.

SAP Basis currently runs on UNIX (AIX, HP-UX, Solaris, Linux), Microsoft Windows, i5/OS on IBM System i (formerly iSeries, AS/400) and z/OS on IBM System z (formerly zSeries, S/390). Supported databases are DB2, Informix, MaxDB, Oracle and Microsoft SQL Server (support for Informix was discontinued in SAP Basis release 7.00).

SAP systems and landscapes

All SAP data exists and all SAP software runs in the context of an SAP system. A system consists of a central relational database and one or more application servers (“instances”) accessing the data and programs in this database. An SAP system contains at least one instance but may contain more, mostly for reasons of sizing and performance. In a system with multiple instances, load balancing mechanisms ensure that the load is spread evenly over the available application servers.

Installations of the Web Application Server (landscapes) typically consist of three systems: one for development, one for testing and quality assurance, and one for production. The landscape may contain more systems, e.g. separate systems for unit testing and pre-production testing, or it may contain fewer, e.g. only development and production, without separate QA; nevertheless three is the most common configuration. ABAP programs are created and undergo first testing in the development system. Afterwards they are distributed to the other systems in the landscape. These actions take place under control of the Change and Transport System (CTS), which is responsible for concurrency control (e.g. preventing two developers from changing the same code at the same time), version management and deployment of programs on the QA and production systems.

The Web Application Server consists of three layers: the database layer, the application layer and the presentation layer. These layers may run on the same or on different physical machines. The database layer contains the relational database and the database software. The application layer contains the instance or instances of the system. All application processes, including the business transactions and the ABAP development, run on the application layer. The presentation layer handles the interaction with users of the system. Online access to ABAP application servers can go via a proprietary graphical interface, the SAPGUI, or via a Web browser.

Additional links and resources

Copyright (c) 2009 – saplab.org.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free documentation License, Version 1.2 or any later version published by the Free Software Foundation, with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. Source: wikipedia.

Author : Antonio Caldas

Author's Website | Articles from

Working as an Information Systems Consultant for over 10 years, I've found that working with SAP brought me added value on how to deal and manage IT and Information Systems Projects. More than a hobby, this blog is aimed to propagate SAP knowledge exchange and help other SAP technology or functional Consultants finding any piece of useful information. Please participate with your comments and opinions, it will help enrich the SAP community. Thanks!


Related Posts


User Comments


Make Money today from FREE Business Content


Community Feeds

  • Java Online Training

    very nice post thanks for sharing this article.
    Thanks
    Training Aspirants
    http://www.trainingaspirants.com

  • informatica online training/obiee online training

    We are providing the best online training by industrial IT experts with one free demo class, real time coaching and placement assistance.

  • Sap

    TallyMarks Consulting has successfully implemented SAP BI and Business Objects in a record time of 5 months at Getz Pharma. For more details on this cost effective project by the market leader, visit: http://www.tallymarks.co/

  • Learn SAP

    Refer this blog to learn some useful tips on various SAP customizing areas.

  • Free and premium SAP Training

    SAP training for all skill levels – complete beginner to very experienced. Articles, Videos and downloadable content.

  • SAP Blog

    SAP centric blog based on practical experiences of an admin

  • SAP Jobs

    Red Commerce is a leading recruitment agency which specialises in sourcing quality staff for the SAP industry. Our site is full of useful information and we are always on hand to answer any queries you may have.

  • SAP Online Training on all Major IT Courses.

    Training Aspirants provide Online Training & Corporate Training. We make sure for a right class size in order to make Online sessions most interactive.
    Training Aspirants started with a motto to provide quality and effective online training for the students worldwide with the best instructors.

    For Details Visit: http://www.trainingaspirants.com

    Call Us: US :001-713-900-7669
    US: 001-630-974-1794
    India : 091-779-985-5779
    Mail Us: mail@trainingaspirants.com

  • Expertise technique SAP, ABAP

    Expert Technique SAP, ABAP

  • SAP Training and Certification Courses

    Be a part of SAP training and online sap certification to boost up your skills and career. SAP training helps to improve your business methodologies which are beneficial to generate business around the world. JKT SAP Academy is an authorize education partner of sap and provide sap training for sap abap, sap erp, sap basis, sap fi,sap co, sap mm, sap sd, sap pp and other functional modules.

Submit More
;;