Message posté par : Vincent-SIABS
----------------------------------------
Bonjour,
Merci de votre aide.
J'ai pris en compte vos corrections et ré-ecrit le trigger comme suit :
-----------------
Code :
CREATE OR REPLACE FUNCTION remonte_poste_source ()
RETURNS "trigger" AS $$
BEGIN
NEW.nom_poste= (SELECT postes_source.nom, rsx_hta.nom_poste
FROM public.rsx_hta, public.postes_source
WHERE (st_touches( public.rsx_hta.geom,NEW.geom) AND length(coalesce(nom_poste,
'')) = 0) ;
RETURN NEW;
END;
$$
LANGUAGE 'plpgsql'VOLATILE;
CREATE TRIGGER remonte_poste_source
BEFORE INSERT OR UPDATE ON public.rsx_hta
FOR EACH ROW EXECUTE PROCEDURE remonte_poste_source ();
-----------------
Mais il y a un soucis. En effet on appel une table NEW qui "n'existe pas" :
st_touches( public.rsx_hta.geom,NEW.geom)
Dans l'ordre chronologique les postes_source sont dessinés en premier puis ensuite je
trace le rsx_hta qui en part. Donc en fait c'est la géométrie "nouvelle" de
rsx_hta qui doit ressortir de la requête et non celle du postes_source non ?
Encore merci pour votre aide et piste de recherche.
Cordialement,
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=337866#p337866
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net