Download - Optimisation Des Programmes ABAP 2
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 1/66
SAP R/3
Optimisation des développements ABAP/4
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 2/66
OPTIMISATION DES DÉVELOPPEMENTS ABAP/4 1
1 RECENSEMENT DES PROGRAMMES À OPTIMISER 3
1.1 Transactin ST!3 " P#r$r%anc# & 'r()a* ana)+sis $r SAP s+st#%. 31., Transactin ST!4 " Data-as# #r$r%anc# " Orac)# #ri#0. 41.2.1 Oracle sessions 4
1.2.2 SQL requests 51.3 Transactin ST! " Trac# S2L 1.4 Transactin ST,, " Ana)+s# *#s i*a#s %5%ir#. 61. Transactin SM37 " Ana)+s# #r$r%anc#s 8r 9-s arri:r#;)an <
, ANAL=SE D> PROGRAMME 7
,.1 Transactin SE3! " Ana)+s# *# )a *8r5# *# )?#@5c8tin 7,., L#s Tis tric(s 13
3 OPTIMISATIONS 14
3.1 L#s ti%isatins in8ti)#s 143., L# SELECT 16
3 3 L ) 'ERE i i *? CEC 1<
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 3/66
1 R#c#ns#%#nt *#s rra%%#s ti%is#r
1.1 Transaction ST03 : Performance – Workload analysis for SAP system.
Le !outon " per#ormance data!ase $ permet de consulter le top 4% pour une &ournée'une semaine ou un mois donné. (l e)iste en #ait deu) tops 4% * un en temps' un enconsommation Oracle.
+ous les prorammes spéci#iques du top 4% ne sont cependant pas , incriminer. Par e)emple' dans le cas des prorammes e##ectuant du call transaction' il - a une #orte
pro!a!ilité pour que le temps consommé soit en #ait lié au) transactions appelées.
(l est possi!le daccéder au) statistiques détaillées dun proramme du top 4% a#in deconnatre le t-pe dordre le plus consommateur 0accs directs' séquentiels' 3.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 4/66
1.2 Transaction ST04 : Database erformance : !racle o"er"ie#.
Le !outon " detail anal-sis menu $ renvoie sur un écranmenu avec deu) options
intéressantes pour les optimisations *
1.,.1 Orac)# s#ssinsPermet de visualiser en temps réel les caractéristiques d6un ordre SQL en coursd6e)écution * état' c7emin 0e)plain3' activité disque 8ette transaction peutéalement #ournir des in#ormations sur l6impact d6une requ9te sur le reste dus-stme.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 5/66
1.,., S2L r#F8#sts A##ic7e le contenu du !u##er SQL d6Oracle' et permet de mettre en évidence les
requ9tes les plus consommatrices et terme de tri interne' accs disques' etc' et#ourni des in#ormations pratiques via l6e)plain.
L6initiateur 0proramme' utilisateur ou transaction3 n6est pas spéci#ié. :e ce #ait'l6e)ploitation de cette transaction peut s6avérer #astidieuse dans un environnement deproduction' mais représente une !onne source d6in#ormation sur l6environnement derecette.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 6/66
1.3 Transaction ST0$ : Trace S%&
La pose d6une trace SQL permet d6isoler les ordres Oracles consommateurs.
L6e)plain est disponi!le pour les ordres tracés ou un ordre SQL en saisie li!re. Attention * ne pas laisser une trace SQL active.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 7/66
1.4 Transaction ST22 : Analyse des "ida'es m(moire.
<lle #ournit la liste des interruptions de proramme.
=ne interruption de t-pe :B(>?@SQL?<@@O@ liée , un SAPSO+ +OO OL: ests-stématiquement per#ecti!le puisqu6elle sinale un volume important de donnéesaccédées sur une période de temps éalement importante.
=ne interruption de t-pe +(C<?O=+ est éalement , surveiller si elle se produitsouvent sur le m9me proramme' mais la solution ne passe pas #orcément par lacorrection du proramme. Si le proramme est dé&, optimisé' il peut s6air d6unemauvaise utilisation du proramme ou de la transaction 0manque de critres
discriminants3. :ans ce cas' un contact télép7onique avec l6utilisateur su##iténéralement , réler le pro!lme. 8e contact peut éalement mettre en évidence lanécessité d6a&outer un critre de sélection dans les paramtres d6e)écution d6unreport.
Les interruptions liées , des pro!lmes de mémoire 0O=+?O>?C<CO@D 3' depaination 0+SE?+<F?PAG<?ALLO8?>A(L<:3' ou de sinau) transmis par =ni)'sont énéralement évita!les. L6optimisation passe par une meilleure estion des
ta!les internes.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 8/66
1.$ Transaction S)3* : Analyse erformances o+r ,obs arri-re lan
Permet de déceler les &o!s trs consommateurs en temps' qu6ils soient lancés par laproduction ou par les utilisateurs.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 9/66
, Ana)+s# *8 rra%%#
2.1 Transaction S/30 : Analyse de la d+r(e de le(c+tionPermet de quanti#ier le temps passé par ordre SQL ou autre. L6anal-se peut #aireressortir des pro!lmes de per#ormance sur la estion des ta!les internes.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 10/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 11/66
2.2 &es Tis tricks
L6option des tips and tricKs est trs utile pour comparer la per#ormance de deu)
ordres 0SQL ou autres3 ou se séparer didées reues. :es modles standards sont#ournis mais il - a la possi!ilité de les modi#ier ou d6en créer de toutes pices.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 12/66
3 Oti%isatins
3.1 &es otimisations in+tiles 0Ou plutMt Npas trs utilesN3.
8ontrairement , certaines Nidées reuesN' lordre des ones sélectionnées ouquali#iées nimpacte pas ou peu les per#ormances. Le respect de ces ordres estsurtout lié , la lisi!ilité du proramme.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 13/66
8oncernant lordre des c7amps quali#iés' une inversion peut m9me 9tre pré#éra!le sile premier c7amp quali#ié est plus discriminant que le premier c7amp de linde).
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 14/66
8oncernant les quali#ications de one' certaines documentations apportent uneimportance particulire , la t-poloie des c7amps quali#iés. L, encore' sil est vraiquil est plus propre de respecter la t-poloie des c7amps' le##et sur lesper#ormances nest pas démontré.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 15/66
3.2 &e S/&/T 5
La sélection des colonnes nécessaires entrane un ain sini#icati#. Le NS<L<8+ N
est , éviter dans tous les cas.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 16/66
3.3 &es cla+ses W6/7/ s+i"ies d+n 6/8
+ous les critres de sélection doivent 9tre inclus dans la clause 7ere. Ainsi' Oracle
ne sélectionne que les lines pertinentes' réduisant ainsi les communications entreOracle et SAP.
Le c7ecK nest &usti#ié que dans le cas des ta!les cluster pour lesquelles seules lesones de clé peuvent 9tre quali#iées.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 17/66
8ette préconisation est éalement vala!le pour les !oucles de t-pe LOOP. *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 18/66
3.4 &es S/&/T imbri9+(s
(ls sont la cause principale des interruptions de t-pe SAPSO+?+OO?OL: ou
@OLLBA8R?S<GC<+?+OO?SCALL.(ls ne doivent 9tre utilisés que sur de petites ta!les. :ans tous les autres cas'l6optimisation consiste , supprimer les im!rications en utilisant des S<L<8+ (+O+ABL<.
3.$ &es ,oint+res internes o+ ;;/7 <!;
A !annir puisqu6elles ne #onctionnent pas 0en terme de per#ormance3 sous SAP 1(.
L6optimiseur Oracle n6est pas capa!le de déterminer la !onne stratéie d6accs 0noteOSS 11I523.
:ans les versions récentes d6Oracle et SAP' son utilisation est plus e##icace mais lesrequ9tes doivent 9tre développées de #aon , 9tre certain d6utiliser les inde)pertinents. (l est possi!le de s6en assurer en utilisant un e)plain sur l6environnementde production 0les autres environnements ne possédant pas o!liatoirement lesm9mes inde) ni les m9mes volumes3.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 19/66
3.= &es S/&/T s+i"i dAPP/;D de table
Lorsque cela est possi!le' l6alimentation d6une ta!le interne doit 9tre e##ectuée par la
requ9te SQL' et non prorammée. <)emple *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 20/66
Linstruction S<L<8+ (+O +ABL< suivie dun LOOP/<:LOOP' malré la estionmémoire nécessaire' est de toute #aon plus rapide quun S<L<8+/<:S<L<8+ *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 21/66
3.> &e S/&/T S;?&/
(l doit tou&ours 9tre utilisé lorsque l6on rec7erc7e une seule line' m9me si plusieurs
lines satis#ont la sélection. Par e)emple *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 22/66
(l en est de m9me pour l6utilisation du " =P +O 1 @OFS $ * le S(GL< est tou&oursplus e##icace.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 23/66
3.@ &es fonctions da'r('ation !B;TC SB)C );C )A EF
:ans la mesure du possi!le' elles doivent tou&ours 9tre utilisées. @éduisant les
communications Oracle / SAP' elles sont tou&ours plus e##icaces que laprorammation ABAP. <)emples avec S=C et CA *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 24/66
3.* &e S/&/T DST;T
Lorsque la loique du proramme impose do!tenir une liste de valeurs utilisées dans
une colonne de ta!le Oracle' le S<L<8+ :(S+(8+ est éalement plus e##icacequune prorammation ABAP/4 *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 25/66
3.10 Btilisation des inde
La per#ormance des prorammes est directement liées , lutilisation optimale des
inde). Si un proramme montre de mauvaises per#ormances sur une ta!leparticulire *
8ontrMler que le proramme utilise un inde)' par e)emple avec une trace
SQL.
8ontrMler que tous les critres de linde) connus par le proramme sont
correctement spéci#iés dans la clause N7ereN.
<nvisaer lutilisation dun autre inde) e)istant qui pourrait éventuellement 9tre
plus discriminant.
Sil nen e)iste pas' peut9tre e)istetil une ta!le de t-pe Ninde) loiqueN
0EAPCA' BS(S' 3 correspondant au) critres du traitement. Eoir documenten anne)e.
Lultime solution consiste en la création dun inde) sur la ta!le. 8ette création
doit 9tre envisaée en colla!oration avec la cellule Nadministration SAPN car
les risques de pertur!ations sur lenvironnement de production e)istent.Ladministration SAP pourra de plus contrMler le caractres discriminant delinde).
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 26/66
3.11 Tables internes et G;A7H S/A76
Lorsque la loique du proramme le permet' et en cas de ta!le interne contenant un
nom!re important de lines 0plus de 2%3' le tri de la ta!le sur la clé de lecture etensuite la lecture de la ta!le avec l6option " !inar- searc7 $ permet une optimisationtrs sini#icative des accs au) ta!les internes.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 27/66
3.12 Btilisation d+ D/&/T/ AD<A/;T DBP&AT/S
Lors de lalimentation dune ta!le dans laquelle la présence de dou!lon nest pas
sou7aitée' et si cette ta!le doit contenir plus de 2% lines' il est pré#éra!le dutiliser lacommande Ndelete ad&acent duplicatesN aprs lalimentation de la ta!le plutMt que denalimenter la ta!le que si la clé , insérer ne)iste pas.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 28/66
3.13 Tri des tables internes
<viter la s-nta)e NSO@+ ta!le.N' pré#érer NSO@+ ta!le BD Ke-?#ields.N en ne
spéci#iant que les clés indispensa!les , la loique du proramme 0le temps de tri estentre autres proportionnel , la taille de la clé3.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 29/66
3.14 Aareilla'e de tables internes
Lorsque la loique dun proramme impose un appareillae de ta!les internes'
pré#érer dans tous les cas lappareillae séquentiel.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 30/66
3.1$ A'r('ation de table interne
Linstruction 8OLL<8+ permet la création de ta!le aréée. (ndépendamment de la
taille de la ta!le' cette instruction est plus e##icace quune prorammation ABAP/4 *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 31/66
3.1= oncat(nation de tables internes
Lorsquil est nécessaire de copier le contenu dune ta!le interne dans une autre'
linstruction NAPP<: L(<S O> ta!?1 +O ta!?2N savre !eaucoup plus e##icacequune !oucle ABAP/4. <n e##et' linstruction est alors prise en c7are par le no-auSAP.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 32/66
3.1> &ib(ration de la m(moire
Lorsqu6une ta!le interne n6est plus utilisée par la suite du traitement' ne pas omettre
de #aire un " #ree $ de la ta!le * la mémoire est ainsi li!érée pour la suite dutraitement et pour les autres tTc7es du s-stme SAP. On limite ainsi la painationmémoire trs consommatrice en temps.
3.1@ ?estion des ficIiers et otimisation m(moire
Lorsque la loique du proramme le permet' les contenus de #ic7iers ne doivent pas
9tre c7arés en mémoire. Actuellement' !eaucoup de prorammes c7arent les#ic7iers en entrée directement en ta!le pour ensuite traiter cette ta!le' ou encorestocKe des données en ta!le interne pour les trans#érer dans un #ic7ier en #in detraitement.
8ette tec7nique consomme inutilement une quantité importante de mémoire et ce8P=.
8ette préconisation ne peut 9tre appliquée au) #ic7iers en entrées contenant unenreistrement de contrMle en dernier enreistrement' ou devant 9tre triés avanttraitement.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 33/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 34/66
3.20 &es acc-s a+ donn(es de base o+ a+ c+sto
Le !ut est d6éviter les accs inutiles. (l arrive #réquemment qu6un proramme aille lire
des in#ormations clients' articles ou autres pour c7acun des #lu) traité 0poste decommande' mouvement de stocK 3. (l - a ici une perte de temps trs importante'que l6on peut constater lors de l6utilisation de la transaction S<%.
Plusieurs solutions sont possi!les pour optimiser de tels prorammes *
Si la volumétrie de la ta!le des données de !ase est #ai!le ou accédée , plus
de 5% U' il peut 9tre &udicieu) de c7arer ces données en ta!le interne0uniquement les colonnes pertinentes3 en ent9te de proramme. 8ette ta!le
sera éventuellement triée si l6on &ue opportun d6utiliser l6option " !inar-searc7 $ lors des lectures.
Si la loique du proramme le permet' une solution peut consister en un
c7arement des données de #lu) en interne' suivi du tri de cette ta!le sur laclé de la donnée de !ase , rec7erc7er' en#in suivi d6une !oucle ou la donnéede !ase est uniquement accédée sur rupture de sa clé.
Si cette solution ne peut 9tre mise en place' il est alors possi!le de stocKer les
données de !ase en ta!le interne au #il de leur lecture. Ainsi' avant c7aquelecture Oracle' le proramme tentera de lire la données rec7erc7ée dans lata!le interne. (l #aut cependant #aire attention , la volumétrie. <n e##et' cettemét7ode emp9c7e l6utilisation de l6option " !inar- searc7 $' avec pour conséquence une lecture séquentielle contre per#ormante si la ta!le interneest volumineuse.
8e mode de #onctionnement peut éalement 9tre appliqué au) ta!les de custo mais
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 35/66
3.21 &es bo+cles dattente
e &amais prorammer de !oucle en 8P=. ormis le pro!lme classique de la!arrire #atidique de minuit' les !oucles en 8P= lent tout simplement leprocesseur dédié , la tTc7e' pénalisant ainsi les per#ormances lo!ales du s-stme. A la place' utiliser le module #onction <Q=<=<?SL<<P *
CALL FUNCTION ‘ENQUE_SLEEP’
EXPORTING SECONDS = P_SECOND EXCEPTIONS SYSTEM_FAILURE = 1
OTHERS = 2.
Avec P?S<8O: contenant le nom!re de secondes , attendre.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 36/66
3.22 Strat('ie dJacc-s
=ne mauvaise per#ormance est souvent le résultat dune mauvaise stratéie daccs.Pa) e)emple' si lon sou7aite lire tous les postes commandes des articles de lacatéorie NvilleN' il est plus rapide de récupérer la liste de ces articles puis les postesassociés 0éventuellement en passant par linde) loique EAPCA si la loique duproramme le permet3 plutMt que de lire tous les postes de commandes et tester dans un deu)ime temps si larticle #ait !ien partie de la catéorie NvilleN.
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 37/66
Ann#@# 1 " 28#)F8#s ta-)#s SAPar *%ain# $nctinn#)
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 38/66
SAP Ta-)# R#)atins#rsin 1.!.!
compiled !-
87ristop7er SolomonQit7
contri!utions !-
various SAP Pro#essionals
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 39/66
T a-)# #+
Lin( #+
On#;t;On#
On#;t;Man+
One One
One Can-
SA PTa-)# Na%#
HTa-)# D#scriti n
SAP>ield a me 0 > ield :escription3
=se#ul >ields
SAP+ a!le (n#ormation
0 t 8s# tis *c8%#ntQ
SAP >ield a me 0 > ield :escr iption3
SA PTa-)# Na%#
HTa-)# D#scriti n
Transar#nt Ta-)# C) 8st#r Ta-) #
+ 7is document displa-s and descri!es t7erelations7ipsandlinKs !etQ een t7evariousSAPdata!aset a!les. + 7eserelations7ips are
displa-edr ap7icall- asdescri!ed!eloQ *
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 40/66
Caster:ata +a!les
8<P8 WPro#it 8enterCaster:ata +a!le
8SRS W8ost 8enter Caster
RA1 W8utomerCaster0General :ata3
L>A1 WEendorCaster0General :ata3
CA@A WCaterial Caster0General :ata3
SRB1 WG/L Account Caster08ompan-8ode3
+%%1FWPlants/Branc7es
+%%1 W8ompan-8odes
SAP ; I/CO
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 41/66
SAP ; I/CO
>inancial
Accountin
SpecialPurpose
Leder
8ontrollin
Accounts
Pa-a!le
General
Leder
Accounts
@eceiva!le
@econcillation Leder
8ust om
Leder
Pro#it 8enter
Accountin
8ost 8enter
Accountin
T a - ) # s "BSA:
BSASBS<G
BS<S
BS(R
BS(S
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 42/66
I/CO+a!le Cappin
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 43/66
A l l > (
d o c u m
e n t s
8lo s ed it e m s
O p en ( t e m s
8lo s ed it e m s
8losed it e m s
O p en ( t e m s
O p en ( t e m s
:uplic at e ( n v oices
EBL@
LC1
HV#n*r %ast#r H transactin $i 48r#s
Eendor 0L( >@3
8ompan- 8ode 0B=R@S3
>iscalDear 0 GXA@3
NC1
HC8st%#r %ast#r Htr ans $i 48r#s
8ustom er 0R=@38ompan- 8ode 0B=R@S3
>iscalDear 0 GXA@3
BSAS
HAcc8ntin4" S#cn*ar+ in*#@ $r G/ L
acc8nts Hc)#ar#*i t#%s
8ompan- 8ode 0B=R@S3
G/ L Account 0RO+3
8learin :ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o0 Y=O@3
>iscalDear 0G XA@3
:ocument o 0B<L@3
Line ( tems 0 B=Y<(3
BSI P
HI n*#@ $r #n*r a)i*ati n$ *8-)#
*c8%#nts
8ompan- 8ode 0B=R@S3
Eendor 0L( >@3
8urrenc- 0FA<@S3
:ocument :ate 0BL:A+3
@e#erence :oc 0F @B+@3
Amount 0 F@B+@3
:ocument o 0B<L@3
>iscalDear 0 GXA@3
Line ( tems 0 B=Y<(3
BSI
HAcc8ntin4" S#cn*ar+ in*#@ $r
#n*rs
8ompan- 8ode 0B=R@S3
Eendor 0L( >@3
Specia lG /L +rans 0 =CSRS3
Specia l G / L ( n d 0 =C S RY 3
8learin :ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o0 Y=O@3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
Line ( tems 0 B=Y<(3
BSA
HAcc8ntin4" S#cn*ar+ in*#@ $r
#n*rs Hc)#ar#* it #%s
8ompan- 8ode 0B=R@S3
Eendor 0L( >@3
Specia lG /L +rans 0 =CSRS3
Specia l G / L ( n d 0 =C S RY 3
8learin :ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o0 Y=O@3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
Line ( tems 0 B=Y<(3
BVO R
HI nt#rc%an+sti n4 rc#*8r#s
(n te rcompan- o0 BEO@G3
8ompan- 8ode 0B=R@S3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
PA=R
HPa+%#nt trans$#r %#*i8% $i)#
Pa-in 8ompan- 0YB=R@3
ouse BanK 0BR(:3
Account 0 R+(:3
Pa-ment Cet 7od 0YLS83
87ecK o0 8<8R+3
BSAD
HAcc8nti n4" S#cn*ar+ in*#@ $r
c8st%#rs Hc)#ar#* it #%s
8ompan- 8ode 0B=R@S3
8ustom er 0R=@3
SpecialG /L +rans 0=CSRS3
Specia lG /L (nd 0=CSRY3
8learin:ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o 0Y=O@3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
Line ( tems 0 B=Y<(3
BP
HAcc8ntin4 *c8%#nt #a*#r8ompan- 8ode 0B=R@S3
:ocument o 0B<L@3
>iscalDear 0 GXA@3
BSEG
HAcc8ntin4 *c8%#nt s#4%#nt
8ompan- 8ode 0B=R@S3
:ocument o 0B<L@3
>iscalDear 0 GXA@3
Line ( tem 0B=Y<(3
BSIS
8ompan- 8ode 0B=R@S3
G/ L Account 0RO+3
8learin :ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o0 Y=O@3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
Line ( tems 0B=Y<(3
BSID
HAcc8nti n4" S#cn*ar+ in*#@ $r
c8st%#rs
8ompan- 8ode 0B=R@S3
8ustom er 0R=@3
SpecialG /L +rans 0=CSRS3
Specia lG /L (nd 0=CSRY3
8learin:ate 0A=G:+3
8learin :oc 0A=GBL3
Allocation o 0Y=O@3
>iscalDear 0 GXA@3
:ocument o 0B<L@3
Line ( tems 0 B=Y<(3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 44/66
O n e t ime accounts
inancia) A cc8ntin4
P7-sical
Loical
BP
HAcc8ntin4 *c8%#nt M#a*#r
8ompan- 8ode
:ocument o>iscal Dear
BS<8BS<:
BS<G
BS<S
BS<+
8ompan- 8ode
:ocument o
>iscal Dear
Lin e ( te m
8ompan- 8ode:ocument o
>iscal Dear
Lin e ( te m
BP
HAcc8ntin4 *c8%#nt M#a*#r
8ompan- 8ode
:ocument o
>iscal Dear
8ompan- 8ode
:ocument o>iscal Dear
Lin e ( te m
BSEG
HAcc8nti n4 *c8%#nts#4%#nt
BSEC
HOn#;ti %# acc8nt *ata
*c8%#nt s#4%#nt
BSETHTa@ *ata *c8%#nt
s#4%#nt
RBLG
HC)8st#r $ r acc8ntin4
*c8%#nt
SAP I/CO
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 45/66
Pr$it C#nt#r
A cc8nti n4
@OBX@
8OBX@
Cst C#nt#r
A cc8nti n4
S#cia) P8rs# L#*4#r
@OBX@
????????????????????????????????????????????????????????
E@a%)# $ a C8st%
L#*4#r
R#cnci))atin
L#*4#r
@OBX@
SAP I/CO
GLO
O !&e c t 0 O B X @ 3
GLT
Leder 0@L:@3
@ecord +-pe 0@@8+D3
E e r s ion 0 @E<@S3
>is c a l D e a r 0 G X A @ 3
O !&ect 0@O BX@3
O !&e c t 0 S O B X @3
8urrenc- 0@+8=@3
= O C 0 @ = ( + 3
:e!it / 8 r e d it (nd 0:@8@3
Per iod 0@PCA3
GLO
@ecord o 0G L?S(@(:3
CO I T
HTta )s r#cr*s ; r#cnc i)ia tin )#*4#r
Leder 0@L:@3
@ecord +-pe 0@@8+D3
Eers ion 0 @E<@S3
>is c a l D e a r 0 G X A @ 3
O !&ect 0@O BX@3
O !&ect 08O BX@3O !&e c t 0 S O B X @ 3
8urrenc- 0@+8=@3
= O C 0 @ = ( + 3
:e!it / 8 r e d it (nd 0:@8@3
Per iod 0@PCA3
C O I O ,
HTransactin;*##n*#nt $ i# ) *s $r
r#cnc i)ia tin )#*4#r
O !&e c t 0 O B X @ 3
C O I O 1
H O - 9 # c t T a -) # $ r R # c nc i ) i a t i n
L#*4#r COI T
O !&e c t 0 O B X @ 3
COSP
HCO O -9#c t" Cst Tta ) s ; E@t#rna )
Psti n4s
Leder 0L<:@3
O !&e c t 0 X ? O B X @ 3
>is c a l D e a r 0 G X A @ 3
Ealue +-pe 0F@++P3
E e r s ion 0E<@S3
8ost <lem ent 0 RS+A@38O Re- 0 @R>+3
8 O + r a n s 0 E @G G 3
+ r a d in Par t (: 0EB=:3
+ r a d in P ar t B A 0 P A@ G B 3
:e!it / 8 r e d it ( nd 0B<RY3
8urrenc- 0+FA<@3
Per iod BlocK 0P<@BL3
COEP
H C O -9 # c t " #r i * ; r # ) a t # * ) i n # i t # % s
8 o n t r o llin Area 0RO R@S3
:ocument o 0B<L@3
Lin e ( t e m 0 B = Y < ( 3
COB
8 o n t r o llin Area 0RO R@S3
:ocument o 0B<L@3
G LPCA
HEC;PCA" Act8a ) L in# It #%s
@ecord o 0G L?S(@(:3
G LPCO
HEC;PCA" O -9#ct Ta-)# $r Acc8nt
Ass i4n%#nt E )#% #nts
O !&e c t 0 O B X @ 3
G LPCT
HEC;PCA" Tta)s Ta-)#Leder 0@L:@3
@ecord +- pe 0@@8+D3
Plan Eers ion 0@E<@S3
>is c a l D e a r 0 G X A @ 3
O !&ect 0@O BX@3
O !&ect 08O BX@3
O !&ect 0SO BX@3
8urrenc- 0@+8=@3
= O C 0 @ = ( + 3
:e!it / 8 r e d it (nd 0:@8@3
Per iod 0@PCA3
G LPCC
HEC;PCA" Transactin Attr i-8t#s
O !&e c t 0 O B X @ 3
Cntr))in4
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 46/66
Acc8nts Pa+ a-)#
Kendor )aster Data
C%an+ C*#DataG#n#ra) DataP8rcasin4 Data
LM1
HV#n*r %ast#r r#cr* 8rcasin4r4aniatin *ata
Eendor o 0L( >@3
Purc7 Or 0<RO@G3
LM,HV#n*r Mast#r R#cr*" P8rcasin4Data
Eendor o 0L( >@3Purc7 Or 0<RO@G3Su!5rane 0L+S@3Plant 0 F<@RS3
LA1HV#n*r %ast#r H4#n#ra) s#ctin
Eendor o 0L( >@3
LB1HV#n*r %ast#r Hc%an+c*#
Eendor o 0L( >@38ompan- 8ode0 B=R@S3
LBHV#n*r %ast#r H -an( *#tai) s
Eendor o 0L( >@3BanK 8ntr - 0 BARS3BanK Re- 0BARL3
BanK Acc 0BAR3
LBHV#n*r %ast#r H*8nnin4*ata
Eendor o 0L( >@38ompan- 8ode0 B=R@S3:unnin Area 0CAB<@3
SA P I/CO
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 47/66
Acc8nts R#c#i a-)#
4+stomer )as ter Data
C%an+ C*# DataG#n#ra) DataSa)#s Ar#a Data
SAP I/CO
NA1
HG#n#ra) Data in C8st%#r Mast#r
8ustom er o 0R=@3
NB1
HC8st%#r %ast#r H c%an+c*#
8ustomer o0 R=@38ompan- 8ode0 B=R@S3
NB
HC8st%#r %ast#r H*8nnin4 *ata
8ustomer o0 R=@3
8ompan- 8ode0 B=R@S3
:unnin Area0 CAB<@3
NVP
HC8st%#r Mast#r Partn#r 8nctins
8ustomer o0 R=@3
Sales Or 0ERO@G3
:is t r i!ution87 0E+F<G3
:ivision 0SPA@+3
Partner >unction 0PA@EF3
Partner 8ounter 0PA@YA3
NVV
HC8st%#r Mast#r Sa)#sData
8ustomer o0 R=@3
Sales Or 0ERO@G3
:is t r i!ution87 0E+F<G3
:ivision 0SPA@+3
NVD
HC8st%#r %ast#r r#cr* sa)#s
r#F8#st $r%
8ustomer o0 R=@3
Sales Or 0ERO@G3
:is t r i!ution87 0E+F<G3
:ivision 0SPA@+3
Out put +-pe 0A?RS8L3
Cess Lanuae 0SP@AS3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 48/66
Mas t#r Data
Cst C#nt#r Pr$it C#nt#r
G#n#ra) L#*4#r
Cst E)#% #t
SAP I/CO
CEPCHPr$it c#nt#r %ast#r *atat a-)#
Pro#it 8enter 0 P@8+@3
Ealid to :ate 0:A+B(3
8ontrollin Area 0ROR@S3
CEPCTHT#@ts $r Pr$it C#nt#r Mast#r Data
Lanuae 0 SP@AS3
Pro#it 8enter 0 P@8+@3Ealid to :ate 0:A+B(3
8ontrollin Area 0ROR@S3
CSSHCst c#nt#r %ast#r
8ontrollin Area 0ROR@S3
8ost 8enter 0 ROS+L3
Ealid to :ate 0:A+B(3
CSA
HCst #)#%#nts H*ata *##n*#nt n
cart $ acc8nts8OA 0R+OPL3
8ost <lement 0RS+A@3
CSTHCst C#nt#r T#@ts
Lanuae 0SP@AS3
8ontrollin Area 0ROR@S38ost 8enter 0 ROS+L3
Ealid to :ate 0:A+B(3
CSB
HCst #)#%#nts H *ata *##n*#nt n
cntr))i n4ar#a
8ontrollin Area 0 ROR@S3
8OA0 R+OPL38ost <lement 0RS+A@3
Ealid to :ate 0:A+B(3
CS>
HCst E)#%#nt T#@ts
Lanuae 0 SP@AS3
8OA 0R+OPL3
8ost <lement 0RS+A@3
SB1
HG /L acc8nt %ast#r H c%an+ c*#
8ompan- 8ode0 B=R@S3
G/ L Account 0 SAR@3
SA1
HG/ L acc8nts %ast#r Hcart $ acc8nts8OA 0R+OPL3
G/ L Account 0SAR@3
SAT
HG /L acc8nt %ast#r r#cr* Hcart $ acc8nts" *#scri tin
Lanuae 0SP@AS3
8OA 0R+OPL3
G /L Account 0 SAR@3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 49/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 50/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 51/66
P8rcasin4R#F8isitin
SAP MM; P8rcasin4
STJ
HSTJDSA Pscrit t#@t $i )# #a*#r
+ e)ts 0+ :OBX<8+ 3
+ e)t ame0+ :AC<3
+ e)t (d0+ :(:3
Lanuae0 + :SP@AS3
EBA N
HP8rcas#R#F8isi ti n
Purc7asin @eq0 BA>3
(tem 0B>PO3
EBN
HP8rcas# R#F8isit in A cc8nt
A ssi4n%#nt
Purc7asin @eq0 BA>3
(tem 0B>PO3
PreAccount Assinment 0Y<BR3
STJLHSTJDSA Pscrit t#@t $i) # )i n#s
0@<L(:3
+ e)ts 0+ :OBX<8+ 3
+ e)t ame0+ :AC<3
+ e)t (d0+ :(:3
Lanuae0 + :SP@AS3
0S@+ >23
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 52/66
P8rcas# Or*#rs
SAP MM ; P8rcasin4
S!11
HP>RC" P8rc. G r8Stat ist ics
Statistics 0SSO=@3
Eersion0 E@S(O3
Cont7 0SPCO3:a-0 SP+AG3
FeeK 0SPFO83
PostinPeriod 0SPB=P3
Purc7asinOr 0<RO@G3
Purc7asinG roup0<RG@P3
Eendor o 0L( >@3
S!1,
HP>RCIS" P8rcasin4Stat i sti cs
Statistics 0SSO=@3
Eersion0 E@S(O3
Cont70 SPCO3:a- 0SP+AG3
FeeK0 SPFO83
PostinPeriod 0SPB=P3
Purc7asinOr 0<RO@G3
Purc7asinG roup0<RG@P3
Caterialo 0CA+@3
Plant 0 F<@RS3
(n#o @ecord8ateor- 0<SORY3
CaterialGr oup0CA+RL3
(n#o @ecord 0( >@38ountr- 0LA:13
EET
HD#)i #r+ Sc#*8) #s
Purc7asin :oc 0<B<L3
(tem 0<B<LP3
:eliver- Sc7edule 0<+<@3EPO
HP8rcasin4 Dc8%#nt I t#%
Purc7asin :oc0 <B<L3
(tem 0<B<LP3
EN
HAcc8nt Assi4n%#nt i n P8rcasin4
Dc8%#nt
Purc7asin :oc 0<B<L3
(tem 0<B<LP3
Account Assinment 0Y<RR3
EO
HP8rcasi n4 Dc8%#nt #a*#r
Purc7asin :oc0 <B<L3
EORD
HP8rcasin4S8rc#Li st
Caterialo 0CA+@3
Plant 0 F<@RS3
Source List o0 Y<O@:3
EINA
HP8rc In$ R#cr*" G#n#ra) Data
(n# o @ecord 0( >@3
EINE
HP8rcasin4I n$ R#cr*" P8rcasin4
Or4aniatinData
(n# o @ecord 0( >@3
Purc7asinOr 0<RO@G3
(n#o @ecord+-pe0<SORY3
Plant 0F<RS3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 53/66
G*s R#c# it
MP
H#a*#r" Mat#ria) Dc8%#nt
:ocument o 0CBL@3
>iscalDear 0 CXA@3
SAP MM ; P8rcasin4
MSEG
HDc8%#nt S#4%#nt" Mat#ri a)
:ocument o 0CBL@3
>iscalDear 0C XA@3
Line (t em 0Y<(L<3
EBE
Hist r+ $ P8rcasin4 Dc8%#nt
Purc7asin :oc 0<B<L3
(tem 0<B<LP3
Account Assin 0Y<RR3
+rans +-pe0 EGAB<3
>iscalDear 0 CXA@3:ocument o 0CBL@3
Line (t em 0Y<(L<3
MVER
HMat#ri a) cns8%ti n
Ca t e r ialO 0C A+@3
Plant 0F<@RS3
>iscalDear 0 GXA@3
Period 0P<@RY3
>olloQ5on @ecords 0YAL@3
S!11
HP>RCIS" P8rcasin4 Gr 8
Statistics
Stat ist ics 0SSO=@3
Eersion 0E@S(O 3
Cont7 0SPCO3
:a- 0SP+AG3
FeeK 0SPFO83
Postin Period 0 SPB=P3
Purc7asin O r 0 < RO@ G3Purc7asin Group 0<RG@P3
Eendor o0 L(>@3
S!31HStati stics" M#%#nts $r c8rr#nt
stc(s
Stat ist ics 0SSO =@3
Eersion 0E@S(O3
Cont7 0SPCO3
:a- 0SP+AG3
FeeK 0SPFO83Postin Period 0 SPB=P3
Plant 0 F<@RS3
Ca t e r ialo 0C A+@3
Storae Loc 0LGO @+3
S!13
HP>RCIS" Stat ist ics $r V#n*r
Ea)8atin
Stat ist ics 0SSO=@3
Eersion 0E@S(O 3
Cont7 0SPCO3
:a- 0SP+AG3
FeeK 0SPFO83Postin Period 0 SPB=P3
Purc7asin O r 0 < RO@ G3
Purc7asin Group 0<RG@P3
Eendor o0 L(>@3Ca t e r ialo 0C A+@3
Plant 0F<@RS3(n# o @ecord 8at 0<SORY3
(n# o @ecord 0( >@3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 54/66
A c c 8 n t i n 4 D a taBasi c DataP 8rcasi n4 Data
SAP MM ; Mast#r Data
MA RCHMat#ri a) Mast#r" CS#4%#nt
Caterialo0 CA+ @3
Plant 0F <@RS3
MLA N
HTa@C)assi$i catin" Mat#ria)
Caterialo0 CA+ @38ountr - 0ALA:3
MA T
HMat#ri a) D#scriti ns
Caterialo0 CA+ @3Lanuae 0SP@AS3
MA RA
HMat#ria) Mast#r" G#n#ra) Data
Caterialo0 CA+ @3
MA RMH>nit s $ M#as8r#
Caterialo0 CA+ @3=OC0C<(3
MBE'HMat#ri a) Va)8atin
Caterialo0 CA+ @3EaluationArea 0BF R<D 3Ealuatio n + - pe 0 B F + A@3
SAP MM P i
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 55/66
P8rcasin4 In$ R#cr*
ONP
HCn*iti ns HIt #%
8ondition o0 R=C3
Seqo0 ROPOS3
ON
HCn*iti ns H#a*#r
8ondition o0R=C3
EINA
HP8rcasin4I n$ R#cr*" G#n#ra)
Data
(n#o @ecord 0( >@3
EINE
HP8rcasin4 In$ R#cr*" P8rcasin4
Or 4aniati nData
(n#o @ecord 0(>@3
Purc7asinO r 0<RO@G3
(n#o @ecord +-pe0<SORY3
Plant 0F<@RS3
A!16
HMat#ria) In$ R#cr* HP)ant;S#ci$i c
Application 0RAPPL3
8ondition +-pe 0RS8L3
Eendor 0 L(>@3
Cater ialo 0C A+@3
Purc7asinO r 0<RO@G3
Plant 0F<@RS3
(n#o @ecord 8ateor- 0<SORY3Ealidit- 0:A+B(3
SAP MM ; P8rcasin4
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 56/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 57/66
PP+ a ! l e C a p pi n
PRO
0Pro&ect :e#inition3
PRPS0F BS<lements3
P@PS5PSP( W
P@OX 5PSP@
P RT E0Sc7edule:ata#or
Pro&. (tem3
P@PS5PSP@W
P@+<5PO S@
and
P@PS5PSP(W
P@+<5PSP(
P RT J
0+ e)ts0FBS33P@+5P@PSP@ W
P@+<5PO S@
PRIS
0Pro&. ierarc7-# or FBS<lement3
P@PS5PSP@W
P@(S5 POS@
and
P@PS5PSP(W
P@(S5PSP(P ST J
0Pro&ect + e)ts
0eader33
P ST T0Pro&ect + e)ts3
P@+5P@++RDW
PS+5P@++RD
PS+5P@++RDW
PS++5P@++RD
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 58/66
P@OX<8+ S
Pro&e c t a n d FBS e le me n t n u m! e rs 7 a ve a d o ma in Q i t7 a c o n ve rs io n
#u n ct io n mo d u le Q 7 ic7 c o n ve r t s i t # ro mI n u mc in p u t t o 2 4 c7 a r o n o u tp u t .
PRO
HPr9#ct *#$initin
Pro&ect um!er 0 PSP@3
Pro&ect ame 0PSP(:3
PRPS
H'BSH'r( Br#a(*0n Str8ct8r#
E)#%#nt Mast#r Data
Pro&ect um!er 0 PSP( 3
FBS<lement um!er 0 PSP@3
FBSame0 POS(:3
PRI S
HStan*ar* 'BS E*4#sH i#rarc+
int#rs
Pro&ect um!er 0 PSP( 3
FBS<lement um!er 0POS@3
PRTE
HSc#*8)in4 Data $r Pr9#ct It#%
Pro&ect um!er 0 PSP( 3
FBS<lement um!er 0POS@3
PRTJ
HPST#@ts H'BS
FBS<lement um!er 0P@PSP@3
+e)t (denti#ier 0 P@++RD3
PSTJ
HPST#@ts H#a*#r
+e)t (denti#ier 0 P@++RD3
PSte)t description 0PS+++(3
PSTT
HPSt#@tsH *#scritin
+e)t (denti#ier 0 P@++RD3
PSte)t* :escription0P+R+<+3
SAP PP ; Pr9#ct P)annin4
SAP ; Sa)#s an* Distri-8tin
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 59/66
Salesand:ist r i!ution
>inacialAccountin
Billin
Accounts @eceiva!le
Sales
Cater ialCaster
S7ippin
Cater ials Cmt.
T a - ) # s " ROE L ( R P L ( P S EBAR EBAP EBB< EB< EB<P EB>A E B LB
E B LR EBPA EB@R EB@P EB=R EB=P E<RP E<PO E<PEG
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 60/66
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 61/66
VBAHSa)#s Dc8%#nt "#a*#r
Sales doc 0EB<L3
VBAP
HSa)#s Dc8%#nt " It #% In$
Sales doc 0EB<L3
(tem 0POS@3
VB>P
HIt#% Stat8s
Sales doc 0EB<L3
(tem 0POS@3
VBEP
HSa)#s Dc8%#nt " Sc#*8)# Lin#s
Sales doc 0EB<L3
(tem 0POS@3Sc7edle Line 0 <+<@3
VBPA
HSa)#s Dc8%#nt "Partn#r
VBDHSa)#s Dc8%#nt " B8sin#ssData
Sales doc 0EB<L3
(tem 0POS@3
Partner >unction 0PA@EF3
Sales doc 0EB<L3
(tem 0POS@3
VBE
HSc#*8)# Lin#istr+
Sales doc 0EB<L3
(tem 0POS@3
Sc7edle Line 0 <+<@3
SAP SD; Sa)#s Ta-)#s
VB>
H#a*#r Stat8s
Sales doc 0EB<L3
VDS
HSDIn*#@"Bi))i n4Initi atr
Billin 8at 0>R+DP3
Sale s O r 0 E RO@ G3
Billin :ate 0>R:A+3
8ustom er 0 R=@3
Billin +-pe 0>RA@+3
8ountr- 0LLA:3
Sales doc 0EB<L3
VAPMA
HSDIn*#@"Or*#r It #%s-+ Mat#r ia )
Ca t e r ial o 0CA+@3
Sale s O r 0 E RO@ G3
+rans Group0+@EOG 3
:ocument :ate 0A=:A+3
:is t r i!ution 87annel0E+F<G3:ivision 0SPA@+3
:ocument +-pe 0A=A@+3
Sold5to5 Part- 0R=@3
Sale s O # # ice 0ERB=@3
Sales G roup0 ERG@P3
8ustom er PO o0 BS+R3
=ser ame 0<@AC3
Sales Ord 0EB<L3
(tem 0POS@3
VAPA
HSD In*#@"O r*#r -+ Partn#r 8ncti n
Part ner o 0 R=:<3
Partner >unction 0PA@EF3
Sales Or 0ERO@G3
+rans Group0+@EOG 3
:ocument :ate 0A=:A+3
Sale s O # # ice 0ERB=@3
Sales Gr oup 0ERG@P3
:is t r i!ution 87annel0E+F<G3
:ivision 0SPA@+3
:ocument +-pe 0A=A@+3
8ustomer PO o 0BS+R3
Sold5t o5Part- 0R=@3=ser ame 0<@AC3
Sales Ord 0EB<L3
STJ
HSTJDSAPscrit t #@t $ i) # #a*#r
+e)ts 0+:OBX<8+3
+e)t ame 0+:AC<3
+e)t ( d 0+:(:3
Lanuae 0+:SP@AS3
STJL
HSTJDSAPscrit t#@t $i )# )i n#s
0@<L(:3+e)ts 0 +:OBX<8+3
+e)t ame 0+:AC<3
+e)t (d 0+:(:3Lanuae 0+:SP@AS3
0S@+>23
+oS7ippin t7rou7 LIPS
L(PS5EG B<LW EBAP5EB<L
and
L(PS5EGPOS W EBAP5POS@
VBAHSa)#sDc8%#nt )0
Precedin Sales :oc 0EB<LE3Precedin (tem 0POSE3
Su!sequent Sales doc 0EB<L3Su!sequent (tem 0POS3
:ocument 8at 0 EB+DP?3
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 62/66
L(PS5EB<L W
L(RP5EB<L
E<PO 5 EB<LW
L( PS5EB<L
and
E<PO5 POS@ W
L(PS5PO S@
E<PO5 E<=C W
E<RP5E<=C
EBLR5EB<LW
L(RP5EB<L
SAP SD ; Siin4 T a-)#s
VBL
HSD"D#)i#r+ Nt# #a*#r
:eliver- :ocument um !er 0EB<L3
LIP
HSa)#s Dc"D#)i#r+ #a*#r
:eliver- :ocument um !er 0EB<L3
LIPS
HSa)#s Dc"D#)i#r+ I t#%s
:eliver- :ocument um!er 0EB<L3
(t em 0POS@3
VEP
HSD Dc"Siin4 >nit #a*#r
S7ippin =nit um!er0 E<=C3
VEPO
HSDDc"Siin4I t#% cnt#nt
:eliver- :ocument um !er 0EB<L3
:eliver- (t em 0PO S@3
S7ippin =nit um!er 0E<=C3
S7ippin =nit (tem 0E<POS3
VB>
H#a*#r Stat8s
:eliver- doc 0EB<L3
>rom Sales t7rou7 VBAP
L(PS5EGB<L W EBAP5EB<L
and
L(PS5EGPOS W EBAP5POS@
+o Bilin t7rou7 VBRP
EB@P5EGB<L W L(PS5EB<L
and
EB@P5EGPO S W L(PS5POS@
VB>P
HIt#% Stat8s
:eliver-doc 0EB<L3
(tem 0POS@3
E++R5+R=C W
E++P5 +R=C
E++P5EB<LW
L( RP5EB<L
VTTP
HSi%#nt It#%
:eliver- :oc um!er0EB<L3
S7ipment um!er 0+R=C3
S7ipment (tem 0+P=C3
VTT
HSi%#nt #a*#r
S7ipment um!er 0+R=C3
VTA
HSi%#nt Dc. )0
S7ipment um!er 0+R=C3
Preceedin :oc. 0EB<LE3
VBA
HSa)#s Dc8%#nt )0
Precedin Sales :oc 0EB<LE3
Precedin (tem 0POSE3
Su!sequent Sales doc 0 EB<L3
Su!sequent (tem 0POS3
:ocument 8at 0 EB+DP?3
S S
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 63/66
VRPA
HSa)#sI n*#@" Bi)) s -+ Partn#r
8ncti ns
Part ner o 0R=:<3
Partner >unction 0PA@EF3
Sales Or 0ERO@G3Billin :ate 0>R:A+3
:is t r i!ution 87annel0E+F<G3
Billin +-pe 0>RA@+3
Pa-er 0R=@3
Sold5to5Part- 0R=@3
S::oc 8at 0EB+DP3
=ser ame 0<@AC3
Billin :oc 0EB<L3
VRPMA
HSDIn*#@" Bi)) in4I t#%s#r Mat#r ia )
Cater ialo 0CA+@3
Sales Or 0ERO@G3
Billin :ate 0>R:A+3
:is t r i!ution 87annel0E+F<G3
Billin +-pe0 >RA@+3
Pa-er 0 R=@3
Sold5to5Part- 0R=@3
S::oc 8at 0EB+DP3
=ser ame 0<@AC3
Billin :oc 0EB<L3
(tem 0POS@3
VDS
HSDIn*#@" Bi)) in4I nitiatr
Billin 8at 0>R+DP3
Sales Or 0ERO@G3
Billin :ate 0>R:A+3
8ustom er 0R=@3Billin +-pe0 >RA@+3
8ountr- 0LLA:3
Sales doc 0EB<L3
VBR
HBi))in4" #a*#r Data
Billin doc 0EB<L3
VB>
H#a*#r Stat8s
Sales doc 0EB<L3
VBRP
HBi))in4" It#% Data
Billin doc 0EB<L3
(tem 0POS@3
VBS
HC)) #cti# Prc#ssin4$ r aSa)#s
Dc8%#nt #a*#r
Gr ouped :eliver- 0SACCG 3
NAST
HBi))in4" #a*#r Data
Applicat ion 0RAPPL3
O !&ect 0OBXRD3
O utput +-pe 0RS8L3
Lanuae 0SP@AS3
Cess Part ner 0 PA@@3
Partner >unc 0PA@EF3
:ate 0<@:A+3
+ime 0<@=@3
VB>P
HSa)#sDc8%#nt" It #% Stat8s
Sales doc 0EB<L3
(tem 0POS@3
VBA
HSa)#s Dc8%#nt )0
Precedin Sales :oc 0EB<LE3
Precedin (tem 0POSE3
Su!sequent Sales doc 0EB<L3
Su!sequent (t em 0POS3
:ocument 8at 0 EB+DP?3
Gr ouped:eliver- 0SACCG3
Sales doc 0EB<L3
VBSS
HC)) #cti# Prc#ssin4" Sa)#s
Dc8%#nts
SAP SD; Bi))in4 Ta-)#s
>rom S7ippint 7rou7 LIPS
EB@P5EGB<L W L(PS5EB<L
and
EB@P5EGPOS W L(PS5POS@
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 64/66
4+stomer) asterData
C % . a n + C * # D a taG#n#ra) DataSa ) # s A r # a Da t a
SAP SD ; Lin(s tOI Ta-)#s
8ustomer o0 R=@3
SalesOr 0ERO@G3
:istri!ution87 0E+F<G3
:ivision 0SPA@+3
Partner >unction 0PA@EF3
Part ner 8ounter 0 PA@YA3
8ustomer o0 R=@3
8ustomer o0 R=@3
SalesOr 0ERO@G3
:istri!ution87 0E+F<G3
:ivision 0SPA@+3
ENVP
HC8st%#r Mast#r Partn#r O8nctins
ENA1
HG#n#ra) Data in C8st%#r Mast#r
ENVVHC8st%#r Mast#r Sa)#sData
ENVD
HC8st%#r %ast#r r#cr* sa)#sr#F8#st $r%
8ustomer o0 R=@3
SalesOr 0ERO@G3
:istri!ution87 0E+F<G3
:ivision 0SPA@+3
Output +-pe0
ENB1
HC8st%#r %ast#r H c%.an+c*#
ENBHC8st%#r %ast#r H*8nnin4 *ata
8ustomer o0 R=@3
8ompanu8ode 0B=R@S3
:unninArea 0CAB<@3
8ustomer o0 R=@3
8ompan- 8ode0 B=R@S3
SAP SD Li ( t MM T -)
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 65/66
)aterial )aster Data
S a ) # s T # @ t D a taBasi c DataS a) #s Data
MARC
HMat#ria) Mast#r" C S#4%#nt
Caterialo 0C A+@3
Plant 0 F<@RS3
Caterialo 0C A+@3
SalesOr 0ERO@G3
:is tri!ution87an 0E+F<G3
Product ierarc7- 0P@O:3
Caterialo 0C A+@3
8ountr - 0ALA:3
MVE
HMat#ria) Mast#r" Sa)#sData
MLAN
HTa@C)assi$i catin" Mat#ria)
Caterialo 0C A+@3
Lanuae 0SP@AS3
MAT
HMat#ria) D#scritins
Caterialo 0C A+@3
MARA
HMat#ria) Mast#r" G#n#ra) Data
Caterialo 0C A+@3
=OC 0C<(3
MARM
H>nits $ M#as8r#
+e)ts 0+:OBX<8+3
+e)t ame0 +:AC<3+e)t ( d 0+:(:3
Lanuae 0+:SP@AS3
0@<L(:3
+e)ts 0+:OBX<8+3
+e)t ame0 +:AC<3
+e)t ( d 0+:(:3
Lanuae 0+:SP@AS3
0S@+>23
STJ
HSTJDSAPscrit t #@t $i )# #a*#r
STJL
HSTJDSAPscrit t#@t $i )# )i n#s
SAP SD ; Lin(s t MM Ta-)#s
Product ierarc7- 0P@O:3
uset oet e)t #or 7 iearc7-levels
T167
HMat #ria) s" Pr*8ct i#rarci#s
8/18/2019 Optimisation Des Programmes ABAP 2
http://slidepdf.com/reader/full/optimisation-des-programmes-abap-2 66/66
S DPaul<vans 0F 7ittman5art' inc.3
Rris7na Prasad0 F 7ittman5art' inc.3@uss Smit70Benteler3
Cic7ael@7odes 0CedPart ners' inc.3
I/COCic7ael@7odes 0CedPartners' inc.3
MMXim LeQ is 0F7itt man5art' inc.3
Cic7ael@7odes 0 CedPart ners' inc.3
Mast#r DataXim LeQ is 0F7itt man5art' inc.3
8ontri!utions!-
P P
R