Académique Documents
Professionnel Documents
Culture Documents
ABAP
Buts de la formation
A l'issue de la formation les participants sont en mesure :
De comprendre le principe de modularisation dans SAP
De lister les moyens de dcouper un programme SAP
De dfinir ce qu'est un 'Include'
Overview
Introduction
4-7
Local Modularization
8 - 10
Global Modularization
11 - 13
Include
14 - 18
Conclusion
19 - 21
Overview
Introduction
Local Modularization
Global Modularization
Include
Conclusion
Definition
Modularization Techniques
Data Encapsulation
Introduction
Definition
Modularisation
Crer des parties de programme rutilisables dans d'autres programmes/systmes
Principe d'encapsulation des donnes et des mthodes/fonctions
Avantages
Rutilisabilit
Meilleure lisibilit du code
Gestion facilit
Program
Updates, Corrections,
Module
Code
Module
Code
Code
Introduction
Modularization Techniques
Il existes 2 types de modularisation dans SAP
Modularisation locale
Modularisation globale
Introduction
Data Encapsulation
Encapsulation des donnes => Sparation des donnes
Les modules n'utilisent pas directement les donnes du programme
appelant
Le contraire est galement vrai !!
Les donnes des modules ne doivent pas tre modifies directement par le programme
appelant
Program
Module
Code
Data
Modification directe
Code
Data
Data
Data
7
Overview
Introduction
Local Modularization
Global Modularization
Include
Conclusion
SAP Techniques
Properties
Local Modularization
SAP Techniques
La modularisation locale comprend
Subroutine => Sous-routines / sous programmes
Local Class => POO
Program 1
* Declaration of global variable
Program 2
* Declaration of global variable
Subroutine
* Declaration of local variable
Class Local
* Declaration of local variable
Subroutine
* Declaration of local variable
Class Local
* Declaration of local variable
Local Modularization
Properties
Les sous-routines et les classes locales sont implmentes
directement dans le programme "appelant"
Elles sont disponibles pour tout le programme
Pour l'interprteur ABAP, elles font partie du programme "appelant"
Remarque
Elles peuvent avoir le mme nom dans plusieurs programmes !!
Les units locales permettent de modifier directement la valeur des donnes du
programme appelant
Techniquement il est possible d'utiliser des units locales dans plusieurs programmes [via des
'Includes'], mais cette technique va l'encontre du principe d'encapsulation des donnes !!
10
Overview
Introduction
Local Modularization
Global Modularization
Include
Conclusion
SAP Techniques
Properties
11
Global Modularization
SAP Techniques
La modularisation locale comprend
Module Function
Global Class
Program 1
Module Function
Program 2
* Declaration of global variable
Global Class
Appel classe
12
Global Modularization
Properties
Les modules de fonction et les classes globales sont implments
sparment du programme "appelant"
Ils sont stockes dans le Repository
Remarque
Leur nom doit tre unique dans tout le systme SAP !!
Peuvent contenir des sous-routines, classes locales,
13
Overview
Introduction
Local Modularization
Global Modularization
Include
Conclusion
Definition
Properties
Creation
14
Include
Definition
L'Include est une unit de modularisation particulire propre SAP
Il s'agit d'un programme qui :
Est conu pour tre utilis par d'autres programmes
Via l'instruction INCLUDE <name> .
Avantage
Permet de dcouper son programme en plusieurs petites parties
15
Include
Properties
Ils ont les fonctions suivantes :
Library
Permet d'utiliser le mme code source dans diffrents programmes
Par exemple, cela peut tre utile si vous avez de longues dclarations de donnes que vous
souhaitez utiliser dans diffrents programmes
Order
Permet de grer des programmes complexes d'une manire ordonne
Les groupes de fonctions et les module 'pool' (type de programme M) utilisent des programmes
'Include' pour stocker des parts de programme qui vont ensemble
Include spcial
Include TOP
Pour crire les dclarations globales des donnes d'un programme
Constantes, Compteur, .
16
Include
Creation
Transaction : SE80
Clic droit sur un 'Package'
Transaction : SE38
Type [ i ]
17
Include
Programme ABAP
* Inclure un programme Include dans un autre programme ABAP
INCLUDE ZI_INCLUDE_NAME .
* Include
***INCLUDE ZI_INCLUDE_NAME .
DATA CONSTANTS c_login TYPE string VALUE 'mod' .
WRITE :
/ 'Program started by', SY-UNAME,
/ 'on host', SY-HOST, 'date:', SY-DATUM, 'time:', SY-UZEIT .
ULINE .
18
Overview
Introduction
Local Modularization
Global Modularization
Best Practice
Include
Questions
Conclusion
Discussion
Contact
19
Conclusion
Best Practice
La modularisation en SAP est essentielle !!
Comment choisir entre des units de modules globales ou locales ?
Utiliser des units globales lors de dveloppement :
Avec des connecteurs SAP pour tre distribus vers d'autres systmes SAP ou non
Sur SAP Workflow
Avec une approche SOA et mtier
Astuce
Lors de la cration de sous-routine ou classe locale, il est trs intressant de crer
celle-ci dans un 'Include' !!
Meilleure visibilit
Attention ne pas les rutiliser dans d'autres programmes [ Encapsulation des donnes ]
20
21