Bonjour,
J'ai une requête d'ajout qui fonctionne bien si je la lance dans un fichier sql
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO sdea_intranet (link) SELECT docpath||'###'||docname||'###'||destination FROM v_csdocs_sys where d_dkey =NEW.d_dkey;
Par contre, dans mon trigger, rien ne se passe :
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 -- Function: setdateintranet() -- DROP FUNCTION setdateintranet(); CREATE OR REPLACE FUNCTION setdateintranet() RETURNS "trigger" AS $BODY$ DECLARE new_id integer; new_link varchar; BEGIN IF NEW.flag_publication_intranet = 'OUI' THEN NEW.d_date_publi_intranet := now(); INSERT INTO sdea_intranet (link) SELECT docpath||'###'||docname||'###'||destination FROM v_csdocs_sys where d_dkey =NEW.d_dkey; ELSE NEW.d_date_publi_intranet := NULL; -- on enlève la ligne dans la table END IF; RETURN NEW; END; $BODY$ LANGUAGE plpgsql VOLATILE; ALTER FUNCTION setdateintranet() OWNER TO sdea; GRANT EXECUTE ON FUNCTION setdateintranet() TO public; GRANT EXECUTE ON FUNCTION setdateintranet() TO sdea;
Merci de votre aide.
Partager