Sei sulla pagina 1di 65

Introduction to SAP ABAP/4

S: Systems A: Application P: Products in Data Processing

Copyright 2004 Slide 1

SAP was founded in 1972 by five people: Wellenreuther, Hopp, Hector, Plattner and Tchira. Wellenreuther , while working at IBM , developed a financial accounting package running in batch for an IBM customer Naturin. SAP bought rights from Naturin and started to design and implement the real-time finance system as a standard package based on Wellenreuther s experience in the application. They sold the first copy of the standard system to ICI. Simultaneously, they developed a Materials management system as a bespoke software for ICI by reserving all property rights.
Copyright 2004 Slide 2

SAP Products and People

Analyzer SAP Manuals Configuration Menu Implementation Guide

Configuration Team

SAP Application Functionality

Business End Users

SAP Development Environment Basis System

Development Team Hardware

Operations Staff


Copyright 2004 Slide 3

Which Customer Requirements are met by the R/3 System?

Copyright 2004 Slide 4

SAP Overview
SAP sets new standards for the universal use of standard software with its R/3 system. The R/3 System allows the complete integration of business and data processing based on Progressive development techniques. The components of the R/3 system are characterized by its comprehensive business functionality coupled with the latest technology. The integration of the applications guarantees transparency of all functions in the system and thus in the entire enterprise. The R/3 system is based on a complete business model covering the following application areas: Financial accounting, controlling, assets management, material management, production planning and control, sales logistics, quality management, plant maintenance, project management, service management, human resource management, office communication, workflow functions, industry solutions, open information warehouse.
Copyright 2004 Slide 5


Scoping: Analysis Design Development Configuration Implementation Testing/Training Post Implementation Support.

Copyright 2004 Slide 6

Where do you fit in ?

After SAP installed , Analysts experienced in Business Process Re-engineering (BPR) , who are also configuration experts, customize the modules to meet the Corporation's need, or help the corporation change it's business practices to achieve the most efficiency out of SAP. This configuration does not usually involve programmers, but is instead done by Business Analysts. When the configuration process is nearing completion, the programmers ( Called ABAPers - specialists in ABAP/4) are brought in to extend any part of SAP that can not be configured to meet the needs of the corporation.
Copyright 2004 Slide 7








Copyright 2004 Slide 8

Client / Server Principles

According to SAP terminology, a service is one that is offered by a

software component (software-Oriented view). Such a component can consist of a process (see message server process) or a group Of processes, which is then called server for the corresponding service. Software components, that utilize the service, are called clients. Such clients can also be servers for Certain services Often it can be a computer that is understood as server, one on which software components run that Offer certain services (hardware- oriented view). The SAP system is understood as the totality of all software components that are allocated to the same database.
Copyright 2004 Slide 9

Client Server Structure Three Levels

(Stores all Data and Application Programs)

Central DB

Data Base Changes

Reading Data Base and Updating Buffer Central DB buffer

Batch Processing

Central DB buffer

Application Logic
Output Data to User Input Data From User

Output Data to User

Copyright 2004 Slide 10

User Interaction

R/3 Client/Server- Three-Tier Computer Hierarchy

Central DB (stores all data and Applications programs) Access to DB: Read /write data


Input / Output Of data to users


Copyright 2004 Slide 11

Presentation Layer
The presentation layer is the portion of SAP R/3 with which users

interact directly.

Displays information to users Transfer data entered by users to the application server layer

Consists of the SAP R/3 Graphical User Interface Program (SAP-


Supported by PC, Mac or workstations Provides the user with the screens ( ie. Menus, toolbars, and function keys) required to process SAP R/3 transactions Provides that same Look and feel to all users, regardless of the platform.

Copyright 2004 Slide 12

Application Layer

Application servers that run programs

Programs manipulate data provided by the user and the database

Run background programs, make database changes, format data for printing, route messages between servers, manages locking for SAP objects, etc Processing workload spread among multiple servers (load balancing) Some shared, central directories are required, such as start-up and system profiles and the central system log

Associated servers that support applications

Server Distribution

Copyright 2004 Slide 13

Database Layer
The relational database system used by all application servers

Stores the SAP application programs and data

A SAP technology that overlays the database vendors database

management functions Current SAP architecture is oriented towards a central database server

Copyright 2004 Slide 14



7 2
Request Queues



ROLL SAP buffers

4 5


Copyright 2004 Slide 15

ABAP/4 Dictionary
Object Browser ABAP/4 Editor



Function Library

Translation menu Screen Painter

Menu Painter

Copyright 2004 Slide 16

OK ! Lets get straight into ABAP/4

Copyright 2004 Slide 17

Overview of ABAP

The ABAP/4 Programming Language

A B A P / 4

dvanced usiness pplication rogramming

Copyright 2004 Slide 18

Overview of ABAP

Advanced Business Application Programming - 4 th generation

ABAP/4 is the backbone of SAP R/3. All the R/3 applications and parts of Basis system were

developed in ABAP/4.

Copyright 2004 Slide 19

Overview of ABAP

A B A P /4 D e v e lo p m e n t W o rk b e n c h A rc h ite c tu re
D e v e lo p m e n t

R u n tim e
Copyright 2004 Slide 20

Overview of ABAP

The ABAP/4 Development Workbench provides access to Sap's development tools which cover the entire software development cycle. These tools can be used both for customer-specific developments and enhancements to R/3 applications supplied by SAP. All applications created with the ABAP/4 Development Workbench can run without further modifications on any platforms, database systems and graphical user interfaces supported by SAP.

Copyright 2004 Slide 21

Overview of ABAP
ABAP Development Work Bench

consists of many tools for like ABAP Editor, Screen Painter, Function Builder, Menu painter for you to create or write Programs like Reports or Screens or Menus etc ... Typically as a ABAP Developer you will be working on the above said Tools to design, develop and test any programs which include Reports, Screens, Menu that you might want to implement in SAP.

During the Period of the Course you will be guided and taken through the tools one by one.
Copyright 2004 Slide 22

Overview of ABAP
ABAP/4 Program Objects.

A B A P /4 P ro g r a m O b je c ts
D e v e lo p m e n t c la s s
D e v . c la s s o b je c t ty p e s D ic tio n a ry o b je c ts P ro g ra m s F u n c tio n g ro u p s In c lu d e s T ra n s a c tio n s L o g ic a l d a ta b a s e s M e s s a g e c la s s e s . . .

P ro g ra m
G lo b a l d a ta P B O m o d u le s P A I m o d u le s S u b ro u tin e s S c re e n s G U I s ta tu s In c lu d e s T ra n s a c tio n s

Copyright 2004 Slide 23

Overview of ABAP
Development Class

To create a program, you first specify a development class.

Development classes are containers for objects in the same area. A common transport route is defined for all objects within a development class. Customer-specific development classes begin with Y or Z.

If you are creating a test object which you do not want to be transported, choose local private objects. The development class is then set to $TMP.
You then specify the name of the new program. To proceed, click the radio button Program and choose Display.

Copyright 2004 Slide 24

Overview of ABAP

Development Class

If you are creating a object which needs to be transported to

production System from Development System, then choose the appropriate development class and then Click Save, then the system will ask for the request No under which your program needs to stored. At this point you can either specify the transport request number provided by system administrators or create your own request.

Copyright 2004 Slide 25

Overview of ABAP/

Transport Organizer

Copyright 2004 Slide 26

Overview of ABAP
Workbench requests record changes made to ABAP Workbench objects.

There are local and transportable Workbench requests. (Local Workbench requests have the target system <space>.)
The development class of the object and the transport route settings in the Transport Management System determine whether changes are recorded in a local or a transportable Workbench request.

Copyright 2004 Slide 27

Overview of ABAP

Transaction se09

Copyright 2004 Slide 28

Overview of ABAP
ABAP/4 Interfaces

Copyright 2004 Slide 29

Overview of ABAP

ABAP/4 Interfaces Uses:

When you use ABAP/4 Data interfaces, a

sequential dataset is generated in the source system . This is read into the target system by the data transfer program and imported automatically into the R/3 database using batch input, call transaction or direct input. ABAP/4 contains statements for the implementation of Communication interfaces like RFC/BAPI, OLE which typically connects R/3 with Non R/3 system for establishing a transaction over the Net.
Copyright 2004 Slide 30

Overview of ABAP
As an ABAP Developer Majority of the work during and after implementation of R/3 will be Report programming, Dialog programming, BDC, Enhancements using ABAP/4 Programming Language. In reporting you use the ABAP/4 Open SQL to read data from the R/3 database. A report consists of a selection screen, on which you define the dataset you wish to display, and a list, which displays the data itself. In interactive reporting, the user can navigate from the (basic) list to details lists at runtime. Typically, reports merely read data from the database. However, it is also possible to make changes in the database using a report.

Copyright 2004 Slide 31

Overview of ABAP
Dialog Programming
In dialog programming you use the Screen Painter to create screens and program the sequence in which they appear. You write an ABAP/4 program (ABAP/4 module pool) for your screens. This is a collection of dialog modules which are called by the flow logic of your screens. You use dialog programs for both reading and changing database tables.

Copyright 2004 Slide 32

Overview of ABAP
Batch Data Communication (BDC)

Batch Data Communication (BDC) offers transferring of data into the SAP System from other SAP Systems and non-SAP Systems (legacy systems). For example, the data collection in some areas of your company is still performed by a non-SAP system like VB-SQL or Java-Oracle etc. You can still consolidate all of your data in the SAP System by exporting the data from the other system and reading it into the SAP System with batch input.

Copyright 2004 Slide 33

Overview of ABAP
SAP Scripts

SAP script is the tightly integrated text management system of the SAP R/3 System. It will therefore be used for many different text-processing tasks all over the SAP System. Example: SAP script is used for incorporating the company logo in forms sets. SAP Script can be used for printing the Sales order or the purchase order in the company given pre printed format.

Copyright 2004 Slide 34

Overview of ABAP

SAP offers a broad range of functionality

within its business application suite. If standard applications do not offer some of the functionality you need, You dont have to Panic!! R/3 provides the flexibility to Add-on/Bolt-on any application to its standard functionality This facility is called Enhancement and called as User Exits, Menu Exits, Screen Exits and Function Exits. Enhancement offers better alternative to the problem-ridden modification approach.
Copyright 2004 Slide 35

Overview of ABAP

Before going to Next topic, Lets browse some important transactions in ABAP Development Workbench like ABAP Editor(se38) : used for Writing Report programs..etc Object Navigator(se80) : used for Creating Screens and/or Transactions or Development Class or navigation purpose ..etc Function Builder(se37): used for Writing Functions which can be further used in Report programs or Screen programming.. etc. Data Dictionary(se11) : Used for Database Table handling.. etc.

Copyright 2004 Slide 36

Overview of ABAP

Basic Syntax of ABAP

A B A P /4 S y n ta x


A B A P /4 p r o g r a m s ta te m e n t w o rd 1 w o rd 4

w o rd 2

w o rd 3

k ey w o rd

p a r a m e te r , f ie ld , c o n s ta n t
Copyright 2004 Slide 37

Overview of ABAP/ Basic Syntax of ABAP

ABAP/4 Syntax
An ABAP/4 program consists of individual statements. Each statement must end with a period. The first word of a statement is known as the key word. Words are separated from each other by at least one blank. Statements can be indented. Statements can extend over several lines.

Copyright 2004 Slide 38

Overview of ABAP
You can concatenate several consecutive statements with an

identical first part into a chain statement. When doing this, conclude the identical first part with a colon. After the colon, separate each concatenated part from the next with a comma. Blanks can appear before and after the separators (colon, comma or period).
Commenting a ABAP Statement

You can insert comments into a program in two ways: - An asterisk (*) in column 1 flags the whole line as a comment. - A quotation mark (") within a line flags the remainder of the line as a comment.
Copyright 2004 Slide 39

Overview of ABAP/ Basic Syntax of ABAP

C o m m e n ts


* *

New account Initialize totals field



Copyright 2004 Slide 40

Overview of ABAP

S y s te m F ie ld s
fo r ta b le s tru c tu re S Y

S y s te m fie ld s Nam e SY-DATUM SY-UZEIT SY-UNAME SY-SUBRC SY-REPID SY-LANGU . . . Type DATE TIME CHAR HEX CHAR CHAR L e n g th 8 6 12 2 8 1 M e a n in g D a te T im e U s e r ID R e tu rn c o d e P ro g ra m n a m e L o g o n la n g u a g e


Copyright 2004 Slide 41

Overview of ABAP

W R IT E S ta te m e n t
REPORT WRITE: SKIP 2. WRITE: WRITE: SKIP 2. WRITE: 'Date', 'Time', SY-DATUM. SY-UZEIT. RSAAA02C. '******************************'.


A B A P /4 P ro g ra m m A ttrib u te
W R IT E : In tro d u c tio n 1

********************************************** D a te 0 1 .0 1 .1 9 9 6 T im e 1 4 :4 6 :1 0 **********************************************


Copyright 2004 Slide 42

Overview of ABAP
Write Statement
WRITE outputs the contents of a field or constant in the

format appropriate for the type.

Consecutive WRITE statements output data on the same line. If there is no more space on one line, the output continues on the next line. SKIP generates blank lines. The ABAP/4 processor generates a standard header for each line. This consists of the list title, page number and an underline.

Copyright 2004 Slide 43

When you login to a SAP server the following screen appears

Copyright 2004 Slide 44

Username and password here

Enter the user name & password

Copyright 2004 Slide 45

This is the screen you work !

Copyright 2004 Slide 46

Enter SE38 in the space and click on tick icon on extreme left for Editor Area - Initial Screen. Or Use the other Procedure like This


ABAP/4 Workbench

for going into programming area.

Copyright 2004 Slide 47

This is the famous workbench they talk about ABAP/4 Development Workbench ! Click on ABAP/4 Editor button or enter the window for writing progrmas.
Copyright 2004 Slide 48

Introduction to ABAP/4 Editor

The ABAP/4 Editor is used to create new code or change existing code. The ABAP/4 editor can check to make sure you use the correct syntax in your program. Once your program is syntactically correct, you can generate, run, and debug your program from the Editor. To access editor choose Tools Editor . ABAP/4 Workbench

Copyright 2004 Slide 49

You are in the Editor area

Copyright 2004 Slide 50

Enter the Name of the Program you want to Start. Without giving a name you can not proceed.

The name shall start with Y or Z

Copyright 2004 Slide 51

Specifying the Program Attributes

To enter the program attributes, proceed as follows: 1. Enter a title for the program in the field Title. Choose a title which describes the function of the program. 2. Complete the two mandatory fields: If you are creating a report program, enter 1 in the Type field. If you are creating a module pool, enter M in the Type field. For a list of possible types, click the possible entries button. Enter the classification letter for your application in the Application field, e.g. F for Financial Accounting.

Copyright 2004 Slide 52

This screen prompts you to enter data

Copyright 2004 Slide 53

ABAP/4 development
Attribute ABAP/4 program attributes Type ....................... Status ..................... Application ........... Class ...................... 1 T S SCHU


Reporting Test System Training


1: M: V: I: Report Module pool, interactive program Update program Include


T: P: K: S: Test Productive use Customer program System program Copyright 2004

Slide 54

Enter the following: Title for the report Type 1 Application *

Copyright 2004 Slide 55

Press F11 for saving

Copyright 2004 Slide 56

Select Local Object and press the icon on the left side.
Copyright 2004 Slide 57

You Come back to this screen Press F3 to go back or use Back arrow.

Copyright 2004 Slide 58

Click on Change

Copyright 2004 Slide 59

Copyright 2004 Slide 60

To insert more lines for writing program. Place the cursor at the end of first line and press F7 or click on 5th icon from Left on toolbar.
Copyright 2004 Slide 61

Now you have completed your first program.

Press CTRL + F2 for checking whether the syntax is right. ( 2 nd Icon from left) Press F11 or click on open book icon to save. Press F8 to execute the program you just wrote.
Copyright 2004 Slide 62

Copyright 2004 Slide 63


Wish you all the best for your journey with SAP !

Copyright 2004 Slide 64

Thank You !
Copyright 2004 Slide 65