Bonjour,
je suis en train de développer un TRIGGER et je suis confronté à une erreur que je ne comprends pas.
Voici le code du Trigger avec en rouge où apparement se trouve l'erreur :
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
24
25
26
27
28
29
30
31
32
33
34
CREATE OR REPLACE TRIGGER fermeture_of
AFTER UPDATE OF date_fin_operation ON operation
FOR EACH ROW
WHEN (NEW.id_poste=4)
DECLARE
 CURSOR c (d integer) IS
  SELECT qte_realisee, qte_a_realiser FROM concerne
  WHERE numero_demande=d;
 realisee INTEGER;
 a_realiser INTEGER;
 no_demande INTEGER;
 part INTEGER;
BEGIN
 SELECT qte_realisee, qte_a_realiser, c.numero_demande, c.partnumber
 INTO realisee, a_realiser, no_demande, part
 FROM demande d, cycle_ventilateur v, operation o, concerne c
 WHERE v.numero_serie_trane=:NEW.numero_serie_trane
 AND d.numero_demande=v.numero_demande
 AND d.numero_demande=c.numero_demande
 AND v.partnumber=c.partnumber;
 UPDATE concerne SET qte_realisee=qte_realisee + 1
 WHERE numero_demande=no_demande
 AND partnumber=part;
 FOR d IN c(demande) LOOP
  IF d.qte_realisee!=d.qte_a_realiser THEN
   GOTO fin;
  END IF;
 END LOOP;
 UPDATE demande SET statut_demande='F'
 WHERE numero_demande=no_demande;
 <<fin>>
 NULL;
END;
Et l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
LINE/COL ERROR
-------- -----------------------------------------------------------------
22/2     PL/SQL: Statement ignored
22/13    PLS-00357: Table,View Or Sequence reference 'DEMANDE' not allowed
         in this context
Merci d'avance pour vos réponses