Bonjour,
j'ai un package qui est lancé par la procédure suivante:
Donc ce package est normalement exécuté tous les jours après 21h et il récupère toutes les données enregistrées dans la journée pour créer un fichier par jour.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 PROCEDURE MAIN IS LA_DATE DATE; -- date du dernier lancement du package BEGIN -- Initialisation de LA_DATE LA_DATE:= LAST_EXECUTE('OPTISTORE'); LA_DATE:= LA_DATE+1; --Permet de gérer le cas où il y a plusieurs journées de ventes WHILE TRUNC(la_date) <= TRUNC(SYSDATE) LOOP CELL_P(LA_DATE); CELL_X(LA_DATE); LA_DATE:=LA_DATE+1; END LOOP; PRINT_CELLS(); -- On met à jour la date d'execution MAJ_EXECUTE('OPTISTORE'); END;
Si ce package n'est pas lancé pendant 2 jours, avec la boucle je gère le cas et j'ai donc un fichier par jour.
Cependant si le package est lancé dans la journée alors là j'ai un problème car il me met un fichier à vide car il consière que la journée est terminée.
Comme mon fichier a dejà été créé la journée, le fichizer du soir (avec toutes les données sort en erreur.
Je n'arrive pas à voir comment gérer le cas où ce package est lancé avant 21h.
Quelq'un aurait il une colution vers laquelle m'orienter?J'espère avoir été claire.
Je suis ssous orclae 9.
Partager