2 pièce(s) jointe(s)
Procédure stockée avec Cursor
Bonjour,
voici une procédure stockée qui tente de faire un insert dans une table avec un cursor sur une autre table
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| create or replace procedure PS_CARREL_CONSOCARTONS is
dateDeb date;
dateFin date;
cursor C1 is
select w_start,w_end from z_weeks_se;
begin
open C1;
fetch C1 into datedeb,datefin;
close C1;
delete z_consocartons;
insert into z_consocartons(c_id,d_text,emballage,libelle,nbcolis)
select (gcemballage.emb_code || sum(gcpfab.pfab_pie_r)),datedeb,gcemballage.emb_code,gcemballage.emb_lib2, sum(gcpfab.pfab_pie_r)
from gcpfab
inner join gcarticle on gcpfab.pfab_prd_fab = gcarticle.art_code
inner join gcemballage on gcpfab.pfab_emb = gcemballage.emb_code
where gcpfab.pfab_date >= datedeb and gcpfab.pfab_date <= datefin
and gcarticle.art_stat4 = 'M18'
and gcemballage.emb_code like 'C%'
group by datedeb, gcemballage.emb_code, gcemballage.emb_lib2;
end; |
Le cursor C1 va chercher ces informations :
select w_start,w_end from z_weeks_se;
Pièce jointe 628409
Ensuite l'insert dans la table z_consocartons ne fonctionne pas comme il faut car seule la 1ere ligne du cursor est prise en compte 17/10/2022 - 23/10/2022:
Pièce jointe 628410
Moi je voudrais que l'insert aille chercher toutes les lignes du cursor soit 5 période de date.
Merci de votre aide.