Bonjour,
Je récupère une date dans ma base de données DB2.
Je veux ensuite manipuler les chiffres à l'intérieur de cette date (le jour, le mois, l'année) pour faire des soustractions et multiplications.
Bref, j'ai déclaré une variable comme suit, mais ça ne compile pas lors d'un calcul (ex. SUBTRACT 1 FROM WS-TEMP-DD)
J'ai essayé avec des PIC 9 pour chacun, mais ça ne compile pas au niveau du Select pour récupérer la date dans la BD.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 01 WS-DAT-TEMP. 05 WS-TEMP-MM PIC X(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-DD PIC X(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-YR PIC X(04).
J'ai également essayé de reféfinir ma structure. Mais, soit je ne l'ai pas fait de la bonne manière, soit ce n'est pas permis.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 01 WS-DAT-TEMP. 05 WS-TEMP-MM PIC 9(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-DD PIC 9(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-YR PIC 9(04).
Finalement, en essayant de redéfinir à l'intérieur de la structure date, ça ne compile pas non plus au niveau du Select.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 01 WS-DAT-TEMP-NUM REDEFINES WS-DAT-TEMP. 05 WS-TEMP-MM-NUM PIC 9(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-DD-NUM PIC 9(02). 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-YR-NUM PIC 9(02).
Avez-vous une idée comment je peux faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 01 WS-DAT-TEMP. 05 WS-TEMP-MM PIC X(02). 05 WS-TEMP-MM-NUM PIC 9(02) REDEFINES WS-TEMP-MM. 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-DD PIC X(02). 05 WS-TEMP-DD-NUM PIC 9(02) REDEFINES WS-TEMP-DD. 05 FILLER PIC X(01) VALUE '/'. 05 WS-TEMP-YR PIC X(04). 05 WS-TEMP-YR-NUM PIC 9(04) REDEFINES WS-TEMP-YR.
Merci et bonne journée
Partager