Archives par mot-clé : CORRESPONDING

Exemple – MOVE COORESPONDING

Programme utilisant MOVE COORESPONDING :

IDENTIFICATION DIVISION.
PROGRAM-ID. MOVECORR.
AUTHOR.     LA COMMUNAUTE DU COBOL.

DATA DIVISION.
FILE SECTION.

WORKING-STORAGE SECTION.

01          WS-DATE-HEURE.
    05      WS-DATE.
            10  WS-ANNEE            PIC X(004).
            10  WS-MOIS             PIC X(002).
            10  WS-JOUR             PIC X(002).
    05      WS-HEURE.
            10  WS-HEURES           PIC X(002).
            10  WS-MINUTES          PIC X(002).
            10  WS-SECONDES         PIC X(002).
    
01          WS-DATE-HEURE-FORMAT.
    05      WS-DATE-FORMAT.
            10  WS-JOUR         PIC X(002).
            10                  PIC X(001) VALUE "/".
            10  WS-MOIS         PIC X(002).
            10                  PIC X(001) VALUE "/".
            10  WS-ANNEE        PIC X(004).
    05      WS-HEURE-FORMAT.
            10  WS-HEURES        PIC X(002).
            10  FILLER          PIC X(001) VALUE ":".
            10  WS-MINUTES      PIC X(002).
            10  FILLER          PIC X(001) VALUE ":".
            10  WS-SECONDES     PIC X(002).

PROCEDURE DIVISION.

    MOVE FUNCTION CURRENT-DATE TO WS-DATE-HEURE
    DISPLAY "WS-DATE-HEURE - " WS-DATE-HEURE
	
    MOVE CORRESPONDING WS-DATE  TO WS-DATE-FORMAT 
    MOVE CORRESPONDING WS-HEURE TO WS-HEURE-FORMAT 
	
    DISPLAY "WS-DATE-FORMAT  : " WS-DATE-FORMAT
    DISPLAY "WS-HEURE-FORMAT : " WS-HEURE-FORMAT

    STOP RUN.

Resultat:
WS-DATE-HEURE - 20230301020008
WS-DATE-FORMAT  : 01/03/2023
WS-HEURE-FORMAT : 02:00:08

Exemple – MOVE

Programme utilisant le MOVE :

IDENTIFICATION DIVISION.
PROGRAM-ID.  MOVE.
AUTHOR.      LA COMMUNAUTE DU COBOL.

ENVIRONMENT DIVISION.                                            
CONFIGURATION SECTION.                                           
SPECIAL-NAMES.                                                   
    DECIMAL-POINT IS COMMA. 

DATA DIVISION.
WORKING-STORAGE SECTION.

01  WS-AUXILIARES.
    05  VALEUR-1          PIC 9(009)V99    VALUE ZEROES. 
    05  VALEUR-2          PIC 9(009)V99    VALUE ZEROES. 
    05  VALEUR-3          PIC 9(009)V99    VALUE ZEROES. 
    05  VALEUR-4          PIC 9(009)       VALUE ZEROES. 
    05  VALEUR-5          PIC 9(009)       VALUE ZEROES. 

    05  ITEM-1.
        10  WS-NOME-1     PIC X(003)       VALUE 'LA'.
        10  WS-NOME-2     PIC X(011)       VALUE 'COMMUNAUTE'.
        10  WS-NOME-3     PIC X(003)       VALUE 'DU'.
        10  WS-NOME-4     PIC X(006)       VALUE 'COBOL'.

    05  ITEM-2.
        10  WS-NOME-2       PIC X(011).
        10  WS-NOME-1       PIC X(003).
        10  WS-NOME-3       PIC X(003).
        10  WS-NOME-4       PIC X(006).

    05  ITEM-3.
        10  WS-NOME-3       PIC X(003).
        10  WS-NOME-1       PIC X(003).
        10  WS-NOME-2       PIC X(011).
        10  WS-NOME-4       PIC X(006).

    05  ITEM-4.
        10  WS-NOME-4       PIC X(006).
        10  WS-NOME-1       PIC X(003).
        10  WS-NOME-2       PIC X(011).
        10  WS-NOME-3       PIC X(003).

PROCEDURE DIVISION.

001-INIT.

Exemple MOVE

    MOVE 5892,12 TO VALEUR-1
    MOVE 1234,56 TO VALEUR-2
    MOVE   88,12 TO VALEUR-3
    MOVE    5892 TO VALEUR-4
    MOVE VALOR-4 TO VALEUR-5

    DISPLAY "VALEUR-1 : " VALEUR-1 
    DISPLAY "VALEUR-2 : " VALEUR-2 
    DISPLAY "VALEUR-3 : " VALEUR-3 
    DISPLAY "VALEUR-4 : " VALEUR-4 
    DISPLAY "VALEUR-5 : " VALEUR-5 

* Resultat de test:

* VALEUR-1 : 000005892,12
* VALEUR-2 : 000001234,56
* VALEUR-3 : 000000088,12
* VALEUR-4 : 000005892
* VALEUR-5 : 000005892

Exemple MOVE CORRESPONDING

    MOVE CORR          ITEM-1 TO ITEM-2.
    MOVE CORR          ITEM-1 TO ITEM-3.
    MOVE CORRESPONDING ITEM-1 TO ITEM-4.

    DISPLAY "ITEM-1  : " ITEM-1 
    DISPLAY "ITEM-2  : " ITEM-2 
    DISPLAY "ITEM-3  : " ITEM-3 
    DISPLAY "ITEM-4  : " ITEM-4 

* Resultat de test:

* ITEM-1  : LA COMMUNAUTE DU COBOL
* ITEM-2  : COMMUNAUTE LA DU COBOL 
* ITEM-3  : DU LA COMMUNAUTE COBOL 
* ITEM-4  : COBOL LA COMMUNAUTE DU