Sie sind auf Seite 1von 28

ABAP Overview

Abap Workbench
Architecture systme R/3
Excution dun programme (report et programme interactif)
Logique dexcution dun cran
Abap dictionnary
Dclarations de donnes
Expressions Abap
Variables systme
Accs la base de donnes

ABAP Overview
Abap Workbench

ABAP langage de programmation conu par SAP pour le


dveloppement dapplications dans SAP
Outils de lAbap Workbench

Lditeur ABAP (SE38)


Le dictionnaire ABAP (SE11)
Le Menu Painter (SE41)
Le Screen Painter (SE51)
Le Function Builder (SE37)
Le Class Builder (SE24)

Object
Navigator
SE80

ABAP Overview
Abap Workbench

Le systme dinformation du Repository


(SE84) permet de retrouver des objets du
workbench

ABAP Overview
Architecture Systme
R/3

Presentati
on
Server
Layer
Applicatio
n
Server
Layer

Databas
e

Poste bureautique

Work Process
ABAP Program

D (Dialog), PC <--> Serveur


V (Validate) SGBDR <--> serv.
App.

E (Enqueue) Gestion des blocages


B (Batch) Traitements en lots
M (Message)
G (Gate) Passerelle
S (Spool) Gestion des imprimantes
Accs donnes
Update donnes

ABAP Overview
Excution dun
report

ABAP Program
Program start

Repository

Selection
Screen
Data
Objects
ABAP
Processing
Block

Database
table

ABAP Runtime System

Time

ABAP Overview
Excution dun programme
interactif

ABAP Program

Repository

Program Start

Database
Table

Screen

PBO

ABAP
Processing
Block

PAI

ABAP Runtime System


Time

ABAP Overview
Logique dexcution des crans dun programme
interactif

Gui
status
Screen
2

Screen
1
PBO1

Autorisation
s
Blocages
Titres

SCREEN1

Function Code

PAI1

PBO2

SCREEN2

Contrles saisie
Passage cran suivant
Modification cran actuel
Sortie

ABAP Overview
ABAP DICTIONNARY

LABAP Dictionary (SE11) dfinit et gre toutes les


dfinitions de donnes du systme
Tables transparentes
lment de donnes
Domaines
Vues
Structures
Aides la recherche
Objets de blocage

ABAP Overview
ABAP DICTIONNARY Elments de donnes et domaines

Table
Fiel
d

uses

Data
element
uses

Domain
Technical field
attributes

ABAP Overview
ABAP DICTIONNARY Vue de BD

10

ABAP Overview
ABAP DICTIONNARY Vue de projection

11

ABAP Overview
ABAP DICTIONNARY Vue daide

12

ABAP Overview
ABAP DICTIONNARY Vue de maintenance

13

ABAP Overview
ABAP DICTIONNARY Structures

Structure
AEBAN
MANDT
Client
BANFN

Purchase requisition number

BSART

Purchase requisition document type

BSAKZ

Control indicator for purchasing document type

MMSTA

Plant-Specific Material Status

ESTKZ

Creation indicator (purch. Requ./schedule lines)

BSTYP

Purchasing document category

WAERS

Currency Key

14

ABAP Overview
ABAP DICTIONNARY Aide la recherche

Fonctionnalit standard de SAP qui permet dafficher une liste


de valeurs possibles pour une zone dcran.
Laide la recherche lmentaire dfinit:
- la mthode de recherche des informations
- les informations afficher pour la slection des
valeurs
- la zone retourner lcran
- le type de dialogue (affichage de la liste complte
ou
restriction de la slection)
Laide la recherche collective combine
plusieurs aides la recherche
lmentaires et propose ainsi plusieurs
alternatives de recherche

15

ABAP Overview
ABAP DICTIONNARY jointures

Jointure interne:

Jointure externe

SELECT ...
...
FROM <tab> [INNER] JOIN <dbtab> ON <cond>

SELECT ...
...
FROM <tab> LEFT [OUTER] JOIN <dbtab> ON <cond>

16

ABAP Overview
Dclaration de donnes

Dclaration en rfrence un type de


donnes
DATA: <varname> TYPE <local-definedtype>.

Type dfini localement


TYPES: <user_defined_type> TYPE
<type>

DATA: <varname> TYPE <ABAP-dictionary-type>.


Type dfini dans la SE11
Dclaration en rfrence un lment de
donnes
DATA:
<varname> LIKE <data-object>.

17

ABAP Overview
Dclaration de donnes

TYPES PREDEFINIS
-

C
N
D
T
I
P
F
STRING

Character
Numeric Text
Date (YYYYMMDD)
Time (HHMMSS)
Integer
Packed Number
Floating Point Number
Character String

18

ABAP Overview
Dclaration de donnes
STRUCTURE
combinaison de plusieurs champs lis un mme objet de
donnes
Customer

Material

Customer number

Material type

Name

Order unit

City

Net weight

Dclaration en rfrence une structure du dictionnaire de


donnes
DATA: ds_kna1 TYPE kna1.
Dclaration dune structure spcifique au programme
DATA : BEGIN OF ds_test,
kunnr TYPE kunnr,
name1 TYPE name1_gp,
bukrs TYPE bukrs,
END OF ds_test.

19

ABAP Overview
Dclaration de donnes
TABLE INTERNE

Sauvegarde dans la mmoire ABAP les donnes dune structure.


Les enregistrements sont sauvegards ligne par ligne, chaque
ligne ayant la mme structure .
STANDARD TABLE

SORTED TABLE

Accs via Index et via Cl

HASHED TABLE
Accs via Cl

20

ABAP Overview
Dclaration de donnes
TABLE INTERNE (suite)
Dclaration en rfrence une structure du dictionnaire de
donnes
DATA t_kna1 TYPE kna1 OCCURS 0.

Dclaration en rfrence une structure dclare dans le


programme
DATA : BEGIN OF ds_test,
kunnr TYPE kunnr,
name1 TYPE name1_gp,
bukrs TYPE bukrs,
END OF ds_test.

data: t1_test like ds_test occurs 0 with header


line.
data: begin of t2_test occurs 0.
include structure ds_test.
data: end of t2_test.

2 faons de dclarer la
mme table standard

21

ABAP Overview
Expressions Abap

Initialisation et transfert
VALUE permet de prciser une valeur par dfaut
DECIMALS nombre de chiffres aprs la virgule
CLEAR initialise une variable
Conditions
CASE ENDCASE teste le contenu de la variable
IFELSEIFENDIF teste une expression logique
Instructions
MOVE copie le contenu dune variable vers une autre variable
MOVE-CORRESPONDING copie le contenu des zones de la
structure A vers les zones de la structure B ayant le mme nom

22

ABAP Overview
Expressions Abap

Instructions pour traitement de table interne


READ

lecture dun enregistrement (ligne) de la table

APPEND ajoute un enregistrement en fin de table


INSERT insertion dun enregistrement dans une table
sorted (idem append)
MODIFY remplace le contenu dune ligne
DELETE suppression dun enregistrement
LOOPENDLOOP permet de parcourir tous les enregistrements
de la table

23

ABAP Overview
Variables systme (table SYST)

Variables actives automatiquement dans tous les programmes


Abap
Elle permettent didentifier le rsultat de certaines oprations du
programme
SUBRC

Return code following an ABAP statement

BATCH

Is program running in the background?

MANDT

Current client

DATUM

Current application server date

DBCNT

Number of database rows processed

INDEX

Current loop pass

TABIX

Current line index

DYNNR

Number of the current screen

TCODE

Current transaction code

24

ABAP Overview
Accs la base de donnes

Which columns? SELECT <result>

FROM
<table>

Where?

INTO
<destination>
WHERE
<condition>

Which
table(s)?

Which
lines?

Single
line
Multiple
lines

Particular
column

25

ABAP Overview
Accs la base de donnes: lecture

SELECT SINGLE: slection dun enregistrement


unique
(SELECT ENDSELECT: lecture multiple
squentielle)
SELECT INTO TABLE: slection par bloc
SELECT INTO
INTO CORRESPONDING FIELDS
Le code retour (sy-subrc) prend la valeur 0 si au moins un
enregistrement est slectionn

26

ABAP Overview
Accs la base de donnes: criture

Linstruction INSERT permet dajouter un/des nouveau(x)


enregistrement(s) dans une table de base de donnes

INSERT INTO dbtab VALUES wa.


Insertion dune ligne dans la table de BD

INSERT dbtab FROM TABLE itab.


Insertion en masse (et en une seule opration) des lignes
de la table interne itab vers la table de BD

27

ABAP Overview
Accs la base de donnes: criture

UPDATE mise jour de valeurs dans une table


de BD
MODIFY mise jour / insertion de valeurs dans
une table de BD
DELETE suppression de lignes dans une table de
BD

28