PostNAS-Sichten für Vollhistorie: Unterschied zwischen den Versionen

Aus kvwmap
Wechseln zu: Navigation, Suche
Zeile 8: Zeile 8:
  
 
  <nowiki>
 
  <nowiki>
 +
SET search_path = alkis, public;
 
INSERT INTO pp_flurstueck_nr
 
INSERT INTO pp_flurstueck_nr
 
           ( fsgml, beginnt, endet, fsnum, the_geom )
 
           ( fsgml, beginnt, endet, fsnum, the_geom )
Zeile 22: Zeile 23:
  
 
  <nowiki>
 
  <nowiki>
 +
SET search_path = alkis, public;
 
CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck AS  
 
CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck AS  
 
  SELECT l.ogc_fid,l.beginnt,l.endet, l.wkb_geometry
 
  SELECT l.ogc_fid,l.beginnt,l.endet, l.wkb_geometry

Version vom 8. April 2015, 12:09 Uhr

-- Auf dieser Seite werden alle Sichten gesammelt, die auf Vollhistorie angepasst sind. Jede Sicht muss die Spalten beginnt und endet abfragen und darf in der WHERE-Bedingung nicht auf diese Spalten einschränken.

-- Die Seite ist so gedacht, dass man den kompletten Text als SQL in der PostgreSQL-DB ausführen kann, deswegen muss allem, was kein SQL ist, ein "--" vorangestellt werden.

Darstellung der Flurstücksnummern:

Dafür wird keine Sicht verwendet, es ist eine Anpassung der Tabelle pp_flurstueck_nr notwendig. Die Spalten beginnt und endet müssen eingefügt werden. Die Postprozessing-Anweisung muss auch dementsprechend geändert werden:

SET search_path = alkis, public;
INSERT INTO pp_flurstueck_nr
          ( fsgml, beginnt, endet, fsnum, the_geom )
     SELECT f.gml_id,p.beginnt,p.endet,
           f.zaehler::text || COALESCE ('/' || f.nenner::text, '') AS fsnum,
           p.wkb_geometry  -- manuelle Position des Textes
      FROM ap_pto             p
      JOIN ax_flurstueck      f ON f.gml_id = any(p.dientzurdarstellungvon)
          AND p."art" = 'ZAE_NEN'
  ;

Darstellung der Zuorordnungspfeile:

SET search_path = alkis, public;
CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck AS 
 SELECT l.ogc_fid,l.beginnt,l.endet, l.wkb_geometry
   FROM ap_lpo l
   JOIN ax_flurstueck f ON f.gml_id = any(l.dientzurdarstellungvon)
  WHERE l.art::text = 'Pfeil'
  AND ('DKKM1000' ~~ ANY (l.advstandardmodell));