Hola Luis,
Aquí te pego la función.
CREATE OR REPLACE FUNCTION errepide_intz()
RETURNS trigger AS
$BODY$
DECLARE
BEGIN
NEW.geom:=ST_transform(ST_SetSRID(ST_MakePoint(NEW.lon,NEW.lat),4326),25830);
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION errepide_intz()
OWNER TO postgres;
Gracias de antemano,
Mikel
2015/02/24 13:44(e)an, Luis Franco Vázquez igorleak idatzi zuen:
Vale. Ahora lo he entendido.
Si me pegas aquí la función disparadora que ya tienes te digo como
hacerlo.
El 24 de febrero de 2015, 13:19, Mikel <[email protected]
<mailto:[email protected]>> escribió:
Hola Luis,
El disparador lo que hace es crear el punto en el sistema de
referencia 25830 partiendo de las coordenadas geográficas que
introduzco en el sistema 4326. Lo que necesito es que me rellene
los campos X e Y en el sistema 25830 de manera automática.
He intentando poner por defecto en el campo X el valor ST_X (geom)
pero me da error...
Gracias.
2015/02/24 12:29(e)an, Luis Franco Vázquez igorleak idatzi zuen:
Disculpa, no te he entendido. ¿Ya tienes un disparador que crea
el punto y quieres obtener las coordenadas que tú mismo estás
introduciendo?. Tengo que haberlo entendido muy mal. ¿O es que
estás introduciendo coordenadas en un sistema de referencia
distinto al 25830 (por ejemplo epsg 4326) y lo que hace tu
disparador es rellenar un atributo de tipo punto con srid 25830 a
partir de un par x, y en otro sistema de referencias?. Si me das
más datos puedo concretar algo.
En general: postgis no tiene disparadores. Quien los tiene es
postgresql. Postgis es una extensión espacial de postgresql, por
lo tanto debes consultar la documentación de postgresql.
Y sobre como obtener coordenadas x e y, mira
http://postgis.net/docs/manual-2.1/ST_X.html y
http://postgis.net/docs/manual-2.1/ST_Y.html
El 24 de febrero de 2015, 11:56, Mikel <[email protected]
<mailto:[email protected]>> escribió:
Hola a tod@s,
Tengo una duda con PostGIS. ¿Hay alguna manera de que se
rellenen automáticamente dos campos de la tabla con las
coordenadas del elemento introducido?
Me explico. Tengo una tabla en la que introduzco los puntos
con coordenadas geográficas y mediante un disparador, me
situa el punto en las coordenadas introducidas. El sistema de
referencia es EPSG: 25830, por lo que en el disparador
realizo la transformación de coordenadas. La cuestión es que
necesito que se me rellenen los campos X e Y de forma
automática. ¿Hay algún valor por defecto que se puede
introducir (como en el caso de la fecha, now()), o por el
contrario hay que programar algún disparador? y si es la
segunda opción, ¿cómo?
Gracias de antemano.
Un cordial saludo,
<http://www.gislan.com> <http://www.gislan.com/node/107>
*Mikel Ayestaran Olano*
GISLAN GEOGRAPHIC APPLICATIONS S.L
[email protected] <mailto:[email protected]>
Tel.: 0034 943 304 255
www.gislan.com <http://www.gislan.com>
*Lege oharra:* Mezu elektroniko honetan, eta, hala badagokio,
bere fitxategi erantsietan, hartzaileari soilik zuzendutako
isilpeko informazioa dago. Debekatuta dago informazio hori
zabaldu, kopiatu eta beste pertsonen artean banatzea,
Gaindegiaren baimen idatzirik gabe. Akatsen batengatik mezu
hau jaso baduzu, jakinarazi mesedez, mezua igorlearen
helbidera birbidaliz. DBLOn ezarritakoaren arabera,
Gaindegiak datu pertsonalen isilpeko tratamendua bermatzeko
beharrezko neurriak hartzen ditu. Halaber, zure datuak
fitxategi batean daudela jakinarazi nahi dizugu, zure
harremana mantentzeko. Eskubidea daukazu datuok begiratu,
zuzendu, ezabatu eta aurka egiteko, helbide honetan: Martin
Ugalde Kultur Parkea, 20140 Andoain.
*Nota:* "Este correo electrónico y, en su caso, cualquier
fichero anexo al mismo, contiene información de carácter
confidencial exclusivamente dirigida a su destinatario. Queda
prohibida su divulgación, copia o distribución a terceros sin
la previa autorización escrita de Gaindegia. En el caso de
haber recibido este correo electrónico por error, se ruega
notifíquese inmediatamente esta circunstancia mediante
reenvío a la dirección electrónica del remitente. De
conformidad con lo establecido en la LOPD Gaindegia garantiza
la adopción de las medidas necesarias para asegurar el
tratamiento confidencial de los datos de carácter personal.
Así mismo le informamos de inclusión de sus datos en un
fichero con la finalidad de mantener su relación con
Gaindegia y de la posibilidad de ejercer los derechos de
acceso, rectificación, cancelación y oposición en la
siguiente dirección: Martin Ugalde Kultur Parkea, 20140
Andoain.”
_______________________________________________
Spanish mailing list
http://lists.osgeo.org/mailman/listinfo/spanish
http://es.osgeo.org
http://twitter.com/osgeoes
_______________________________________________
Spanish mailing list
http://lists.osgeo.org/mailman/listinfo/spanish
http://es.osgeo.org
http://twitter.com/osgeoes
_______________________________________________
Spanish mailing list
http://lists.osgeo.org/mailman/listinfo/spanish
http://es.osgeo.org
http://twitter.com/osgeoes
_______________________________________________
Spanish mailing list
http://lists.osgeo.org/mailman/listinfo/spanish
http://es.osgeo.org
http://twitter.com/osgeoes
_______________________________________________
Spanish mailing list
http://lists.osgeo.org/mailman/listinfo/spanish
http://es.osgeo.org
http://twitter.com/osgeoes