Introduction to SAP ABAP/4 S: Systems A: Application P: Products in Data Processing
© Copyright 2004 Slide 1
HISTORY OF SAP SAP was founded in 1972 by five people: Wellenreuther, Hopp, Hector, Plattner and Tchira. Wellenreuther , while working at IBM , developed a financial ing 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
Business End s
SAP Application Functionality
Development Team
SAP Development Environment Basis System
Database
Configuration 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 ing, 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
STAGES OF SAP IMPLEMENTATION. •Scoping: •Analysis •Design •Development •Configuration •Implementation •Testing/Training •Post Implementation .
© 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
MM
SD
FI
PP
ABAP/4
BASIS
OPERATING SYSTEM
© 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
Batch Processing
Data Base Changes Reading Data Base and Updating Buffer
Central DB buffer
Central DB buffer
Application Logic Output Data to
Input Data From
Output Data to
© Copyright 2004 Slide 10
Interaction
R/3 Client/Server- Three-Tier Computer Hierarchy Central DB (stores all data and Applications programs) Access to DB: Read /write data
Database
Application Input / Output Of data to s
Presentation
© Copyright 2004 Slide 11
Presentation Layer The presentation layer is the portion of SAP R/3 with which s
interact directly.
Displays information to s Transfer data entered by s to the application server layer
Consists of the SAP R/3 Graphical Interface Program (SAP-
GUI)
ed by PC, Mac or workstations Provides the with the screens ( ie. Menus, toolbars, and function keys) required to process SAP R/3 transactions Provides that same “Look and feel” to all s, regardless of the platform.
© Copyright 2004 Slide 12
Application Layer
Application servers that run programs
Programs manipulate data provided by the and the database
Associated servers that applications
Run background programs, make database changes, format data for printing, route messages between servers, manages locking for SAP objects, etc
Server Distribution
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
© 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 vendor’s database
management functions Current SAP architecture is oriented towards a central database server
© Copyright 2004 Slide 14
PRESENTATION SERVER
SAPGUI
1
7 Request Queues
2
Dispatcher
3 6
APPLICATION SERVER
ROLL
Work process
SAP buffers PAGE MAIN MEMORY
4 5 Database
DATABASE SERVER © Copyright 2004 Slide 15
ABAP/4 Dictionary Object Browser
Transactions
ABAP/4 Editor
ABAP/4
Function Library
Menu Painter
Translation menu Screen 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
dvanced usiness
A P
pplication rogramming
/ 4 SAP AG © Copyright 2004 Slide 18
Overview of ABAP
ABAP/4 Advanced Business Application Programming - 4 th generation
Language. 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 SAP AG
© 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 interfaces ed 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
P ro g ra m
D ic tio n a ry o b je c ts
G lo b a l d a ta
P ro g ra m s
P B O m o d u le s
F u n c tio n g ro u p s
P A I m o d u le s
In c lu d e s
S u b ro u tin e s
T ra n s a c tio n s
S c re e n s
L o g ic a l d a ta b a s e s
G U I s ta tu s
M e s s a g e c la s s e s
In c lu d e s
. . .
T ra n s a c tio n s
SAP AG
© 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 s 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 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 • Enhancements
• 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 don’t 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 “ 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 DATA DATA
COUNTER TYPE I. NAME(20).
MOVE 1 TO COUNTER. MOVE 'ABC' TO NAME. . . . WRITE NAME. WRITE COUNTER.
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
k ey w o rd SAP AG
w o rd 2
w o rd 3
.
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
DATA: SUM TYPE P, " Totals field COUNTER TYPE P.
* *
New Initialize totals field
CLEAR SUM.
SAP AG
© 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
R
SAP AG
© Copyright 2004 Slide 41
Overview of ABAP
W R IT E S ta te m e n t REPORT WRITE:
RSAAA02C. '******************************'.
SKIP 2. WRITE: WRITE: SKIP 2. WRITE:
'Date', 'Time',
SY-DATUM. SY-UZEIT.
'******************************'.
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 **********************************************
SAP AG
© 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 to a SAP server the following screen appears
© Copyright 2004 Slide 44
name and here
Enter the name &
© 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
Select
TOOLS 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 ing.
© Copyright 2004 Slide 52
This screen prompts you to enter data
© Copyright 2004 Slide 53
ABAP/4 development
ATTRIBUTES Attribute
ABAP/4 program attributes Type .......................
1
Reporting
Status .....................
T
Test
Application ...........
S
System
Class ......................
SCHU
F4
Type 1: M: V: I:
Report Module pool, interactive program Update program Include
Training
F4
Status 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
Congrats
Wish you all the best for your journey with SAP !
© Copyright 2004 Slide 64
Thank You ! © Copyright 2004 Slide 65