Technology: SAP ABAP Simplified Part-I
June 25, 2008 by Ameya Pimpalgaonkar
- SAP Consultant, L & T Infotech
Want to know what is SAP ? SAP R/3? Here it is MadeITsimple for you.
This article is also featured on GoArticles & DropJack
In this fast growing world maintaining various modules of an organization at different places is a tedious job as it makes controlling the various modules difficult and also costly. Here comes the need of controlling and managing different modules centrally and the solution for this ERP(Enterprise Resource Planning).This makes the process to run fast, controlling & managing easier, lowers cost and with best customer service. And SAP has proven to be the best ERP ever had. Now raises the questions like what is SAP, what is the platform & language that SAP uses. This article will gives the brief idea of the SAP platform and its architecture and go to the details of the language it uses.
SAP is an ERP package which integrates several modules and processes of an organization. This is a flexible enhancement package which makes the control and maintenance easier to all levels of organizations.
SAP Platform:
SAP uses R/3 platform which follows the 3-tier architecture (client/server architecture). R stands for the Real-time environment and 3 represents the architecture (3- tier) that SAP follows. This architecture has made large number of organizations to use SAP. Just have a brief look at the 3 levels of architecture:
1. Presentation Layer
2. Application Layer
3. Database Layer
Presentation Layer is nothing but the SAP GUI or Web where the end user has the access to the application. Application layer is the one where the real applications are developed, integrated and tested by the developers. The entire business logic is maintained at this level.
Database layer maintains all the data related to the organization. These 3 layers can either be maintained in a same system or at different systems.
And the data flows like this:
When the user inputs the data at the presentation layer, the data will come to the application layer where a particular module of the program (related to the application) gets triggered. The application layer validates and processes the data based on the inputs provided at the presentation layer. It accesses the data base layer, retrieves the required information and sends the output back to the presentation layer.
The restrictions to the users at the application level and also at the database level are provided by BASIS.
SAP Landscape:
The landscape followed by SAP is a 3 level Landscape.
1. Development Server
2. Quality Server
3. Production Server
Development server is the one which can be used for customizing, developing programs. Quality system is used by the BAs (Business Analysts) for testing the applications developed in the development system before moving them to Production server. And the last server is the one which is used by the client with the real-time environment.
This movement from one server is one of the important and careful tasks to follow. This task will be performed with the help of transport requests. Any program while saving is asked for a package and a request number under which we need to maintain. Usually a project is created under a package, which in turn contains several requests. Once a request is created, it is with this number the programs are identified at the background and moved from development to Quality server. After thorough testing in Quality server the same request will be moved to Production server which means the program has moved to production and is ready for use by the client.
SAP ABAP:
ABAP is the programming language used for developing and customizing SAP applications. It is generally termed as ABAP/4 where ABAP stands for Advanced Business Application Programming and ‘4′ represents that ABAP is a 4rth generation Language.
Basic points that need to be followed while using ABAP: 1 Each and every application in ABAP is accessed in the form of transactions. 2 Each application can be viewed by entering the appropriate transaction in the command field of screen. 3 Name of every object must begin with Y or Z. (A-X are reserved for SAP and Y,Z are left for further developments)
With the following elements ABAP is able to do all the developments and modifications required for SAP.
1. ABAP/4 Dictionary
2. ABAP/4 Editor
3. Object Browser
4. Menu Painter
5. Screen Painter
6. Repository Information System
7. Testing and Analysis Tools
The different objects that can create/customize using above tools are: 1. Dictionary Elements 2. Report programs 3. Function modules 4. BAPIs 5. BAdis 6. Smartforms
Dictionary Elements:
Creating/Modifying/Displaying these Dictionary Elements can be done through ABAP Dictionary. The transaction used for this is SE11. Dealing with tables is one of the most important tasks. As all the data storage and accessing of data is done through tables. SE11 authorization is existed only for some users. This restriction is done by BASIS. And all the users are allowed to use the transaction SE12 which is used to display contents of table. The various Dictionary Elements are:
1. Domain
2. Data Elements
3. Tables
4. Structures
5. Views
6. Search Help
Report programs:
The transaction used for Creating/Changing/Displaying a report is SE38. Generally it is accessible to all SAP users. The output can be viewed by pressing execute button or F8.
We can create two types of reports:
1. Classical Reports
2. Interactive Reports
Classical reports are one which when executed gives the final output. There won’t be any further processing after the output. In contrast Interactive reports interact with the user instead of freezing the output in single view. This means it contains a list of outputs which makes us to navigate from one screen to another screen. The first list is called as Basic List and the subsequent lists are named as Secondary Lists. We can create 1 Basic List and 20 secondary for single report program. The interaction will be provided in different forms like double clicking a record, by providing hotspot, by providing push buttons etc.,
Function modules:
Function modules are the interface programs for data interchange. This data interchange is done with the help of parameter exchange. This exchange can be done with same server or with different servers. Based on this type of exchange there are two types of Function modules 1. Normal function module 2. Remote Function module. Function Modules are created using Function Builder with the transaction SE37 or using Object Navigator SE80. All the function modules are like sub routines which can be called from any part of ABAP program.
BAPIs:
Full Form of BAPI is Business Application Programming Interfaces. It is a standard Interface provided by SAP to integrate with external applications. Basically BAPIs are implemented using Object Oriented Concept. These can be defined using Function Builder by enabling the remote function module button.
BAdi (Business Add-In):
BAdi is the SAP new enhancement concept. BAdis can be accessed with help of SE18 or SE19 transaction. The definition can be created through SE18 where as implementation will be done through SE19. BAdi is introduced from version 4.0 till which User-Exits are used as enhancement techniques.
In the upcoming articles i will discuss more technical details on SAP ABAP such as SAP Scritpt and SmartForms.
Regards,





Excellent work !! Looking for the second part.
Excellent work.
But, as the adage says “A picture is worth a thousand words”, it would be have been wonderful had you had a couple of pictures.
Looking forward for the next part.
Thanks Amarendranath & Terry,
The next parts are already present and we are going to publish some more articles soon and as per your suggestions surely I will provide the pictorial representation also. And I am sure we will meet your expectations this time as well.
Regards,
Swarna Munukoti.
Great work. I would suggest you to write the articles as many as possible and get the SDN points. I don’t know whether are you aware of the SDN points, if not, go through the http://www.sap.sdn.com site and check the points which gets rewarded for each article/technical paper/post the solution in sdn forum/……etc.
Congrats and Keep it up.
Kishore,
Thanks for the nice words, BTW
We all are aware of SDN, Owner of this website Ameya posses 2097 points in SDN, try searching Ameya Pimpalgaonkar on SDN you will get it..
I have contributed articles on SDN and also did Ameya. He is currently writing for SPJ (Professional Journal of SAP) as a technical writer but i belive these things are at their place and we belive in creating something and thats why we have created this website and also forums. SDN too was a small ship although now it is a cruise. We dream of becoming an Yatch atleast,
We are currently in a developing condition, so please bare with us
I will keep on contributing articles at MadeITsimple.com
Hope you dont mind.
Regards,
Swarna
Thanks Kishore & Swarna,
I am glad that you liked the articles. Secondly as rightly said we (Authors & writers including i myself) of MadeITsimple.com are not doing this to just earn points. Today we have satisfaction that people like you liked this article. Belive me it you people who are going to make this site a success. Yor comments are most welcome. Even you can write for us if you wish (We do not give points but)
Cheers & keep visiting,
Ameya
You can find the links to other articles just below the end of each article.
Cheers,
Ameya
Hey Swarna,
I really appreciate your work. You have rightly covered all the topics and the briefing is just apt.
It couldnt have been much simpler than this.( You made it simple
)
Kudos to your team.
Keep writing….Let the spirit go on………………
Cheers,
Sandeep Tudumu
Yes Sandeep we are currently working on some more articles. Thanks a lot for your support.
Regards,
Swarna
[...] (Netweaver and MDM consultant) Today we are starting our new series similer to what we had earlier SAP ABAP Simplified series. This time the series is SAP MDM Simplified. We are trying to present the information to the [...]
This is Sravan SAP-ABAP Tech Consultant from Hyderabad.
SAP SDN site very helpful to real time scenario.