Premiers pas sur SAP
Détail d’un mandant SAP
Un mandant (ou client) est un identifiant propre à chaque système permettant de diviser les données d’une base de données entre ces mêmes systèmes.
Pour bien comprendre cette notion, il est nécessaire de continuer l’architecture de SAP. Il a été défini dans le chapitre précédent (cf. chapitre SAP - L’architecture SAP) que la composition SAP pouvait être schématisée en trois couches. Cependant, il existe une autre division entre la suite et les modules : les systèmes de connexion. Il s’agit d’une stratégie propre à l’entreprise pour intégrer dans son système les nouveaux développements et les nouvelles données. En règle générale, une suite SAP ECC (ou SAP ERP) peut être divisée en trois systèmes de connexion :
-
Un système de développement : pour toute la partie programmation et configuration des données de référence (master data) avec tests unitaires dont techniques pour s’assurer qu’il n’y ait pas de dump (cf. chapitre Qu’est-ce que la programmation ? - Les étapes de la programmation - Les tests unitaires). Ce système a en général peu de données.
-
Un système de qualité permettant à...
Connexion et fenêtre d’accueil
SAP se caractérise par une configuration client/serveur dont la connexion peut se faire de plusieurs façons : via Internet (SAP Netweaver Mobile, SAP Enterprise Portal...), ou via un logiciel tiers : le SAP Logon et plus récemment Eclipse.

Exemple avec une fenêtre SAP dans un navigateur Internet (type SAP Portal)

Exemple de connexion avec Eclipse
La connexion avec le SAP Logon étant utilisée dans la majorité des cas, la suite du livre utilisera uniquement celle-ci.
Lors de l’ouverture du SAP Logon, il est possible de voir la liste des systèmes de connexion installés, comme vu dans la section précédente.

Exemple d’un SAP Logon avec un accès aux systèmes de développement de BW, ECC, et PI, et aux systèmes de qualité et de production de ECC
La fenêtre se divise en trois parties :
-
Le volet de droite qui liste toutes les connexions SAP.
-
Le volet de gauche qui affiche l’arborescence des connexions (organisée en favoris, raccourcis, ou par défaut par connexions avec possibilité de créer des sous-répertoires...).
-
Et enfin tout en haut de la fenêtre, une barre d’outils dont les actions sont les suivantes :
-
Connexion : connexion au système sélectionné dans le volet de droite.
-
Connexion variable... création d’un nouveau système de connexion.
-
Les icônes Nouveau, Traiter et Supprimer les systèmes de connexion.
-
Trois nouvelles icônes pour modifier l’affichage : Vue Explorateur - vue par défaut utilisé dans l’exemple ci-dessus, Vue de liste pour tout lister sans organisation en répertoires et sous-répertoires, et Vue arborescente.
-
Vient ensuite l’option Afficher/Masquer zone de commentaire permettant de laisser des annotations pour un système.
-
Enfin une zone de recherche/filtre.
Les propriétés d’une connexion sur SAP sont assez simples.

Il y a tout d’abord le Type de connexion : Sélection des groupes/serveurs utilisés pour des systèmes un peu plus complexes comme celui de la production, ou Serveur d’application spécifique à l’utilisateur, le plus utilisé, dont les détails sont les suivants :
-
Une description de la connexion....
Premier programme ABAP
1. Les transactions
Comme il a été évoqué dans la section précédente, une transaction (code de transaction ou t-code) est un identifiant SAP pour exécuter divers traitements. Ils peuvent être de l’ordre d’une exécution de programme, de l’ouverture d’un éditeur, de la création d’une facture... Il existe des milliers de transactions et elles sont organisées par catégories correspondant aux modules (FI, SD, MM...) dont voici une toute petite liste des plus utilisées (uniquement les fonctionnelles) :
SPRO |
la transaction la plus connue des fonctionnels, car elle regroupe tout le paramétrage |
MM01 |
création de code produit |
XD01 |
création de client |
XK01 |
création de fournisseur |
VA01 |
création d’une commande client |
ME21N |
création d’une commande d’achat |
VL01N |
création d’une livraison |
VF01 |
création d’une facture |
MIRO |
facture fournisseur |
MIGO |
mouvement de stock |
SCC1 |
copie des données entre les mandants |
En règle générale, les transactions se terminant par ’01’ signifient création, ’02’ modification et ’03’ affichage. Ainsi, la VA01 va créer une commande client, VA02 va la modifier et VA03 l’afficher.
Concernant les transactions techniques, il en existe bien évidemment plusieurs et celles qui seront utilisées dans ce livre se situent dans la partie Menu SAP - Outils - ABAP Workbench - Développement.

Les plus utilisées seront les suivantes :
SE38 |
Éditeur ABAP (cf. la section suivante avec la programmation du ’Hello World’). Elle est utilisée pour tout développement de programme. |
SE11 |
Dictionnaire de Données ou DDIC (pour Data DICtionary) - cf. chapitre Dictionnaire de données (DDIC), utilisé pour tout ce qui est création et gestion des tables de base de données, structures... |
SE37 |
Éditeur de fonctions (cf. chapitre Les fonctions) pour la gestion et le développement des fonctions sous SAP. |
SE24 |
Éditeur de classes (cf. chapitre Les classes), création et maintenance des classes et méthodes. |
SMARTFORMS |
Éditeur de formulaires. |
SE41 |
Éditeur des menus (barre d’outils...). |
SE51 |
Éditeur d’écrans.... |
Exercice
Grâce au SAP Logon, connectez-vous au système de développement, puis exécutez l’éditeur ABAP.
Vous allez maintenant créer un programme avec les caractéristiques suivantes :
1. |
Nom du programme : ZENI_CHAP3 |
2. |
Libellé : Exercice chapitre 3 |
3. |
Type de programme : Exécutable |
4. |
Statut : Programme de test |
5. |
Blocage de l’éditeur : décoché |
6. |
Contrôles Unicode actifs : coché |
7. |
Arithmétique à virgule fixe : coché |
8. |
Lancer via variante : décoché |
9. |
Classe de développement : local (ou $TMP) - pas de création d’ordre |
Le programme affichera le texte suivant : ’Ceci est mon premier développement ABAP’. N’oubliez pas de le contrôler, l’activer, et de le tester.