Professional Documents
Culture Documents
E n h a n c e m e n ts a n d
M o d ific a tio n s
R
SAP AG
A B A P W o rk b e n c h
Level 2 Level 3
B C405 5 days B C411 5 days
T e c h n iq u e s o f A dvanced A BA P
L is t P ro c e s s in g P ro g ra m m in g
B C410 5 days B C425 2 days
T ra n s a c tio n P ro c e s s in g E n h a n c e m e n ts a n d
M o d ific a tio n s
B C415 3 days B C440 5 days
C o m m u n ic a tio n D e v e lo p in g In te rn e t
In te rfa c e P ro g ra m m in g A p p lic a tio n C o m p o n e n ts
in A B A P (IA C )
B C400 5 days B C420 2 days
A B A P W o rk b e n c h
B a s ic s In te rfa c e P ro g ra m m in g
fo r D a ta T ra n s fe r
B C430 2 days
A B A P D ic tio n a ry
B C460 3 days
S A P s c rip t: F o rm s
D e s ig n a n d T e x t
M a n a g e m e n t in R /3
SAP AG
C o u rs e O v e rv ie w D ia g ra m
R /3 B u s in e s s C u s to m e r
A p p lic a tio n s P ro g ra m s
( T h e S A P S ta n d a rd )
C u s to m e r
M o d ific a tio n E nhancem ent D e v e lo p m e n t
H a rd -C o d e d A B A P D ic tio n a ry W ith re fe re n c e s
M o d ific a tio n s 3 T a b le e n h a n c e m e n ts to S A P o b je c ts
F ie ld e x its
T e x t e n h a n c e m e n ts W ith o u t
re fe re n c e s to S A P
C u s to m e r E x its o b je c ts
4 F u n c tio n m o d u le e x its
2 M e n u e x its
S c re e n e x its
B u s in e s s
5 T ra n s a c tio n E v e n ts
U s e r E x its
SAP AG
C h a n g e L e v e ls
R /3 B u s in e s s
C u s to m e r
A p p lic a tio n s
P ro g ra m s
(S A P S ta n d a rd )
C u s to m e r
C u s to m iz in g P e rs o n a liz a tio n M o d ific a tio n s E n h a n c e m e n ts
D e v e lo p m e n t
B u s in e s s ABAP
E n g in e e r W o rk b e n c h
SAP AG
D e c id in g W h a t K in d o f C h a n g e s to M a k e
C u s to m iz in g
A re th e re s ta n d a rd fu n c tio n s th a t
c a n b e a d ju s te d to fu lfill th e c u s to m e r’s n e e d s C u s to m iz in g
u s in g C u s to m iz in g o r p e rs o n a liz a tio n ? P e rs o n a liz a tio n
Y es
No
C u s to m e r D e v e lo p m e n t
D o s im ila r fu n c tio n s e x is t in th e S A P s ta n d a rd ?
C S P S o lu tio n
D e v e lo p m e n t
No
Y es
C u s t. d e v . w ith S A P R
M o d ific a tio n
p ro g ra m s a s e x a m p le s
SAP AG
C h a n g e L e v e ls in th e A B A P W o rk b e n c h
R /3 B u s in e s s C u s to m e r
A p p lic a tio n s P ro g ra m s
(T h e S A P S ta n d a rd )
C u s to m e r
M o d ific a tio n E n h a n c e m e n ts D e v e lo p m e n t
H a rd -C o d e d A B A P D ic tio n a ry W ith re fe re n c e s
M o d ific a tio n s to S A P o b je c ts
T a b le e n h a n c e m e n ts
F ie ld e x its
T e x t e n h a n c e m e n ts W ith o u t
C u s to m e r E x its re fe re n c e s to
S A P o b je c ts
F u n c tio n m o d u le e x its
M e n u e x its
S c re e n e x its
B u s in e s s
T ra n s a c tio n E v e n ts
U s e r E x its
SAP AG
C u s to m e r E x its : O v e rv ie w
S A P R /3
M enu#1 M enu#2 M enu#3 S y s te m H e lp
F u n c tio n 1
F u n c tio n 2
F u n c tio n 3 M e n u e x its
C u s to m e r fu n c tio n
(C u s to m e r fu n c tio n s )
F u n c tio n 4
F ie ld y
S c re e n e x its
(C u s to m e r fie ld s ) F ie ld z
ABAP
PROGRAM ... .
...
...
F u n c tio n m o d u le e x its
R
(C u s to m e r fu n c tio n s )
SAP AG
Im p le m e n tin g C u s to m e r E x its
ABAP S c re e n P a in te r
F u n c tio n m o d u le e x it S c re e n e x it
M e n u P a in te r
M e n u e x it
SAP AG
C u s to m e r E x its : S A P a n d th e C u s to m e r
SAP C u s to m e r
S u b s c re e n a re a s S c re e n e x its S u b s c re e n s
F lo w lo g ic F u n c tio n m o d u le c o d e
SAP AG
F ie ld E x its
S A P R /3
S y s te m H e lp
F ie ld
S A P R /3
S y s te m H e lp
F ie ld
S A P R /3
S y s te m H e lp
F ie ld
D a ta e le m e n t F u n c tio n m o d u le R
F ie ld e x it
SAP AG
F ie ld E x its : S A P a n d th e C u s to m e r
SAP C u s to m e r
D a ta e le m e n t F ie ld e x its F u n c tio n m o d u le
SAP AG
T e x t E n h a n c e m e n ts : S A P a n d th e C u s to m e r
SAP C u s to m e r
Adds own
S A P d o c u m e n ta tio n D a ta e le m e n ts d o c u m e n ta tio n to
S A P d o c u m e n ta tio n
S A P k e y w o rd D a ta e le m e n ts C u s to m e r k e y w o rd
SAP AG
U s e r E x its
S A P p ro g ra m In c lu d e fo r u s e r e x its
PROGRAM ... . *INCLUDE ...
... ...
U s e r e x it
(C u s to m e r fu n c tio n )
SAP AG
M o d ific a tio n s
ABAP
PROGRAM ... .
...
SAP AG
E v a lu a tin g A B A P D e v e lo p m e n t P ro je c ts
Im p le m e n ta tio n c o s ts a re g re a te r th a n w ith C u s to m iz in g .
C onsequences
S y s te m p e rfo rm a n c e ... c a n b e a ffe c te d n e g a tiv e ly .
A n in c re a s e d n u m b e r ... b e c o m e n e c e s s a ry a t u p g ra d e .
o f a d ju s tm e n ts
SAP AG
S u m m a ry
Y o u c a n e n h a n c e y o u r R /3 s y s te m u s in g C u s to m iz in g ,
e n h a n c e m e n ts , c u s to m e r d e v e lo p m e n ts , a n d
m o d ific a tio n s .
If n o t a ll o f th e b u s in e s s p ro c e s s e s th a t y o u w a n t c a n b e
a d d e d to y o u r s y s te m d u rin g C u s to m iz in g , u s e A B A P
d e v e lo p m e n t p ro je c ts a re to e x p a n d y o u r s y s te m ’s
fu n c tio n a lity .
F u n c tio n m o d u le e x its , s c re e n e x its , m e n u e x its , a n d
fie ld e x its a ll a llo w y o u to e n h a n c e p ro g ra m s .
F u n c tio n m o d u le e x its , s c re e n e x its , a n d m e n u e x its
h a v e to b e p la n n e d a n d c re a te d b y S A P p ro g ra m m e rs .
Y o u s h o u ld a v o id m a k in g m o d ific a tio n s to th e S A P
s ta n d a rd s in c e th is m a k e s a d d itio n a l a d ju s tm e n t
n e c e s s a ry a t u p g ra d e . R
SAP AG
W h a t a re m o d ific a tio n s ?
C u s to m e r R /3 S y s te m
D o m a in s , d a ta e le m e n ts ,
ta b le s , A B A P p ro g ra m s ,
s c re e n s , in te rfa c e s , ...
S A P o b je c t
C hange
(w ith A B A P W o rk b e n c h to o ls )
M o d ifie d
S A P o b je c t
SAP AG
R e g is te rin g M o d ific a tio n s in S S C R
R e p o s ito ry B ro w s e r: In itia l S c re e n
S y s te m H e lp
C u s to m e r O b je c t lis t
s y s te m R e g is te r o b je c t
S y s te m H e lp
program_name
P ro g ra m
P le a s e e n te r th e k e y fo r
o b je c t ... :
O S S : S A P O b je c t R e g is tra tio n
S y s te m H e lp
R
SAP AG
M o d ific a tio n s : C ritic a l S u c c e s s F a c to rs (1 )
REPORT sapabap.
• E n c a p s u la tio n IF sy-tabix = 1.
*#SD_001...#Insertion
in s te a d o f in s e rtio n CALL FUNCTION 'ZFM'
CHANGING
REPORT sapabap. counter = count
IF sy-tabix = 1. TABLES
*#SD_001...#Insertion itab = tab.
count = count + 1. ENDIF.
LOOP AT tab
WHERE f1 < 10. FUNCTION zfm.
.... counter = counter + 1.
ENDLOOP. LOOP AT itab
ENDIF. WHERE f1 < 10.
....
ENDLOOP.
In s e rtio n ENDFUNCTION.
E n c a p s u la tio n
R
SAP AG
M o d ific a tio n s : C ritic a l S u c c e s s F a c to rs (2 )
SAP AG
M o d ific a tio n s : C ritic a l S u c c e s s F a c to rs (3 )
D o n o t m o d ify a n y A B A P D ic tio n a ry o b je c ts th a t
b e lo n g to th e c o re o f y o u r s y s te m (B a s is D ic tio n a ry
o b je c ts ).
O n ly m a k e c h a n g e s to B a s is D ic tio n a ry o b je c ts if to ld
to d o s o in a n O S S n o te o r b y s o m e b o d y fro m th e S A P
H o tlin e .
D o n o t c re a te a n y a d d itio n a l fu n c tio n m o d u le s in S A P
fu n c tio n g ro u p s (p rio r to R e le a s e 4 .5 A )
D o n o t d e le te s o u rc e c o d e - c o m m e n t it o u t in s te a d
SAP AG
M o d ific a tio n A d ju s tm e n t: S P D D a n d S P A U
S A P s ta n d a rd R e v e rt to
C u s to m e r S A P s ta n d a rd
v e rs io n
T ra n s a c tio n s :
C o m p a re SPDD
SPAU
A d ju s tm e n t
SAP AG
M o d ific a tio n A d ju s tm e n t: O b je c ts
SPDD SPAU
A B A P p ro g ra m s
In te rfa c e s
D o m a in s
S c re e n s
D a ta e le m e n ts
M a tc h c o d e o b je c ts
T a b le s
V ie w s
L o c k o b je c ts
R
SAP AG
T h e a m o u n t o f w o rk n e c e s s a ry a t u p g ra d e
in c re a s e s ...
W ith th e n u m b e r o f S A P o b je c ts th a t
y o u r A B A P d e v e lo p m e n t p ro je c ts
depend on
E v e ry tim e S A P c h a n g e s th e o b je c ts
th a t y o u c a ll o r h a v e m o d ifie d
W ith th e im p o rta n c e o f th e S A P
o b je c ts y o u h a v e m o d ifie d .
SAP AG
U s e r E x its
T y p e o f e n h a n c e m e n ts u s e d in S D
C o n s is t o f e m p ty s u b ro u tin e s (F O R M ro u tin e s ) in
s p e c ia l in c lu d e s
S A P n e v e r a lte rs th e s e in c lu d e s e v e r
In c lu d e n a m e s m u s t s a tis fy a s p e c ia l n a m in g
c o n v e n tio n
T h e u s e o f u s e r e x its is te c h n ic a lly c o n s id e re d
m o d ific a tio n
SAP AG
U s e r E x its : A n E x a m p le
***INCLUDE MV45AFZB .
************************************************************
* This include is reserved for user modifications *
* Forms for sales document processing *
* The name of modification modules should begin with 'ZZ'. *
************************************************************
*
*&----------------------------------------------------------------*
*& Form USEREXIT_FILL_VBAP_FROM_HVBAP
*&----------------------------------------------------------------*
* This user exit can be used to fill additional data into *
* VBAP from the main item (HVBAP), that is, this user exit *
* is called when an item is entered with reference to a main*
* item. This form is called from form VBAP_FUELLEN_HVBAP. *
*-----------------------------------------------------------------*
FORM userexit_fill_vbap_from_hvbap.
* VBAP-zzfield = HVBAP-zzfield2.
ENDFORM. R
SAP AG
U s in g U s e r E x its
L o o k in th e S A P R e fe re n c e Im p le m e n ta tio n G u id e fo r
w h e re to u s e u s e r e x its .
R e a d th e re le v a n t d o c u m e n ta tio n
F o llo w th e s te p s d e s c rib e d in th e d o c u m e n ta tio n
SAP AG
A p p e n d S tru c tu re s
F ie ld A F ie ld B
T a b le A p p e n d s tru c tu re
F ie ld 1 F ie ld 2 F ie ld 3
F ie ld 1 F ie ld 2 F ie ld 3 F ie ld A F ie ld B
SAP AG
A p p e n d S tru c tu re s a t U p g ra d e
F ie ld A F ie ld B
T a b le A p p e n d s tru c tu re
F ie ld 1 F ie ld 2 F ie ld 3 F ie ld 4
N e w S A P v e rs io n A c tiv a tio n
is im p o rte d
F ie ld is a p p e n d e d
in th e d a ta b a s e
F ie ld 1 F ie ld 2 F ie ld 3 F ie ld 4
F ie ld 1 F ie ld 2 F ie ld 3 F ie ld A F ie ld B F ie ld 4
SAP AG
C u s to m iz in g In c lu d e s
C u s to m iz in g tra n s a c tio n
or SA P enhancem ent
C u s to m iz in g in c lu d e
F ie ld A F ie ld B
T a b le A
T a b le B
F ie ld 1 F ie ld 2 C I_ In c l F ie ld 3
F ie ld L F ie ld M C I_ In c l F ie ld N
F ie ld 1 F ie ld 2 F ie ld 3 F ie ld A F ie ld B
F ie ld L F ie ld M F ie ld N F ie ld A F ie ld B
R
SAP AG
G lo b a l E n h a n c e m e n ts
SAP C u s to m e r
D e fin e s g lo b a l
e n h a n c e m e n ts
D e fin e s
d a ta e le m e n ts
C re a te s fie ld e x its
D o c u m e n ts C h a n g e s k e y w o rd s
d a ta e le m e n ts a n d s h o rt te x ts
SAP AG
F ie ld E x its
S A P R /3
S y s te m H e lp
A B A P D ic tio n a ry
F ie ld 1
F ie ld 2
F u n c tio n m o d u le
FFie
ield
ld fo
formrm aatt
O
O bblig
ligaato
tory
ry FFoore
reig
ignn
EEnntry
try cchheecckkss aanndd
fie
field
ld cchheecckkss kkeeyy cchheecckkss
fie
field ld tra
trannssppoortrt
R
SAP AG
G lo b a l a n d L o c a l F ie ld E x its
P ro g ra m o n e
S y s te m H e lp
FIELD_EXIT_DTEL
D a ta e le m e n t F ie ld 1
DTEL F ie ld 2
P ro g ra m tw o
S y s te m H e lp
F ie ld 1
F ie ld 2
P ro g ra m th re e
FIELD_EXIT_
S y s te m H e lp LOCTEL_1
F ie ld 1
F ie ld 2
FIELD_EXIT_LOCTEL_2
D a ta e le m e n t
FIELD_EXIT_LOCTEL_3 LOCTEL R
SAP AG
K e y w o rd s
SAP C u s to m e r
D e fin e s
D e fin e s
g lo b a l
d a ta e le m e n ts
e n h a n c e m e n ts
K e y w o rd K e y w o rd
s h o rt: s h o rt:
m e d iu m : m e d iu m :
lo n g : lo n g :
H e a d e r: H e a d e r:
S h o rt te x t (F 1 ): S h o rt te x t (F 1 ):
SAP AG
S u m m a ry
T a b le e n h a n c e m e n ts a llo w y o u to a d d y o u r o w n
fie ld s to S A P ta b le s w ith o u t h a v in g to m o d ify y o u r
s y s te m
Y o u c a n e n h a n c e th e fu n c tio n a lity o f s p e c ific
s c re e n fie ld s b y u s in g fie ld e x its
T e x t e n h a n c e m e n ts a llo w y o u to re p la c e S A P
k e y w o rd s w ith y o u r o w n k e y w o rd s
Y o u c a n a ls o e n h a n c e y o u r d o c u m e n ta tio n a n d
d e s ig n y o u r o w n h e lp to p ic s
SAP AG
S A P E n h a n c e m e n ts a n d C u s to m e r E n h a n c e m e n t P ro je c ts
SAP C u s to m e r
K K E
E
P
K K E
K K E
E P
E
K K
K
K E
K
R
F u n c tio n m o d u le s
E d it th e e n h a n c e m e n t
p ro je c t’s c o m p o n e n ts
M e n u e n trie s
S u b s c re e n s
C u s to m e r d o c u m e n ta tio n :
D o c u m e n t th e
e n h a n c e m e n t p ro je c t
A c tiv a te th e R
e n h a n c e m e n t p ro je c t A c tiv a tio n
SAP AG
C re a tin g C u s to m e r E n h a n c e m e n t P ro je c ts
P ro je c t M a n a g e m e n t
S y s te m H e lp
P ro je c t
C re a te
A ttrib u te s
S y s te m H e lp
D e s c rip t.
Save
SAP AG
A s s ig n in g S A P E n h a n c e m e n ts to C u s to m e r P ro je c ts
P ro je c t M a n a g e m e n t
S y s te m H e lp
P ro je c t
C hange S AP
e n h a n c e m e n ts
S A P E n h a n c e m e n ts
S y s te m H e lp
S A P E n h a n c e m e n ts
Save
SAP AG
C a llin g a n d C re a tin g F u n c tio n M o d u le s
PROGRAM <program_name>.
.
.
.
CALL CUSTOMER-FUNCTION '001'.
.
.
.
FUNCTION-POOL SAPLX<name>.
.
.
.
FUNCTION exit_<program_name>_001.
.
.
.
ENDFUNCTION.
R
SAP AG
O rg a n iz a tio n o f a n X F u n c tio n G ro u p
SAP C u s to m e r
INCLUDE LXaaaTOP.
INCLUDE LXaaaUXX.
INCLUDE LXaaaF00. *INCLUDE ZXaaaZZZ.
INCLUDE ZXaaaZZZ. < c u s to m e r s u b ro u tin e s (F O R M )
a n d m o d u le s (M O D U L E )>
INCLUDE LXaaaU01.
INCLUDE LXaaaU02.
FUNCTION exit_<program_name>_001.
...
*INCLUDE ZXaaaU01.
INCLUDE ZXaaaU01.
... < c u s to m e r s o u rc e c o d e >
ENDFUNCTION.
FUNCTION-POOL SAPLXaaa.
*INCLUDE ZXaaaTOP.
INCLUDE LXaaaTAP.
< g lo b a l c u s to m e r d a ta d e fin itio n s >
R
INCLUDE ZXaaaTOP.
SAP AG
C u s to m e r S c re e n s
SAP C u s to m e r
FUNCTION exit_<program name>_001.
... *INCLUDE ZXaaaU01.
...
INCLUDE ZXaaaU01.
... CALL SCREEN <screen>
S T A R T I N G A T ....
ENDFUNCTION.
*INCLUDE ZXaaaZZZ.
INCLUDE ZXaaaO01.
INCLUDE LX aaa TOP.
INCLUDE ZXaaaO02.
INCLUDE LX aaa UXX.
INCLUDE ZX aaa ZZZ. ...
INCLUDE ZXaaaI01.
*INCLUDE ZXaaaO01.
M O D U L E ... O U T P U T .
... R
ENDMODULE.
SAP AG
M e n u E x its
SAP C u s to m e r
S A P R /3 S A P R /3
M enu#1 M enu#2 M enu#3 S y s te m H e lp M enu#1 M enu#2 M enu#3 S y s te m H e lp
F u n c tio n 1
F u n c tio n 1
F u n c tio n 2 F u n c tio n 2
F u n c tio n 3 F u n c tio n 3
C u s to m e r fu n c tio n
SAP AG
A s s ig n in g S A P E n h a n c e m e n ts to C u s to m e r P ro je c ts
P ro je c t M a n a g e m e n t
S y s te m H e lp
P ro je c t
C hange
c o m p o n e n ts
P ro je c t M a n a g e m e n t
S y s te m H e lp
M e n u e x it
S A P M a b b c + fc 1
E d it
c o m p o n e n ts
M enu Text
S y s te m H e lp
N e w te x t
R
SAP AG
M e n u E x its a n d F u n c tio n M o d u le E x its
PROGRAM <program_name>.
DATA ok_code LIKE sy-ucomm.
...
CASE ok_code.
WHEN 'DISP'.
...
WHEN '+CU1'.
CALL CUSTOMER-FUNCTION '001'
E X P O R T I N G ...
I M P O R T I N G ...
...
ENDCASE.
SAP AG
S c re e n E x its
SAP C u s to m e r
F ie ld 1 F ie ld 1 F ie ld z
F ie ld 2 F ie ld 2
F ie ld x
F ie ld y
SAP AG
S u b s c re e n s in th e R /3 S y s te m
S A P R /3
S y s te m H e lp
Nam e
S A P R /3
abcd S y s te m H e lp
P. O. box 11334
P. O. box
a
Fax no.
b c
6 7 8
d90 R
M a in s c re e n flo w c o n tro l
PROCESS BEFORE OUTPUT.
CALL SUBSCREEN abcd INCLUDING
sy-cprog '0100'.
...
SAP AG
D e fin in g S c re e n E x its
S A P R /3
S y s te m H e lp
P ro g ra m : S A P M a b b c
S c re e n : 1234
C u s to m e r fie ld 1
S u b s c re e n a re a C u s to m e r fie ld 2
abcd
P ro g ra m : S A P L X y y z
S c re e n : 0444
PROCESS BEFORE OUTPUT.
...
CALL CUSTOMER-SUBSCREEN abcd
INCLUDING 'SAPLXYYZ' '0444'.
...
R
SAP AG
C a llin g C u s to m e r S u b s c re e n s
SAP C u s to m e r
S A P R /3
S y s te m H e lp
F ie ld y
F ie ld z
S u b s c re e n a re a
abcd
P ro g ra m : S A P M a b b c S c re e n : .... P ro g ra m : S A P L X y y z S c re e n : 0 4 4 4
SAP AG
E d itin g S u b s c re e n s (1 )
P ro je c t M a n a g e m e n t
S y s te m H e lp
P ro je c t
Change
c o m p o n e n ts
P ro je c t M a n a g e m e n t
S y s te m H e lp
S c re e n e x it
SA PM abbc1234_abcd_SA PLXyyz 0444
E d it
c o m p o n e n ts R
SAP AG
E d itin g S u b s c re e n s (2 )
E d it
c o m p o n e n ts
No Does Y es
s c re e n
e x is t? S c re e n P a in te r
C re a te S y s te m H ilfe
S c re e n
P a in te r
s c re e n ? S y s te m H ilfe
S c re e n P a in te r
S y s te m H e lp
S c re e n a ttrib u te s
S y s te m H e lp
* SAPLXyyz Dynpro 0444
PROCESS BEFORE OUTPUT.
MODULE a .
S c re e n ty p e ...
PROCESS AFTER INPUT.
MODULE m.
C h o o s e o b je c t
S u b s c re e n
*INCLUDE ZXyyzO01. R
MODULE a OUTPUT.
...
SAP AG