IDENTIFICATION DIVISION.
PROGRAM-ID. EXO-MOVE-03.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-LIBELLE PIC X(25) VALUE SPACES.
01 WS-AGE PIC 99 VALUE 00.
PROCEDURE DIVISION.
MOVE "Test MOVE OK" TO WS-LIBELLE
MOVE 27 TO WS-AGE
DISPLAY "Libellé : " WS-LIBELLE
DISPLAY "Age : " WS-AGE
STOP RUN.
Ce que fait le programme
1) Il copie le texte “Test MOVE OK” dans la variable WS-LIBELLE .
2) Il copie le nombre 27 dans WS-AGE .
3) Il affiche les deux valeurs pour vérifier que la copie a bien eu lieu.
MOVE copie une valeur vers une variable.
Si la variable est plus longue (ex : PIC X(25)), le texte peut être complété par des espaces.
Si la variable est numérique, le format doit être cohérent (ex : PIC 99 pour une valeur de 0 à 99).
Votre micro-exercice
Faites ces 3 modifications :
- Remplacez “Test MOVE OK” par un libellé plus long (au moins 18 caractères).
- Changez la valeur de
WS-AGEet testez plusieurs âges (ex : 05, 42, 99). - Ajoutez un second libellé
WS-STATUT(PIC X(10)) et copiez-y “ACTIF”.
Erreur fréquente à éviter
Copier un texte trop long dans une zone trop courte.
Exemple : une variable PIC X(10) et vous copiez un texte de 20 caractères.
Selon les environnements, le texte sera tronqué, ce qui peut surprendre au début.
Autre piège : copier un nombre “hors format”.
Avec PIC 99 , vous êtes sur deux chiffres (0 à 99).
Si vous tentez 120, vous créez une incohérence (et potentiellement un résultat incorrect).
MOVE , faites un DISPLAY au moins une fois.
C’est le moyen le plus rapide de vérifier une copie.