1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| create or replace TRIGGER VERIF_NC
BEFORE UPDATE OF ST_ETA ON BT
for each row
DECLARE
CURSOR udi_nc IS
select gro.id_numgro from BT
left outer join EQU on BT.ID_NUMEQU = equ.id_numequ
left outer join GRO on EQU.ID_NUMGRO = gro.id_numgro
where BT.ST_ETA ='NC';
udi char(50);
numbt char(50);
BEGIN
open udi_nc;
numbt := :new.id_numbt;
select gro.id_numgro INTO udi from BT,EQU,GRO
where BT.ID_NUMEQU = equ.id_numequ and
EQU.ID_NUMGRO = gro.id_numgro and BT.ID_NUMBT = numbt;
if udi IN udi_nc then
raise_application_error (- 20002, "NC en cours");
END IF;
close udi_nc;
END; |
Partager