ABAP for beginners

Tram Ho

Translator: ***[QuynhBC](https://www.facebook.com/bui.congquynh)*** **Post 1** ## Why learn ABAP? ***What is ABAP?*** ABAP technology is the solid foundation for SAP’s solution portfolio. Its proven robustness, scalability, and scalability make it the platform of choice for running mission-critical business processes. This is the underlying technology of SAP Communications Business Unit, SAP S/4Hana flagship solution and other upcoming innovative solutions such as SAP BW4/HANA next generation data warehouse. ABAP technology is also available as a standalone platform for custom development of modern ABAP-based business applications. SAP customers and partners also have a long tradition of building custom code and add-ons that run on the ABAP technology platform. * It is also a complete runtime and application development platform. It combines: the innovative potential of the SAP HANA in-memory database. * Proven reliability and robustness by SAP server. ***Basic Features of ABAP*** ABAP works efficiently in over 100,000 SAP customer systems, where it enables enterprise-ready applications and business processes and reduces total development costs its integrated, self-compiled nature. ***ABAP Platform*** * 5,000 Systems Effective Business Suite * 64,000 Standalone Systems * 4.5 million registered ABAP developers * 1650 SAP S/4 HANA live projects ***Featured *** * State-of-the-art ABAP language, specifically designed for efficient business programming * Proven, highly scalable and powerful application server * Server-centric development with source code integration and version management * Integrated vendor-independent database support * Each out-of-the-box development field and ABAP tools for the entire development lifecycle are provided in Eclipse * Global changes interface and management * SAP Cloud ![](https://images.viblo.asia/cf36d377-bdd8-4763-acac-60febfedc24a.png) ***Core concept*** General architecture of ABAP what? The ABAP Application Server (AS ABAP) consists of three layers: presentation, application, and database. The class division makes perfect sense. In fact, all three classes can actually run on a single computer. The database contains not only user data, but also the entire ABAP Application Server program code and application programs, all administrative data, etc. The programs you develop are stored in ABAP diagram of the system. The application layer consists of one or more AS ABAP instances, a single Message Server, responsible for communication and load distribution in this layer, and a single Enqueue Server, which manages the key. ABAP programs and all development tools run in the application layer. ABAP Dispatcher distributes requests to work processes (WP) within an ABAP AS. WP handles your programming and owns the database connection so you don’t need to deal with the database (e.g. open/closed database connection). WP is assigned to you only for the duration of the program processing and then it is free for other users. This architecture is robust and extensible. There’s no such thing as crashing the entire engine in ABAP by a fatal syntax error in your program. In addition to this ABAP system and external programs can communicate with each other through different protocols such as RFC, TCP/IP, HTTP and OData. The presentation layer represents the user interface and is responsible for the display. This class takes user inputs – that is, mouse clicks and keyboard input – and passes them on to the application layer. Furthermore, it receives data from the application layer and displays it to the user. When writing a business application, you should use the SAP Fiori UI as a modern user interface. When developing in ABAP, you may also encounter browser-based Dynpro ABAP / Floorplan Manager Web technology or Dynpro technology. Prior to SAP Fiori, Web Dynpro for ABAP was the SAP standard user interface technology for developing Web applications in the ABAP environment. Dynpros is the classic user interface of most SAP programs that are based on ABAP and run in the SAP GUI. ![](https://images.viblo.asia/d1ccc7d0-42a1-4b1e-94b8-d5565ddaa15b.png) ***Why and How Application Server ABAP is important to you as a developer development?*** Generally, you develop on a central server in ABAP. Therefore, you require developer access and authorization for AS ABAP. All the tools for the entire development lifecycle are integrated there and also part of the server. You write your programs using ABAP Development Tools. When you select Save, the ABAP editor stores your program in the database. Then you retrieve it by name: you don’t have to deal with program files in ABAP; Server does it all for you. Usually multiple developers are working on the same server. While you write your source code in the editor, this development object is locked for you. When you select the Save button, an inactive version of the development object is created. This is visible to all developers on the server and they can change it. When you press the Activate button, an active instance of the development object is created and it can be accessed by other programs. Pros * You don’t have to deal with version management: the server does it for you * You always use the latest sources * Incompatibilities become apparent very early: when activating your source code * No need for a separate system to check the interaction of source code from different developers Typical experience of working with AS ABAP: Many things developers or quality managers often have to do interest has been provided and you can focus on your day job: business programming. ***Why and how to connect to the integrated software logistics on the ABAP server?*** All ABAP development objects are stored in the system’s database. You don’t have to manually copy the program file if you need it elsewhere. The ABAP server provides an integration mechanism (change and transport management system, CTS) for transport development objects through the system landscape. Besides, the proper structure of development objects becomes especially important if you work in a team on a development project. Each object developed in ABAP belongs to a package. Packages organize development objects and handle their connection with AS ABAP software logistics. It’s a package like a directory in a way. The transport layer is an important concept in ABAP software logistics. It refers to the transport path that a package should take in a system landscape. The landscape typically has at least three system layers: ![](https://images.viblo.asia/ff422fd7-739a-4954-b8ba-52d9f4989437.png) You develop an object in the development system and check it in merge system. When all tests are successful, you ship your tested development objects to the production system. You define this path (the transport layer) as an attribute of a package, and this way the destinations of your development objects are clear from the very beginning of your development. **This article has been credited and edited from the original article on SAP Community:** ***[here](https://community.sap.com/topics/abap/abap-for-newbies)* ** Topic for next article: * SAP GUI for programmers. * Syntax and code in SAP ABAP. ***Thank you for reading this article.***

Share the news now

Source : Viblo