sap abap training program

73
ABAP Programming ABAP Programming Overview Overview http://www.sapallonlinetraining.com/sap-abap-online-training

Upload: ambicaabap

Post on 15-Jul-2015

185 views

Category:

Education


7 download

TRANSCRIPT

Page 1: SAP ABAP Training Program

ABAP ProgrammingABAP Programming OverviewOverview

http:/ /www.sapallonl inetraining.com/sap-abap-onl ine-training

Page 2: SAP ABAP Training Program

ABAP Course Outline Chapter 1 : Introduction to ABAP Chapter 2 : List Processing in ABAP Chapter 3 : Open SQL & Internal Table Chapter 4 : Event-driven Programming & Selection Screen Chapter 5 : Modularization & Catch Statement Chapter 6 : Message, Debugging, File Transfer

and Type Group

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 3: SAP ABAP Training Program

ABAP Chapter 1 Introduction to SAP Architecture ABAP Overview Data Object in ABAP

http:/ /www.sapallonl inetraining.com/sap-abap-onl ine-training

Page 4: SAP ABAP Training Program

SAP System : 3 Tier Client/ServerSAP System : 3 Tier Client/Server

DB Server

SAP Application Server

SAP GUI Presentation

Server

SAP GUISAP GUI

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 5: SAP ABAP Training Program

SAP SYSTEM (3 Tier Architecture)SAP SYSTEM (3 Tier Architecture)

Presentation Layer

(Windows based)

Application Layer

(Windows Server/UNIX)

Database Server

Database Layer

(Windows Server/UNIX)

M

SAP Instance

Oracle

Informix

DB2

MS SQL Server

MaxDB

G

Dispatcher

RequestQueue

D D B V S E

SAP Buffer(Shared Mem)

SAP GUI SAP GUI

Page 6: SAP ABAP Training Program

Dialog Processing

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 7: SAP ABAP Training Program

Database Server

Application Server

Dispatcher

RequestQueue

D D D D…

SAP Buffer

Program

Table

1

3

45

68

9

10

Report zpsm1.

Tables customers.

Select single * from

customers where id = 1.

Write: / customers-name.

Execute ABAP statement

Check Program in Program Buffer

7

Load&Gen Program

SQL Request

Send List

Generate Screen(List)Send Request

Request List

2 Search for free WP

Store request to queue

Send request to WP

SAP GUI

SAP System : Dialog Processing

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 8: SAP ABAP Training Program

TaskHandler

DYNPRO Processor

ABAP Processor

Local Memory

Memory Space

DB Interface

List buffer

Database Server

Dialog Work Process

Dialog Work Process Architecture

Result Set Memory

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 9: SAP ABAP Training Program

ABAP Programming Overview

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 10: SAP ABAP Training Program

ABAP Overview

DATA ...DATA ...

WRITE ..WRITE ....

IF ...IF ...MOVE MOVE ……

WHILE...WHILE...

*Comment...*Comment...

SEARCH ...SEARCH ...

SELECT ...SELECT ...

LOOP AT .. .LOOP AT .. .DO .. .DO .. .

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 11: SAP ABAP Training Program

ABAPABAP

AAdvanced

BBusiness

AApplication

PProgramming

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 12: SAP ABAP Training Program

ABAP FeatureABAP Feature

Declaring data with various types and structure Operational elements for data manipulation Control elements for controlling the program

flow Event elements for reacting to external events

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 13: SAP ABAP Training Program

ABAP ABAP

Operating/Database system-independent programming

ABAP contains a subset of SQL called Open SQLOpen SQL for comfortable database access for various various databasedatabase

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 14: SAP ABAP Training Program

ABAP Programming ABAP Programming

ABAP Report Dialog Programming(Transaction)

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 15: SAP ABAP Training Program

ABAP Program : ReportABAP Program : Report

Data

Report Program

: attribute type 1 (executable) Reading

Database

Reading dataReading data

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 16: SAP ABAP Training Program

Types of ABAP Report

1. Report List ing

2. Dri l l-down Report

3. Control-break Report

4. ALV Report

1

3

4

Page 17: SAP ABAP Training Program

ABAP Program : Dialog ProgramABAP Program : Dialog Program

Data

Dialog Program

: attr ibute type M (Module Pool) Reading

Database

Reading and changing dataReading and changing data

Writing

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 18: SAP ABAP Training Program

Dialog Program : Transaction

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 19: SAP ABAP Training Program

ABAP Programming

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 20: SAP ABAP Training Program

How to create ABAP program

Transaction Code : SE38

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 21: SAP ABAP Training Program

Transaction : SE38

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 22: SAP ABAP Training Program

Program Attribute

http://www.sapallonlinetraining.com/sap-abap-online-training

Page 23: SAP ABAP Training Program

ABAP Editor

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 24: SAP ABAP Training Program

The Structure of the LanguageThe Structure of the Language

Each statement must end with a period

DATA tmp TYPE I.

WRITE ‘Hello World’. WRITE ‘OK’.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 25: SAP ABAP Training Program

LiteralLiteral

DATA tmp TYPE I.

WRITE ‘Hello World’.

WRITE ’10’.

MOVE 9 TO tmp.

Text Literal

Numeric Literal

Text Literal

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 26: SAP ABAP Training Program

Chained Statements Successive statements that have the same string

segment can be combined to form a single chained statement

To do so, you specify the identical starting segment once and conclude it with a colon (:), the remaining segments are then listed, separated by commas (,) and concluded with a period (.)

At runtime, a chained statement is treated like an equivalent sequence of individual ABAP statements

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 27: SAP ABAP Training Program

Chained StatementsChained Statements

WRITE ‘Hello World’. WRITE ‘OK’. =WRITE: ‘Hello World’, ‘OK’.

DATA tmp1 TYPE I.DATA tmp2 TYPE C. =DATA: tmp1 TYPE I, tmp2 TYPE C.

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 28: SAP ABAP Training Program

Chained StatementChained Statement

MOVE sy-subrc TO tmp1.MOVE sy-subrc TO tmp2.MOVE sy-subrc TO tmp3. =MOVE sy-subrc TO: tmp1, tmp2, tmp3.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 29: SAP ABAP Training Program

Chained StatementChained Statement

PERFORM cal_1 USING a1 a2.PERFORM cal_1 USING a3 a4. =PERFORM cal_1 USING: a1 a2, a3 a4.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 30: SAP ABAP Training Program

CommentsComments

* This is full l ine commentWRITE ‘Hello World’. “ Write data (part ial l ine comment) WRITE ‘Test’.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 31: SAP ABAP Training Program

ABAP Command : Case SensitivityABAP Command : Case Sensitivity

WRITE ‘Hello World’. WriTe ‘Hello World’.wRiTE ‘Hello World’.

ABAP command is not case sensit ive

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 32: SAP ABAP Training Program

Data Objects in ABAP

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 33: SAP ABAP Training Program

Data Objects in ABAPData Objects in ABAP

Memory Space

Structure

Table Structure Internal Table

Variable

Constants<Field-symbols>

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 34: SAP ABAP Training Program

Variable

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 35: SAP ABAP Training Program

VariableVariable

Variables can be declared at any point in a program

Variables can be up to 30 characters in length

REPORT ZTEST.DATA f irstname TYPE STRING.firstname = ‘John’.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 36: SAP ABAP Training Program

Predefined ABAP Data TypesPredefined ABAP Data Types

Type Description Initial Value

C

D

F

I

N

P

T

X

String

xstring

Character

Date

Floating Point

Integer

Numeric Text

Packed Decimal

Time

Hexadecimal

Variable-length

Variable-length Hexadecimal

Space

‘00000000’

0.0

0

‘0’

0

‘000000’

’00’

Space

Blank str ing

Length1 – 65535

8 characters

8 bytes

4 bytes

1 – 65535

1 – 16 bytes

6 characters

1 – 65535

Variable

Variable

Page 37: SAP ABAP Training Program

Defining Variable with DATA StatementDefining Variable with DATA Statement

* SyntaxDATA var[( length)] [Type type] [Decimals number].

DATA var LIKE Table-Field [VALUE init ial value].

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 38: SAP ABAP Training Program

Defining Variable with DATA StatementDefining Variable with DATA Statement

* Data DeclarationDATA: tmp(10) TYPE C, tmp1 TYPE I, tmp2(8) TYPE P DECIMALS 2 VALUE ‘1.50’.DATA: tmp3(5) TYPE N, tmp4.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 39: SAP ABAP Training Program

Defining Variable with DATA StatementDefining Variable with DATA Statement

* Data DeclarationDATA customerno LIKE customers-id.DATA matnr LIKE mara-matnr.

DATA customerno TYPE customers-id.DATA matnr TYPE mara-matnr.

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 40: SAP ABAP Training Program

ABAP Predefined Data Types

ABAP Predefined Data Types

Complete Types(I,F,D,T,STRING and XSTRING)

Incomplete Types(C,N,P and X)

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 41: SAP ABAP Training Program

Variable

Data Type C,N and X length between 1 – 65535 (Default 1)

Data Type P length between 1 – 16 (Default 8) and decimals length between 0 – 31

Data Type I value between – 231 to 231 – 1 or –2,147,483,648 to 2,147,483,647

DATA tmp(10) TYPE C.

DATA tmp(5) TYPE P DECIMALS 2.

DATA tmp TYPE I.tmp = 1000000.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 42: SAP ABAP Training Program

Data type N

data tmp(5) type N.tmp = ‘Xca9yy23K6’.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 43: SAP ABAP Training Program

ABAP ErrorABAP Error

Syntax Error

Runtime Error

System RuntimeError

User RuntimeError

Time Exceed(10 Minutes)

Cannot AllocateSpace

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 44: SAP ABAP Training Program

User Runtime Error

DATA result TYPE i.result = 10 / 0.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 45: SAP ABAP Training Program

System Runtime Error : Space Allocation

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 46: SAP ABAP Training Program

System Runtime Error : Time Exceed

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 47: SAP ABAP Training Program

Non-elementary TypeNon-elementary Type

* Data DeclarationTYPES tname(30) TYPE c.DATA: customer_name TYPE tname, f irstname TYPE tname.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 48: SAP ABAP Training Program

Value AssignmentValue Assignment

* Value assignmentDATA: name1(30), f irst_num TYPE I, next_num TYPE I.MOVE ‘XXXX’ TO name1.MOVE 5 TO f irst_num.COMPUTE next_num = f irst_num + 5.name1 = ‘SAP’.ADD 1 TO next_num.

http:/ /www.sapallonl inetraining.com/sap-abap-online-training

Page 49: SAP ABAP Training Program

Value AssignmentValue Assignment

* Value assignmentDATA: tmp1 TYPE i, tmp2 TYPE i.tmp1 = tmp2 = 10.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 50: SAP ABAP Training Program

ABAP Practice

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 51: SAP ABAP Training Program

Structure

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 52: SAP ABAP Training Program

StructureStructure

* SyntaxDATA BEGIN OF <structure name>.DATA f ield1. DATA f ield2.

……

DATA END OF <structure name>.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 53: SAP ABAP Training Program

StructureStructure

* SyntaxDATA BEGIN OF wa.DATA id LIKE customers-id. DATA name LIKE customers-name.DATA city LIKE customers-city . DATA END OF wa.MOVE 9 TO wa-id.WRITE wa-id.

id city

wa

00000000

name

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 54: SAP ABAP Training Program

Defining Structure (Include Structure)Defining Structure (Include Structure)

* Include StructureDATA BEGIN OF wa. INCLUDE STRUCTURE customers.DATA tel(7).DATA END OF wa.

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 55: SAP ABAP Training Program

Defining StructureDefining Structure

* LIKE optionDATA wa LIKE customers.wa-id = 1.wa-name = ‘John’.WRITE: wa-id, wa-name.

http://www.sapal lonlinetraining.com/sap-abap-online-training

Page 56: SAP ABAP Training Program

ABAP Practice

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 57: SAP ABAP Training Program

Constants

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 58: SAP ABAP Training Program

ConstantsConstants

* Constant variableCONSTANTS max_no TYPE I VALUE 999. DATA counter TYPE I VALUE max_no.WRITE: max_no, counter.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 59: SAP ABAP Training Program

Constants Using ExampleConstants Using Example

* Constant variableCONSTANTS ctext(11) TYPE C VALUE ‘Hello World’. WRITE ctext.WRITE ctext.WRITE ctext.WRITE ctext.WRITE ctext.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 60: SAP ABAP Training Program

System Fields The system fields (structure syst) are filled by

the runtime environment. You can use them to query the system status in an ABAP program

You should access them only for reading sy-datum = Current date of application server sy-uzeit = Current time of application server sy-datlo = Current date of SAP GUI sy-timlo = Current time of SAP GUI sy-mandt = Current client logon sy-subrc = Return value of ABAP statement

syst-datum

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 61: SAP ABAP Training Program

ABAP System Fields : Structure SYST (SE11)

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 62: SAP ABAP Training Program

DATEDATE

* Fixed Length 8* Include Representation ‘YYYYMMDD’DATA today TYPE D.today = sy-datum.WRITE today.today = ‘19991231’.WRITE today.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 63: SAP ABAP Training Program

TIMETIME

* Fixed Length 6* Format ‘HHMMSS’DATA t imes TYPE T.t imes = sy-uzeit.WRITE t imes.

HHMMSS

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 64: SAP ABAP Training Program

MOVE StatementMOVE Statement

DATA wa LIKE customers.DATA vender LIKE customers. wa-id = ‘1234’.wa-name = ‘Test#1’.MOVE wa TO vender.WRITE: wa-id, vender-name.

“vender = wa.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 65: SAP ABAP Training Program

MOVE-CORRESPONDING StatementMOVE-CORRESPONDING Statement

DATA: begin of wa1, f1,f2,f4, end of wa1.DATA: begin of wa2, f2,f1,f3, end of wa2.…MOVE-CORRESPONDING wa1 TO wa2.WRITE: wa1-f1,wa2-f1 .

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 66: SAP ABAP Training Program

Field-symbols

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 67: SAP ABAP Training Program

Field-symbolsField-symbols

Data: name(4) Value ‘Test’, num Type I Value 10, today Type D Value ‘19980429’.Field-symbols <temp>.Assign name To <temp>.Write <temp>.Assign num To <temp>.Write <temp>.Assign today To <temp>.Write <temp>.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 68: SAP ABAP Training Program

Field-symbols : UNASSIGNField-symbols : UNASSIGN

data: name(4) Value ‘Test’,f ield-symbols <temp>.assign name To <temp>.write <temp>.unassign <temp>.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 69: SAP ABAP Training Program

CLEAR StatementCLEAR Statement

Example:

DATA tmp type i value 9.tmp = 10.CLEAR tmp.

“Clear statement sets a field to an initial value appropriate for its type”CLEAR <data object>.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 70: SAP ABAP Training Program

CLEAR StructureCLEAR Structure

DATA wa like customers.…CLEAR wa.

http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 71: SAP ABAP Training Program

ABAP Report : Program Structure

Report ztest.*Data objects declarationdata ...data begin of ...*Program Logic(Data objects processing)…

write ….http:/ /www.sapallonlinetraining.com/sap-abap-online-training

Page 72: SAP ABAP Training Program

ABAP Practice

http:/ /www.sapallonl inetraining.com/sap-abap-onl ine-training

Page 73: SAP ABAP Training Program

http:/ /www.sapallonlinetraining.com/sap-abap-online-training