Beruflich Dokumente
Kultur Dokumente
EDBT'98 Valencia
March 1998
Learning Objectives
Participants will
R break the "language barrier" of R/3 terminology
R understand R/3's fundamental architectural, database and language concepts
R be able to relate R/3 to their own research and development work
R have a conceptual basis and reference material for a further study of R/3
f.matthes@tu-harburg.de http://www.sts.tu-harburg.de/~f.matthes/r3.html
Tutorial Outline
1. SAP R/3: Past, Presence and Future 15"
2. The Integrated R/3 Repository 15"
3. Enterprise Modeling with R/3 15"
4. Objects of the R/3 Data Dictionary 45"
coffee break
5. Programming with ABAP/4 and the DynPro Concept 60"
6. Customizing R/3: Concepts and Techniques 15"
7. Process and System Architecture 15"
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 2
www.sts.tu-harburg.de/~f.matthes/r3.html 1
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 3
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 4
www.sts.tu-harburg.de/~f.matthes/r3.html 2
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 5
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 6
www.sts.tu-harburg.de/~f.matthes/r3.html 3
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
SAP Today
R 4th largest software vendor in the world
R Market leader with 29% market share in
Enterprise Business Solutions (IDC, 1996)
R ~13,000 employees
R Worldwide presence in over 50 countries
R Group sales totaled over USD 3.46 billion in 1997, 81% of which was generated
outside Germany
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 7
But: More than 2/3 of SAP’s customers are not in the Fortune 500.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 8
www.sts.tu-harburg.de/~f.matthes/r3.html 4
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 9
SD FI
Sales &
Finances R/3 -
Distr.
MM CO Applications
Material-
managment Controlling
PP AM
Production
Plannig
.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 10
www.sts.tu-harburg.de/~f.matthes/r3.html 5
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Dialog
Windows 3.1, Windows 95, Windows NT,
SAPGUI OSF/Motif *, OS/2 Presentation Manager (PM),
Macintosh *, Java
Languages
ABAP/4, C, C++, HTML, Java
Application server
Central
booking RDBMS
process Database server
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 12
www.sts.tu-harburg.de/~f.matthes/r3.html 6
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 13
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3 Repository
2.1 Integrated Analysis, Design and Implementation
2.2 Coexistence of Multiple R/3 Clients
2.3 Application and System Evolution
2.4 Running Example: FM Areas and Funds Centers
3. Enterprise Modeling with R/3
4. Objects of the R/3 Data Dictionary
5. Programming with ABAP/4 and the DynPro Concept
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 14
www.sts.tu-harburg.de/~f.matthes/r3.html 7
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
End User
R/3-Tools
uses
manipulates
TR ... Repository
FI HR
......
......
Runtime Environment
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 15
R/3 Tools
Customizing Development
R/3-
Tools Business
Engineering
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 16
www.sts.tu-harburg.de/~f.matthes/r3.html 8
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
[ Business
class
} Process
View
R/3 Repository
Data Dictionary
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 17
}
Program,
Report, Function
... View
R/3 Repository
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 18
www.sts.tu-harburg.de/~f.matthes/r3.html 9
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 19
OMT-Notation
Class: Class Name Generalization: Superclass
Attributes
Operations
Subclass-1 Subclass-2
Instance:
(Class Name)
Instance Name
Multiplicity of associations:
Association:
Association name Class Exactly one
Class 1 Class 2
Role 1 Role 2
Class Many (≥0)
www.sts.tu-harburg.de/~f.matthes/r3.html 10
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Data Application
Dictionary
Object
Name
Development Class
State Transport()
Transport()
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 21
Clients in R/3
Client
Client Transport with
with separate
separate data
data
R/3 system
containing
shared
data
Client
Client with
with separate
separate data
data
Naming Conventions!
New Release
from SAP Client: A business entity in the R/3 system.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 22
www.sts.tu-harburg.de/~f.matthes/r3.html 11
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 23
Funds Center:
A funds center is a commercial responsibility area to which a budget is assigned.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 24
www.sts.tu-harburg.de/~f.matthes/r3.html 12
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3 Repository
3. Enterprise Modeling with R/3
3.1 Data Modeling : Entities and Relationships
3.2 Functional Decomposition: R/3 Modules
3.3 Process Modeling: R/3 Reference Model, EPCs and SAP Transactions
4. Objects of the R/3 Data Dictionary
5. Programming with ABAP/4 and the DynPro Concept
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 25
A
H
Hierarchical
Aggregating
Referential Is a
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 26
www.sts.tu-harburg.de/~f.matthes/r3.html 13
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
1:1
Each entity of the source entity type has at most one dependent entity:
1:C
Each entity of the source entity type has at least one dependent entity:
1:M
Each entity of the source entity type can have any number of dependent entities:
1 : CM
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 27
12340 AV 12410 AV
Financial H Funds Center
Management
Area
19031 AV
Currency
R
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 28
www.sts.tu-harburg.de/~f.matthes/r3.html 14
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
FI HR TR SD MM PP QM PM IS WF PS CO AM
Maintained
by Program
Objects
SAP
Consultant Customizing
Data Data
Objects
Company Application
Data
System R/3
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 29
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 30
www.sts.tu-harburg.de/~f.matthes/r3.html 15
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Event
R Information Objects
Input /
Output
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 31
choose
FM area
FM area
exists
/\
/\
www.sts.tu-harburg.de/~f.matthes/r3.html 16
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
TR
Finanzierungs-
zweckbearbeitung
Finanzierungs-
zweck ist Fonds
erzeugt ist anzulegen
TR TR TR TR
Finanzpositions- Finanzstellen- Fonds- TR
Budgetträger-
Statusverwaltung
bearbeitung bearbeitung bearbeitung bearbeitung
TR
Budgetversions-
bearbeitung
TR
Originalbudget-
pflege (alle TR TR TR
Versionen) Budgetrückgabe B u d g e t u m b u c h u ng Budgetnachtrag
TR
Budgetreigabe
Budgetfreigabe
liegen vor
Verbrauchs- Lohnbearb-
Kreditoren- Debitoren- Lagermaterial- Dienstleistungs- Strecken-
material- beitungs-
abwicklung abwicklung abwicklung abwicklung abwicklung
abwicklung abwicklung
Individuelle
Mittelreservierung Buchungsfehler
toleranzen
XOR ist durchzuführen liegt vor
sind zuzuweisen
XOR XOR
TR
TR
TR Zuordnung
Zahlungs-
Mittelreservierung individuelle
XOR umbuchung
XOR Toleranzen
Prozess-
wegweiser
Ereignis
TR
Berichte
XOR
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 33
BOT EOT
Time
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 34
www.sts.tu-harburg.de/~f.matthes/r3.html 17
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3 Repository
3. Enterprise Modeling with R/3
4. Objects of the R/3 Data Dictionary
4.1 Data Modeling: Selected Data Dictionary Objects
[ 4.2 Functional Modeling: Business Objects]
4.3 Process Modeling: Workflows
5. Programming with ABAP/4 and the DynPro Concept
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 35
...
Type
defines Values
Join-cond.
+1
Field +1
Name
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 36
www.sts.tu-harburg.de/~f.matthes/r3.html 18
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 37
Types of Tables
Table
implemented by implemented by
SQL-Table
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 38
www.sts.tu-harburg.de/~f.matthes/r3.html 19
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
}
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 39
Visibility of Tables
Table B Table C
Table A (Cluster-Tab.) (Cluster-Tab.) Data Dictionary
(transparent)
Table-Cluster
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 40
www.sts.tu-harburg.de/~f.matthes/r3.html 20
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Delivery Class: A
Transparent Table
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 42
www.sts.tu-harburg.de/~f.matthes/r3.html 21
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 43
12340 AV 12410 AV
Data Model: H
FM Area Funds Center
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 44
www.sts.tu-harburg.de/~f.matthes/r3.html 22
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 45
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3-Repository
3. Enterprise Modeling with R/3
4. Objects of the R/3 Data Dictionary
5. Programming with ABAP/4 and the DynPro Concept
5.1 Implementation-Oriented Data Dictionary Objects
5.2 Programming in the Large: Development Class Objects
5.3 Programming in the Small: Program Objects
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 46
www.sts.tu-harburg.de/~f.matthes/r3.html 23
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
... ...
Domain Type
Groups
Based
on
Data Type
www.sts.tu-harburg.de/~f.matthes/r3.html 24
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
ACCP N(6)
CHAR n C(n)
CLNT C(3)
CUKY C(5)
CURR n,m,s P((n+2)/2) DECIMALS m (NO-SIGN)
DATS D(8)
DEC n,m,s P((n+2)/2) DECIMALS m (NO-SIGN)
FLTP F(8)
INT1/2/4 I
LANG C(1)
LCHAR C(n)
LRAW X(n)
NUMC n N(n)
PREC ---
QUAN n,m,s P((n+2)/2) DECIMALS m (NO-SIGN)
RAW n X(n)
TIMS T(6)
UNIT C(n)
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 49
Type Groups are stored in the Data Dictionary for cross-program use.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 50
www.sts.tu-harburg.de/~f.matthes/r3.html 25
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Naming X X X --
Variable Declaration
global X X X by Name
local X X X by Name
Parameter Passing
by Value X X -- --
by Reference X X X --
Embedding in
Header Line X X -- --
Internal Table X X -- --
SQL-Table X X -- X
Copy as a whole X X X --
Displayable X -- -- --
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 51
Implementation-Oriented Objects
Data Dictionary Object
Status
...
includes includes
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 52
www.sts.tu-harburg.de/~f.matthes/r3.html 26
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Lock Object
R A lock object stores persistent locks on table rows that outlive a single database
transaction.
R Lock modes:
• E (Exclusive, cumulative)
• S (Shared)
• X (Exclusive, not cumulative)
Example EFMFCTR
R Primary Table: FMFCTR and no Secondary Tables
R Lock arguments: FMFCTR-MANDT, FMFCTR- FIKRS, FMFCTR- FICTR, FMFCTR-
DATBIS
R Lock mode: E
R Invoke object with Function Modules: ENQUEUE_EFMFCTR,
DEQUEUE_EFMFCTR
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 53
Matchcodes
R Help the user to find the identifying tulpe value of an existing tuple.
R Different sets of attributes can be shown, each constituting a Matchcode-Id.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 54
www.sts.tu-harburg.de/~f.matthes/r3.html 27
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Example: FIKR
Input requested: Code for FM Area (FM01-FIKRS).
Eingabe-
hilfe (F4)
Uses Tables:
FM01: FM Areas FM01T: Descriptions of FM Areas
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 55
Example: FIKR
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 56
www.sts.tu-harburg.de/~f.matthes/r3.html 28
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Primary Table
SELECT FM01.FIKRS,FM01T.SPRAS,
FM01 FM01T.FIXTXT
FROM FM01, FM01T
* WHERE FM01.FIKRS=FM01T.FIKRS
Secondary Table AND FM01.MANDT=FM01T.MANDT
(INTO M_FIKR)
FM01T
*FM01-FIKRS is a foreign key for FM01T-FIKRS
• Fields used by Matchcode:
Table Fieldname MC-Field Search field Key
FM01 MANDT MANDT X
FM01 FIKRS FIKRS X X
FM01T SPRAS SPRAS X
FM01T FIXTXT FIXTXT
FM01T SPRAS SPRAS3
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 57
Matchcode-Id B:
• Primary Table: FM01 SELECT FIXTXT,SPRAS,FIKRS
• Secondary Tables: FM01T FROM M_FIKR
• MC-View Name: M_FIKRB
• Fields: FM01-MANDT, FM01T-FIXTXT, FM01T-
SPRAS, FM01-FIKR
• No selection
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 58
www.sts.tu-harburg.de/~f.matthes/r3.html 29
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 59
Object Browser
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 60
www.sts.tu-harburg.de/~f.matthes/r3.html 30
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Reflexivity of R/3
R Initiation of a program
SUBMIT <program>
R Creation of a new program
DATA CODE(72) OCCURS 10
APPEND: ‘REPORT ZRFC1.’ TO CODE,
‘WRITE / “Hello World!”’ TO CODE.
INSERT REPORT ‘ZRFC1’ FROM CODE.
R “Loading” a program into a table
READ REPORT <name> INTO <itab>.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 61
.....
Transaction starts Program object Function Message Logical
Version Group Class Database
Code
uses
Authorization Message
Object
Number
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 62
www.sts.tu-harburg.de/~f.matthes/r3.html 31
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Function Modules
R Central concept for many R/3 features.
R Reminds on the Module concept in programming languages.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 63
...
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 64
www.sts.tu-harburg.de/~f.matthes/r3.html 32
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 65
Standard
Tool Bar
Application
Tool Bar
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 66
www.sts.tu-harburg.de/~f.matthes/r3.html 33
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
DynPro A DynPro B
Time
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 67
Leave to
Process Transaction
Screen
OK-CODE
type T?
AT EXIT
F4? COMM-
F1?
AND
OK-CODE
Transfer Data type E?
Execute Transfer Data from
from ABAP/4 Offer Next
PBO DynPro Fields into
Variables into Help
Modules
DynPro Fields
ABAP/4 Variables PBO
Execute
Sub-
PAI
routines
Lock certain Modules
DynPro Fields MESSAGE
type E?
Sub-
routines
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 68
www.sts.tu-harburg.de/~f.matthes/r3.html 34
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Module Pool
in ABAP/4
+1
DynPro PBO PAI Subroutine Global GUI GUI
Module Module (Form) Data Title Status
Number Type Code
Screen
calls
Flow Logic
executes
+1
exchange Data (equal Names)
DynPro Field
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 69
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 70
www.sts.tu-harburg.de/~f.matthes/r3.html 35
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 71
create
Fund Center PAI
PBO
MODULE MODULE
D0100_INDEPENDENT FM_FCTR_LESEN
ABAP/4
{ MODULE
D0100_MODIFY_SCREEN
MODULE
D0100_SET_PF-STATUS
MODULE
D100_OK_CODE
MODULE
...
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 72
www.sts.tu-harburg.de/~f.matthes/r3.html 36
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Components of a DynPro
R Screen Layout
R Fields
R Attributes
R Flow Logic
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 73
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 74
www.sts.tu-harburg.de/~f.matthes/r3.html 37
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
DynPro Fields
Field Name Field Type Format Length Explanation
IFMFCTR-FIKRS Text CHAR 15 shows "Finanzkreis"
IFMFCTR-FIKRS I/O CHAR 4 The superordinated FM Area is
typed in here. Matchcode FIKR
is used to provide help.
IFMFCTR-FICTR Text CHAR 15 shows "Finanzstelle"
IFMFCTR-FICTR I/O CHAR 10 The funds center is typed in here.
Matchcode FIST is used to
provide help.
OK_CODE OKCODE
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 75
DynPro Attributes
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 76
www.sts.tu-harburg.de/~f.matthes/r3.html 38
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Flow Logic
PROCESS BEFORE OUTPUT.
MODULE D0100_INDEPENDENT. PBO-Event
MODULE D0100_MOFIFY_SCREEN.
MODULE D0110_SET_PF-STATUS.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 77
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 78
www.sts.tu-harburg.de/~f.matthes/r3.html 39
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
DATA:
"/Finanzkreis
G_FIKRS LIKE FM01-FIKRS,
"/Finanzstelle
G_FICTR LIKE FMFCTR-FICTR,
"/Transaktionscode
G_TCODE LIKE SY-TCODE,
"/Flag um zu signalisieren, ob die TA / Function abhängig aufgerufen wurde.
FLG_CALLD LIKE SY-CALLD VALUE 0.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 79
a) Typically: Definition of a fixed header line for data exchange with the table
} Header Line
} Table
}
} Header Line A
Table
} Header Line B
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 80
www.sts.tu-harburg.de/~f.matthes/r3.html 40
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Element-Oriented
positional read it index 42.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 81
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 82
www.sts.tu-harburg.de/~f.matthes/r3.html 41
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 83
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 84
www.sts.tu-harburg.de/~f.matthes/r3.html 42
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Branching in ABAP/4
DynPro DynPro DynPro
default default
PBO PAI PBO PAI PBO PAI
SET SCREEN 200
LEAVE SCREEN
“GOTO”
DynPro DynPro
default
PBO PAI PBO PAI
FORM FMFCTR_ENQUEUE.
"/ if ( Anlegen oder ändern einer Finanzstelle )
CHECK ( ( G_TCODE = TR_FICTR_INS )
OR ( G_TCODE = TR_FICTR_UPD ) ).
"/ Sperre für eine Finanzstelle anfordern
CALL FUNCTION 'ENQUEUE_EFMFCTR'
EXPORTING
FIKRS = G_FIKRS
FICTR = G_FICTR
EXCEPTIONS
FOREIGN_LOCK = 1
SYSTEM_FAILURE = 2.
CASE SY-SUBRC. "/ Fehlerbehandlung
WHEN 1. "/bereits von anderem User gesperrt (FOREIGN_LOCK)
MESSAGE E641 WITH G_FICTR.
WHEN 2. "/ SYSTEM_FAILURE bei einer Sperranforderung
MESSAGE A521 WITH G_FICTR.
ENDCASE. "/ SY-SUBRC
ENDFORM. "/ FMFCTR_ENQUEUE
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 86
www.sts.tu-harburg.de/~f.matthes/r3.html 43
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 87
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3-Repository
3. Enterprise Modeling with R/3
4. Objects of the R/3 Data Dictionary
5. Programming with ABAP/4 and the DynPro Concept
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 88
www.sts.tu-harburg.de/~f.matthes/r3.html 44
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Procedure Model
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 89
Implementation Guide
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 90
www.sts.tu-harburg.de/~f.matthes/r3.html 45
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 91
Technical Implementation
R NO ABAP/4 standard code is changed !
R Reaction to contents of tables:
• dynamic screen modification in PBO-Modules
• CASE/IF/CHECK -statements in ABAP/4
• change of screen appearance, e.g. through SET SCREEN
• ...
R “Customizing Slots” in ABAP/4 standard modules:
• ABAP/4 Modules with certain names will be called by the standard code - the
module implementation is to be done during the customizing process.
R Attributes in Include- and Append-Tables.
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 92
www.sts.tu-harburg.de/~f.matthes/r3.html 46
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Overview
1. SAP R/3: Past, Presence and Future
2. The Integrated R/3-Repository
3. Enterprise Modeling with R/3
4. Objects of the R/3 Data Dictionary
5. Programming with ABAP/4 and the DynPro Concept
6. Customizing R/3: Concepts and Techniques
7. Process and System Architecture
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 93
R/3 Business
ABAP/4 Applications
Developm.
Work-
Workbench CCMS
flow
Function
Modules
R/3 Middleware
System Software
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 94
www.sts.tu-harburg.de/~f.matthes/r3.html 47
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Application server
Central
booking RDBMS
process Database server
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 95
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 96
www.sts.tu-harburg.de/~f.matthes/r3.html 48
EDBT‘98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer
Process Architecture
R/3 system
+1 +1
+1
Work Process
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 97
Work Process
Dialog
Batch
Enqueue
Task Handler
Booking
DynPro
processor
Message
ABAP/4
processor
Database
interface
EDBT’98 - Tutorial: Understanding SAP R/3 © 1998 Florian Matthes, Stephan Ziemer - 98
www.sts.tu-harburg.de/~f.matthes/r3.html 49