Bonjour à tous,

Avant de vous exposer mon problème, je tiens à dire pour ma défense que je suis novice sur Oracle. Il se peut donc que des erreurs de syntaxe ou de vocabulaire se glissent dans mes propos et je m'en excuse d'avance.

Cela étant dit, voici mon problème :

J'ai actuellement une table contenant un champ du cout de la main d'œuvre "COUT_MO", un autre pour entrer les heures de travail "HEURES_MO" et un dernier réservé pour le cout global "COUT_GLOBAL".

Mon but est de créer un trigger qui lorsque que l'un des deux premiers champs est rempli par un utilisateur, celui-ci entre le résultat du calcul "COUT_MO" * "HEURES_MO" dans le champ "COUT_GLOBAL".

J'ai créé ce trigger qui se compile bien mais qui laisse mon champ ""COUT_GLOBAL" vide :

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
 
CREATE OR REPLACE TRIGGER "DEGAT_COUT_TTC" 
BEFORE UPDATE of HEURES_MO, COUT_MO
ON matable
FOR EACH ROW
 
Declare
 
cout_ttc number;
 
BEGIN
 
select(:new.HEURES_MO * :new.COUT_MO) into cout_ttc from matable;
 
:new.cout_global := cout_ttc;
 
END;
J'avoue que je tourne en rond depuis un moment, je suis donc preneur de toutes bonnes idées.

D'avance merci.