Boucle FOR sur deux années
Bonjour,
J'ai un traitement à effectuer sur l'année en cours ainsi que la précédente.
Sur les 2 années, je répète une même liste de requête qui me donne la liste des valeurs à insérer en fonction de données dans d'autres tables.
Afin d'éviter de répéter 2 fois les mêmes requêtes, je pensais faire une boucle for mais celle-ci ne fonctionne pas.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| CREATE OR REPLACE procedure calcul_co
(
... liste de paramètre
) is
lAnneeA number; -- Année en cours
lAnneeA1 number; -- Année précédente
begin
-- Récupération de l'année en cours
select extract(year from sysdate),extract(year from SYSDATE-365) into lAnneeA,lAnneeA1 from dual;
LOOP
for i in lAnneeA..lAnneeA1 loop
case i
WHEN 2011 THEN DBMS_OUTPUT.PUT_LINE ('2011');
WHEN 2012 THEN DBMS_OUTPUT.PUT_LINE ('2012');
END CASE;
end loop;
end;
end;
/ |
Je ne rentre pas dans la boucle alors que mes valeurs sont bien 2011 et 2012.
Pourriez-vous, s'il vous plait, m'indiquer mon erreur quii semble simple mais que je ne trouve pas.
Cordialement