Salta el contingut

Connectar base de dades

Per crear serveis GeoJSONs a partir de taules de la base de dades

En el Geoportal de Mapia les connexions a la base de dades s’utilitzen principalment per:

  • Visualització de les dades: les dades es mostren al Geoportal com una capa normal amb format vectorial
  • Edició de dades: el geoportal permet editar les dades d’una capa creada a partir d’una connexió d’una base de dades
  • Crear capes GeoJSON: podem crear noves capes GeoJSON mitjançant la URL pública que genera el DatabaseLayer

Informació

Les capes creades a partir de connexions de taules a la base de dades reben el nom de: DATABASE LAYERS


Screenshot


El procediment per crear aquests tipus de capes és el següent:

  1. Crear la connexió a la base de dades des de: Inici › Configuracions generals › Connexions de base de dades
  2. Crear una nova capa a partir d’una taula des de: Inici › Gestor de capes › DataBaseLayers
  3. Configurar la nova capa amb les propietats corresponents:

Connexió a la base de dades

Per realitzar la connexió anirem a Inici › Configuracions generals › Connexions de base de dades i definirem una nova connexió amb els següents valors:

Screenshot

  • Àlies: indicar l’àlies o el nom conegut pels usuaris a la base de dades per poder-la identificar correctament
  • Motor: el motor de la base de dades a la que volem connectar, normalment PostGIS
  • Nom de la base de dades: nom de la base de dades
  • Usuari: usuari de la base de dades amb el que es realitzarà la connexió
  • Contrasenya: contrasenya base de dades
  • Host: servidor de la base de dades
  • Port: port de connexió

Crear nova capa

Crear una nova capa des de Inici › Gestor de capes › DataBaseLayers. Abans de res haurem d’indicar els següents valors:

Screenshot

  • Database connection: escollir la connexió amb la base de dades. En cas que ja tinguéssim alguna connexió prèvia només s’ha d’escollir la que sigui d’interès. En cas que no n’hi hagi cap de prèvia, s’ha de connectar a una de nova tal i com s’explica en el punt anterior.
  • Geometry columns: seleccionar el nom del camp geometria de la taula que volem connectar. Només accepta taules que continguin geometries
  • Nom: nom intern de la capa del geoportal
  • Taula: nom de la taula de la base de dades. Només accepta taules que continguin geometries
  • Camp amb geometria: nom del camp geometria que conté la informació espacials
  • Srid: sistema de coordenades amb format EPSG (p.e. 25831 per ETRS89 o 4326 per WGS84)
  • Clau primària: clau primària de la taula. És obligatori, si la taula no en té n’haurem de crear un
  • Aplicar filtre a les dades: permet filtrar les dades d’entrada segons valors dels camps. Hem els camps i els valors amb notació JSON. Accepta els mateixos filtres que els de les URLs públiques dels databaselayers (informació filtres)
{
    "CampA": "carrer",
    "CampB__isnull": true,
    "nom camp__filtre": "valor"
}

Configuracions

Una vegada creada la capa, haurem de configurar totes les opcions igual que en la resta de capes del geoportal:


Screenshot


  1. Consulta totes les propietats generals a Informació, propietats de les capes.

Alguns conceptes:

  • Camps: son tots els camps de la taula connectada. Principalment ens permet modificar els noms de visualització i quins camps volem que apareguin i quins no. També permet definir opcions d’edició, es a dir, quins camps poden acceptar valors blancs, quin tipus de control presentarà el formulari d’edició, …
  • Ginys: permeten configurar opcions d’edició específiques per a cada camp, consulta la informació tècnica..
  • Camps virtuals: permet realitzar dos tipus d’operacions amb camps en el mode edició:
    • Camp enllaçat: modificar o mostrar el nom d’un camp que depèn d’un altre. Per exemple, la descripció d’un conjunt de codis (valor i domini)
    • Relació 1 molts: permetre escollir el valor d’un camp des d’una altra taula
  • Referències: permet definir un o varis WMS de fons que s’activaran en el moment de l’edició de la capa. Per definit els WMS de fons utilitzem les opcions ja explicades de les capes externes mitjançant Datasets

Edició de dades

Totes les DatabaseLayer podran ser editades des del Geoportal si l’usuari disposa dels permisos corresponents. Consulta la següent pàgina per obtenir tota la informació:

Edició de dades des del Geoportal

Screenshot

Refrescar capa DataBaseLayer

Si una vegada hem creat la capa Databaselayer cal actualitzar-la perquè hi ha hagut canvis en la taula de la base de dades només cal:

  • Obrir el Databaselayer des de l’aplicació
  • Guardar de nou la capa des de l’aplicació

Al guardar s’actualitzaran tots els canvis realitzats en la taula original.

Filtrar en capes GeoJSON

Una vegada disposem de la connexió realitzada i el DatabaseLayer creat podem utilitzar la URL pública de la nova capa per crear altres capes GeoJSON filtrades segons cas.

Imaginem que tenim una taula que te 3 camps:


id codi Descripció Tipus
1 VEG Arbre Palmera
2 VEG Arbre Plataner
3 ENE Fanal E-256
4 ENE Fanal E-256
5 MOB Banc


En aquest cas, podríem tenir una capa DatabaseLayer creada a partir de la taula de la base de dades que no es visualitzi al Geoportal i 3 capes GeoJSON creades amb les següents URLs:

  • https://geoportal.xxxxx.cat/apps/giscube-admin/layerserver/databaselayers/xxxxxx/data/?codi=VEG
  • https://geoportal.xxxxx.cat/apps/giscube-admin/layerserver/databaselayers/xxxxxx/data/?codi=ENE
  • https://geoportal.xxxxx.cat/apps/giscube-admin/layerserver/databaselayers/xxxxxx/data/?codi=MOB

Podem obtenir la URL pública de cada DatabaseLayer des del llistat principal de capes:

Screenshot

Consulta tota la informació disponible (opcions i filtres) sobre les URL públiques de les DatabaseLayer des de la pàgina: API Databaselayer