[Gvsig_usuarios] Añadis capa Postgis con script
Joaquin Jose del Cerro Murciano
jjdelcerro en gvsig.org
Sab Nov 5 09:42:56 CET 2016
El 4 de noviembre de 2016, 16:16, Óscar Martínez <omartinez en gvsig.com>
escribió:
> Buenas,
>
> El camino es correcto, te falta un paso. Con el openStore abres un
> dataStore, para crear una capa desde un data store necesitas añadir las
> siguientes líneas (y el import al princpio):
>
> layer = MapContextLocator.getMapContextManager().createLayer(
> "pglayer",
> os.getStore()
> )
>
> currentView().addLayer(layer)
>
UUhhmmm...
podria ser interesante que el addLayer admitiese tambien un store y crease
la capa automaticamente con el...para la gran mayoria de los casos seria
suficiente...
si no presenta complicaciones (que no parece) lo añado para la proxima
version.
Un saludo
Joaquin
> http://downloads.gvsig.org/download/gvsig-desktop-
> testing/dists/2.3.0/javadocs/html/org/gvsig/fmap/
> mapcontext/MapContextManager.html#createLayer(java.lang.
> String,%20org.gvsig.fmap.dal.DataStore)
>
> El script completo podría quedar algo así:
>
> # encoding: utf-8
>
> import gvsig
> from org.gvsig.fmap.mapcontext import MapContextLocator
> from gvsig.utils import openStore
>
> def main(*args):
>
> os = openStore('PostgreSQL',port='5432',
> JDBCDriverClass='org.postgresql.Driver',
> UseSSL='false',
> Schema='public',
> Catalog='',
> URL='jdbc:postgresql://localhost/ej1',
> BaseOrder='',
> Workingarea=None,
> CRS='EPSG:23030',
> PKFields='gid',
> BaseFilter='',
> DefaultGeometryField='geom',
> Fields=None,
> Table='ciudades',
> SQL='',
> password='password',
> dbname='ej1',
> host='localhost',
> dbuser='postgres',
> ProviderName='PostgreSQL')
>
> layer = MapContextLocator.getMapContextManager().createLayer(
> "pglayer",
> os.getStore()
> )
>
> gvsig.currentView().addLayer(layer)
>
> El 04/11/16 a las 14:08, Javier Galán escribió:
>
> Hola a todos:
>
> Estoy empezando a hacer algún script con la nueva versión de gvsig 2.3.1
>
> He logrado realizar la conexión mediante
>
> openStore()
> Lo hace correctamente por que le pregunto por las features y me devuelve sus
> propiedades.
>
> La cosa es que quiero insertarlo en una vista
>
>
> *Vista = currentProject().getView("Vista1") *
> *os = openStore('PostgreSQL',port='5432'...)*
> *Vista.addLayer(os)*
>
> Me dice
>
> Error TypeError: addLayer(): 1st arg can't be coerced to
> org.gvsig.fmap.mapcontext.layers.FLayer
>
> Seguramente estoy accediendo por el camino incorrecto. Alguien puede
> echarme una mano?
>
> Gracias
> Javier
>
>
> _______________________________________________
> gvSIG_usuarios mailing listgvSIG_usuarios en listserv.gva.es
>
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección:
> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>
>
>
> _______________________________________________
> gvSIG_usuarios mailing list
> gvSIG_usuarios en listserv.gva.es
>
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse
> de baja en esta lista, acuda a la siguiente dirección:
>
> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>
>
--
--------------------------------------
Joaquin Jose del Cerro Murciano
Development and software arquitecture manager at gvSIG Team
jjdelcerro en gvsig.com
jjdelcerro en gvsig.org
gvSIG Association
www.gvsig.com
www.gvsig.org
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listserv.gva.es/pipermail/gvsig_usuarios/attachments/20161105/f21d9713/attachment.html>
Más información sobre la lista de distribución gvSIG_usuarios