Ignore:
Timestamp:
08/28/14 16:45:07 (10 years ago)
Author:
frank.jaeger
Message:

laufende Arbeiten um Tabelle "alkis_beziehungen" aus den Views zu entfernen

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Version-0.8/import/sichten_wms.sql

    r324 r326  
    33-- ===== 
    44 
    5 --  PostNAS 
     5--  PostNAS 0.8 
    66 
    77--  ----------------------------------------- 
     
    2424--  2014-02-24 Kein Filter auf advstandardmodell bei FlurstÃŒcks-Zuordnungspfeil 
    2525--  2014-08-26 View "ap_lto_stra" analog "ap_pto_stra" fÃŒr Straßennamen auf Linien-Geometrie 
    26  
    27 --  2014-08-27 Die Tabelle "alkis_beziehungen" ÃŒberflÃŒssig machen. 
     26--  2014-08-28 Die Tabelle "alkis_beziehungen" ÃŒberflÃŒssig machen. 
    2827--             Relationen nun direkt ÃŒber neue Spalten in den Objekttabellen.  
    2928 
     
    3837-- Wenn der nicht gefÃŒllt ist, wird statt dessen die Nummer aus der verknÃŒpften Labebezeichnung verwendet. 
    3938 
    40  
    41 /*  
    42 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    43  
    44 CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
    45 AS  
    46  SELECT p.ogc_fid,  
    47         p.wkb_geometry,                            -- Point 
    48         p.drehwinkel * 57.296 AS drehwinkel,  -- umn: ANGLE 
    49     --  p.art, 
    50     --  p.advstandardmodell       AS modell,  -- TEST 
    51     --  p.horizontaleausrichtung  AS hor,     -- = 'zentrisch' 
    52     --  p.vertikaleausrichtung    AS ver,     -- = 'Basis' (oft), "Mitte" (selten) 
    53     --  p.schriftinhalt,                      -- WMS: das bessere LABELITEM, kann aber leer sein 
    54     --  l.hausnummer,                         -- WMS: LABELITEM default/native 
    55         COALESCE(p.schriftinhalt, l.hausnummer) AS hausnummer 
    56    FROM ap_pto p 
    57    JOIN alkis_beziehungen v 
    58      ON p.gml_id = v.beziehung_von 
    59    JOIN ax_lagebezeichnungmithausnummer l 
    60          ON v.beziehung_zu  = l.gml_id 
    61   WHERE p.art = 'HNR' 
    62     AND 'DKKM1000' = ANY (p.advstandardmodell) -- erste NÀherungslösung um Redundanzen zu unterdrÃŒcken 
    63     AND v.beziehungsart = 'dientZurDarstellungVon' 
    64         AND p.endet IS NULL 
    65         AND l.endet IS NULL; 
    66  
    67 */ 
    68  
    69 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     39-- DROP VIEW IF EXISTS s_hausnummer_gebaeude; 
     40 
    7041CREATE OR REPLACE VIEW s_hausnummer_gebaeude  
    7142AS  
     
    9667-- ax_gebaeude  >hat>  ax_lagebezeichnungmitpseudonummer, kein Drehwinkel. 
    9768 
    98 /*  
    99 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    100  
    101 CREATE OR REPLACE VIEW lfdnr_nebengebaeude  
    102 AS  
    103  SELECT g.ogc_fid,  
    104         g.wkb_geometry,  
    105     --  l.pseudonummer,      -- TEST die HsNr des zugehoerigen Hauptgebaeudes 
    106         l.laufendenummer     -- umn: LABELITEM - die laufende Nummer des Nebengebaeudes 
    107    FROM ax_gebaeude g 
    108    JOIN alkis_beziehungen v  
    109      ON g.gml_id = v.beziehung_von 
    110    JOIN ax_lagebezeichnungmitpseudonummer l 
    111      ON v.beziehung_zu  = l.gml_id 
    112    WHERE v.beziehungsart = 'hat' 
    113      AND g.endet IS NULL 
    114      AND l.endet IS NULL; 
    115  
    116 */ 
    117 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     69-- DROP VIEW IF EXISTS lfdnr_nebengebaeude; 
     70 
    11871CREATE OR REPLACE VIEW lfdnr_nebengebaeude  
    11972AS  
     
    13184-- GebÀude-Text 
    13285-- ------------ 
     86 
     87-- DROP VIEW IF EXISTS gebaeude_txt; 
     88 
    13389CREATE OR REPLACE VIEW gebaeude_txt  
    13490AS  
     
    149105-- ----------------------- 
    150106 
    151 /*  
    152 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    153 CREATE OR REPLACE VIEW s_zugehoerigkeitshaken_flurstueck  
    154 AS  
    155  SELECT p.ogc_fid,  
    156         p.wkb_geometry,  
    157         p.drehwinkel * 57.296 AS drehwinkel, 
    158         f.flurstueckskennzeichen 
    159    FROM ap_ppo p 
    160    JOIN alkis_beziehungen v 
    161      ON p.gml_id = v.beziehung_von 
    162    JOIN ax_flurstueck f 
    163      ON v.beziehung_zu = f.gml_id 
    164   WHERE p.art = 'Haken' 
    165     AND v.beziehungsart = 'dientZurDarstellungVon' 
    166     AND f.endet IS NULL 
    167     AND p.endet IS NULL; 
    168  
    169 */ 
    170  
    171 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     107-- DROP VIEW IF EXISTS s_zugehoerigkeitshaken_flurstueck; 
     108 
    172109CREATE OR REPLACE VIEW s_zugehoerigkeitshaken_flurstueck  
    173110AS  
     
    188125-- ----------------------------------- 
    189126 
    190 /*  
    191 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    192  
    193 CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck  
    194 AS  
    195  SELECT l.ogc_fid,  
    196         l.wkb_geometry 
    197    FROM ap_lpo l 
    198    JOIN alkis_beziehungen v 
    199      ON l.gml_id = v.beziehung_von 
    200    JOIN ax_flurstueck f 
    201      ON v.beziehung_zu = f.gml_id 
    202   WHERE l.art = 'Pfeil' 
    203     AND v.beziehungsart = 'dientZurDarstellungVon' 
    204     AND f.endet IS NULL 
    205     AND l.endet IS NULL; 
    206  
    207 */ 
    208 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     127-- DROP VIEW IF EXISTS s_zuordungspfeil_flurstueck; 
     128 
    209129CREATE OR REPLACE VIEW s_zuordungspfeil_flurstueck  
    210130AS  
     
    221141  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil zur FlurstÃŒcksnummer, Liniengeometrie.'; 
    222142 
    223 /*  
    224 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    225 CREATE OR REPLACE VIEW s_zuordungspfeilspitze_flurstueck  
    226 AS  
    227  SELECT l.ogc_fid,  
    228         (((st_azimuth(st_pointn(l.wkb_geometry, 1),  
    229         st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel,  
    230         st_startpoint(l.wkb_geometry) AS wkb_geometry  
    231    FROM ap_lpo l 
    232    JOIN alkis_beziehungen v 
    233      ON l.gml_id = v.beziehung_von 
    234    JOIN ax_flurstueck f 
    235      ON v.beziehung_zu = f.gml_id 
    236   WHERE l.art = 'Pfeil' 
    237     AND v.beziehungsart = 'dientZurDarstellungVon' 
    238     AND f.endet IS NULL 
    239     AND l.endet IS NULL; 
    240  
    241 */ 
    242 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     143 
     144-- DROP VIEW IF EXISTS s_zuordungspfeilspitze_flurstueck; 
     145 
    243146CREATE OR REPLACE VIEW s_zuordungspfeilspitze_flurstueck  
    244147AS  
     
    263166-- ---------------------------------------------------- 
    264167 
    265 /*  
    266 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    267 CREATE OR REPLACE VIEW s_zuordungspfeil_bodensch 
    268 AS  
    269  SELECT l.ogc_fid,  
    270         l.wkb_geometry 
    271    FROM ap_lpo l 
    272    JOIN alkis_beziehungen v 
    273      ON l.gml_id = v.beziehung_von 
    274    JOIN ax_bodenschaetzung b 
    275      ON v.beziehung_zu = b.gml_id 
    276   WHERE l.art = 'Pfeil' 
    277     AND v.beziehungsart = 'dientZurDarstellungVon' 
    278     AND ('DKKM1000' ~~ ANY (l.advstandardmodell)) 
    279     AND b.endet IS NULL 
    280     AND l.endet IS NULL; 
    281  
    282 */ 
    283  
    284 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    285168CREATE OR REPLACE VIEW s_zuordungspfeil_bodensch 
    286169AS  
     
    299182 
    300183 
    301 /*  
    302 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    303  
    304 CREATE OR REPLACE VIEW s_zuordungspfeilspitze_bodensch  
    305 AS  
    306  SELECT l.ogc_fid,  
    307         (((st_azimuth(st_pointn(l.wkb_geometry, 1),  
    308         st_pointn(l.wkb_geometry, 2)) * (- (180)::double precision)) / pi()) + (90)::double precision) AS winkel,  
    309         st_startpoint(l.wkb_geometry) AS wkb_geometry  
    310    FROM ap_lpo l 
    311    JOIN alkis_beziehungen v 
    312      ON l.gml_id = v.beziehung_von 
    313    JOIN ax_bodenschaetzung b 
    314      ON v.beziehung_zu = b.gml_id 
    315   WHERE l.art = 'Pfeil' 
    316     AND v.beziehungsart = 'dientZurDarstellungVon' 
    317     AND ('DKKM1000' ~~ ANY (l.advstandardmodell)) 
    318     AND b.endet IS NULL 
    319     AND l.endet IS NULL; 
    320  
    321 */ 
    322  
    323 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     184-- DROP VIEW IF EXISTS s_zuordungspfeilspitze_bodensch; 
     185  
    324186CREATE OR REPLACE VIEW s_zuordungspfeilspitze_bodensch  
    325187AS  
     
    348210-- Auch Zeilen mit leerem Schriftinhalt verwenden. Das wird im PostProcessing noch ergÀnzt.  
    349211 
    350 -- DROP VIEW ap_pto_stra; 
    351  
    352 /*  
    353 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    354  
    355 CREATE OR REPLACE VIEW ap_pto_stra  
    356 AS  
    357   SELECT p.ogc_fid, 
    358          l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
    359       -- p.advstandardmodell       AS modell,    -- TEST 
    360       -- l.unverschluesselt, l.lage AS schluessel, -- zur Lage  TEST 
    361          p.schriftinhalt,                        -- WMS: LABELITEM 
    362          p.art,                                  -- WMS: CLASSITEM 
    363          p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
    364          p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
    365          p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi 
    366          p.wkb_geometry 
    367     FROM ap_pto p 
    368     JOIN alkis_beziehungen v   -- Relation zur Lagebezeichnung o. HsNr. 
    369       ON p.gml_id = v.beziehung_von 
    370     JOIN ax_lagebezeichnungohnehausnummer l 
    371       ON v.beziehung_zu = l.gml_id 
    372    WHERE -- NOT p.schriftinhalt IS NULL   AND 
    373           p.endet IS NULL                            -- nichts historisches 
    374      AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln.  
    375      AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    376  
    377      AND (   'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
    378           OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein  
    379            -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
    380           OR (p.advstandardmodell IS NULL 
    381                AND (SELECT s.ogc_fid                -- irgend ein Feld 
    382                       FROM ap_pto s                 -- eines anderen Textes (suchen) 
    383                       JOIN alkis_beziehungen vs     -- zur gleichen Lage o.HsNr 
    384                         ON s.gml_id = vs.beziehung_von 
    385                       JOIN ax_lagebezeichnungohnehausnummer ls 
    386                         ON vs.beziehung_zu = ls.gml_id 
    387                      WHERE ls.gml_id = l.gml_id 
    388                        AND vs.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    389                        AND NOT s.advstandardmodell IS NULL  
    390                      LIMIT 1  -- einer reicht als Beweis 
    391                    ) IS NULL  
    392               ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
    393          ) 
    394 ; 
    395  
    396 */ 
    397  
    398 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     212-- DROP VIEW IF EXISTS ap_pto_stra; 
     213 
    399214CREATE OR REPLACE VIEW ap_pto_stra  
    400215AS  
     
    434249 Vorzugsweise mit advstandardmodell="DKKM1000", ersatzweise ohne Angabe. Dient im Script pp_laden.sql zum ersten FÃŒllen der Tabelle "pp_strassenname_p".'; 
    435250 
    436 -- 2013-10-26: Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname" und "pp_strassenklas". 
     251-- Daten aus dem View "ap_pto_stra" werden im PostProcessing gespeichert in den Tabellen "pp_strassenname" und "pp_strassenklas". 
    437252-- Der View ÃŒbernimmt die Auswahl des passenden advstandardmodell und rechnet den Winkel passend um, 
    438253-- In der Tabelle werden dann die leer gebliebenen Label aus dem Katalog noch ergÀnzt. 
    439254 
    440 -- DROP VIEW ap_lto_stra; 
    441  
    442 /*  
    443 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    444  
    445 CREATE OR REPLACE VIEW ap_lto_stra  
    446 AS  
    447   SELECT p.ogc_fid, 
    448          l.gml_id,                               -- wird im PP zum Nachladen aus Katalog gebraucht 
    449          p.schriftinhalt,                        -- WMS: LABELITEM 
    450          p.art,                                  -- WMS: CLASSITEM 
    451          p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
    452          p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
    453          p.wkb_geometry 
    454     FROM ap_lto p 
    455     JOIN alkis_beziehungen v   -- Relation zur Lagebezeichnung o. HsNr. 
    456       ON p.gml_id = v.beziehung_von 
    457     JOIN ax_lagebezeichnungohnehausnummer l 
    458       ON v.beziehung_zu = l.gml_id 
    459    WHERE  p.endet IS NULL                            -- nichts historisches 
    460      AND  p.art   IN ('Strasse','Weg','Platz','BezKlassifizierungStrasse') -- Diese Werte als CLASSES in LAYER behandeln.  
    461      AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    462      AND (    'DKKM1000' = ANY (p.advstandardmodell) -- "Lika 1000" bevorzugen 
    463            OR 'DLKM'     = ANY (p.advstandardmodell) -- oder auch Kataster allgemein? 
    464            -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
    465            OR (p.advstandardmodell IS NULL 
    466                AND (SELECT s.ogc_fid                 -- irgend ein Feld 
    467                       FROM ap_lto s                  -- eines anderen Textes (suchen) 
    468                       JOIN alkis_beziehungen vs      -- zur gleichen Lage o.HsNr 
    469                         ON s.gml_id = vs.beziehung_von 
    470                       JOIN ax_lagebezeichnungohnehausnummer ls 
    471                         ON vs.beziehung_zu = ls.gml_id 
    472                      WHERE ls.gml_id = l.gml_id 
    473                        AND vs.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    474                        AND NOT s.advstandardmodell IS NULL  
    475                      LIMIT 1  -- einer reicht als Beweis 
    476                    ) IS NULL  
    477               ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
    478          ) 
    479 ; 
    480  
    481 */ 
    482 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     255-- DROP VIEW IF EXISTS ap_lto_stra; 
     256 
    483257CREATE OR REPLACE VIEW ap_lto_stra  
    484258AS  
     
    532306-- ODER           trennen nach fachlichen Ebenen wie "Nutzung" und "GebÀude" und .... 
    533307 
    534 /*  
    535 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    536  
    537 CREATE OR REPLACE VIEW ap_pto_nam  
    538 AS  
    539   SELECT p.ogc_fid, 
    540           -- p.advstandardmodell       AS modell,    -- TEST 
    541          p.schriftinhalt,                        -- WMS: LABELITEM 
    542          p.art,                                  -- WMS: CLASSITEM 
    543          p.horizontaleausrichtung  AS hor,       -- Verfeinern der Text-Position .. 
    544          p.vertikaleausrichtung    AS ver,       --  .. durch Klassifizierung hor/ver 
    545          p.drehwinkel * 57.296     AS winkel,    -- * 180 / Pi 
    546          p.wkb_geometry 
    547     FROM ap_pto p 
    548     JOIN alkis_beziehungen v        
    549       ON p.gml_id = v.beziehung_von 
    550   --JOIN nutzung l                      -- Im PostProcessing zusammen gefasste Nutzungsarten-Abschnitte 
    551   --  ON v.beziehung_zu = l.gml_id 
    552    WHERE NOT p.schriftinhalt IS NULL  
    553      AND  p.endet IS NULL                            -- nichts historisches 
    554      AND  p.art   IN ('NAM','ZNM') -- Diese Werte als CLASSES in LAYER behandeln.  
    555      AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    556      AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen 
    557            -- Ersatzweise auch "keine Angabe", aber nur wenn es keinen besseren Text zur Lage gibt 
    558            OR (p.advstandardmodell IS NULL 
    559                AND (SELECT vs.beziehung_zu          -- irgend ein Feld 
    560                                           FROM ap_pto s                 -- eines anderen Textes (suchen) 
    561                       JOIN alkis_beziehungen vs     -- zur gleichen ?irgendwas? 
    562                         ON s.gml_id = vs.beziehung_von 
    563                      WHERE vs.beziehung_zu = v.beziehung_zu 
    564                        AND vs.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    565                        AND NOT s.advstandardmodell IS NULL  
    566                      LIMIT 1  -- einer reicht als Beweis 
    567                                         ) IS NULL  
    568               ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
    569          ) 
    570 ; 
    571  
    572 */ 
    573  
    574 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
     308-- DROP VIEW IF EXISTS ap_pto_nam; 
     309 
    575310CREATE OR REPLACE VIEW ap_pto_nam  
    576311AS  
     
    613348-- Doppelte Darstellung aufgrund verschiedener "advstandardmodell" zum Objekt unterdrÃŒcken analog ap_pto_stra und ap_pto_nam 
    614349 
    615 /*  
    616 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    617  
    618     +++ HIER HIN KOPIEREN  +++ 
    619  
    620 */ 
    621  
    622 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    623 -- ToDo 
    624 CREATE OR REPLACE VIEW ap_pto_rest  
     350-- DROP VIEW IF EXISTS ap_pto_rest; 
     351 
     352CREATE OR REPLACE VIEW ap_pto_rest 
    625353AS  
    626354  SELECT p.ogc_fid,  
     
    630358         p.wkb_geometry  
    631359    FROM ap_pto p 
    632     JOIN alkis_beziehungen v   -- Relation zur ?irgendwas? 
    633       ON p.gml_id = v.beziehung_von 
    634    WHERE not p.schriftinhalt IS NULL  
     360   WHERE NOT p.schriftinhalt IS NULL 
     361     AND NOT p.dientzurdarstellungvon IS NULL 
    635362     AND p.endet IS NULL 
    636363     AND p.art   NOT IN ('PNR','HNR','Strasse','Weg','Platz','BezKlassifizierungStrasse','AOG_AUG') -- 'PNR', 
    637364     -- Diese 'IN'-Liste fortschreiben bei Erweiterungen des Mapfiles 
    638365     -- 'PNR' = Pseudonummer (lfd.-Nr.-NebengebÀude), Inhalte wie "(1)" oder "P50" - kommt nicht mehr vor, oder? 
    639     AND  v.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    640366    AND ('DKKM1000' = ANY (p.advstandardmodell)     -- "Lika 1000" bevorzugen 
    641            -- Ersatzweise auch "keine Angabe" (nul) akzeptieren, aber nur wenn es keinen besseren Text zu ?irgendwas? gibt 
    642            -- Es wird hier nur bis zur Verbindungstabelle "alkis_beziehungen" gesucht, ob am anderen Ende die gleiche gml_id verlinkt ist. 
    643            -- Diese gml_id können dann zu verschiedenen, unbekannten Objekttabellen linken. 
     367           -- Ersatzweise auch "keine Angabe" (null) akzeptieren, aber nur wenn ... 
    644368           OR (p.advstandardmodell IS NULL 
    645                AND (SELECT vs.beziehung_zu          -- irgend ein Feld 
    646                                           FROM ap_pto s                 -- eines anderen Textes (suchen) 
    647                       JOIN alkis_beziehungen vs     -- zur gleichen ?irgendwas? 
    648                         ON s.gml_id = vs.beziehung_von 
    649                      WHERE vs.beziehung_zu = v.beziehung_zu 
    650                        AND vs.beziehungsart = 'dientZurDarstellungVon' -- kann, muss aber nicht 
    651                        AND NOT s.advstandardmodell IS NULL  
     369               AND ( SELECT s.ogc_fid               -- irgend ein Feld 
     370                      FROM ap_pto s 
     371                     WHERE p.dientzurdarstellungvon = s.dientzurdarstellungvon -- gleiches PrÀsentationsobj. 
     372                       AND NOT s.advstandardmodell IS NULL -- Irgend eine Angabe 
    652373                     LIMIT 1  -- einer reicht als Ausschlußkriterium 
    653                                         ) IS NULL  
     374                    ) IS NULL  
    654375              ) -- "Subquery IS NULL" liefert true wenn kein weiterer Text gefunden wird 
    655376         ); 
     377 
    656378COMMENT ON VIEW ap_pto_rest  
    657379  IS 'Sicht fÃŒr Kartendarstellung: Beschriftungen aus "ap_pto", die noch nicht in anderen Layern angezeigt werden.'; 
     
    664386-- Layer "s_zuordungspfeil_gebaeude" 
    665387-- ----------------------------------- 
    666  
    667 /*  
    668 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    669  
    670     +++ HIER HIN KOPIEREN  +++ 
    671  
    672 */ 
    673 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    674 -- ToDo 
    675  
    676 CREATE OR REPLACE VIEW s_zuordungspfeil_gebaeude  
     388-- DROP VIEW IF EXISTS s_zuordungspfeil_gebaeude; 
     389 
     390CREATE OR REPLACE VIEW s_zuordungspfeil_gebaeude 
    677391AS  
    678392 SELECT l.ogc_fid,  
    679      -- alkis_beziehungen.beziehungsart, -- TEST 
    680393     -- ap_lpo.art, -- TEST 
    681394        l.wkb_geometry 
    682395   FROM ap_lpo l 
    683    JOIN alkis_beziehungen v 
    684      ON l.gml_id = v.beziehung_von 
    685396   JOIN ax_gebaeude g 
    686      ON v.beziehung_zu = g.gml_id 
     397     ON g.gml_id = ANY(l.dientzurdarstellungvon) 
    687398  WHERE l.art = 'Pfeil' 
    688     AND v.beziehungsart = 'dientZurDarstellungVon' 
    689399    AND g.endet IS NULL 
    690400    AND l.endet IS NULL; 
     401 
    691402COMMENT ON VIEW s_zuordungspfeil_gebaeude  
    692403  IS 'Sicht fÃŒr Kartendarstellung: Zuordnungspfeil fÃŒr GebÀude-Nummer (NebengebÀude). Wird wahrscheinlich nicht mehr benötigt.'; 
     
    695406-- Grenzpunkte 
    696407-- ----------- 
    697 --  ax_punktortta  >zeigtAuf?> AX_Grenzpunkt 
    698408-- Zum Punktort des Grenzpunktes auch eine Information zur Vermarkung holen 
    699  
    700 /*  
    701 -- alte Version mit Relationen ÃŒber die Tabelle "alkis_beziehungen": 
    702  
    703     +++ HIER HIN KOPIEREN  +++ 
    704  
    705 */ 
    706 -- neue Version mit Relationen OHNE die Tabelle "alkis_beziehungen": 
    707 -- ToDo 
     409-- DROP VIEW IF EXISTS grenzpunkt; 
    708410 
    709411CREATE OR REPLACE VIEW grenzpunkt  
     
    712414        o.wkb_geometry,  
    713415     -- g.punktkennung,    -- ggf spÀter als labelitem "rrrrrhhhhAnnnnn" "32483 5751 0 02002" 
    714         g.abmarkung_marke, -- steuert die Darstellung >9000 = unvermarkt 
    715         v.beziehungsart 
     416        g.abmarkung_marke  -- steuert die Darstellung >9000 = unvermarkt 
    716417   FROM ax_punktortta o 
    717    JOIN alkis_beziehungen v  
    718      ON o.gml_id = v.beziehung_von 
    719418   JOIN ax_grenzpunkt g 
    720      ON v.beziehung_zu  = g.gml_id 
    721    WHERE v.beziehungsart = 'istTeilVon' 
    722      AND g.endet IS NULL 
     419     ON o.istteilvon = g.gml_id 
     420   WHERE g.endet IS NULL 
    723421     AND g.endet IS NULL; 
     422 
    724423COMMENT ON VIEW grenzpunkt  
    725424  IS 'Sicht fÃŒr Kartendarstellung: ZusammenfÃŒhrung von Punktort (Geometrie) und AX_Grenzpunkt (Eigenschaften)'; 
     
    735434  WHERE 3000   = ANY (fg.artderflurstuecksgrenze) 
    736435    AND 'DLKM' = ANY (fg.advstandardmodell); 
     436 
    737437COMMENT ON VIEW sk2012_flurgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Flurgrenze"'; 
    738438 
     
    743443  WHERE 7003   = ANY (gemag.artderflurstuecksgrenze) 
    744444    AND 'DLKM' = ANY (gemag.advstandardmodell); 
     445 
    745446COMMENT ON VIEW sk2014_gemarkungsgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemarkungsgrenze"'; 
    746447 
     
    751452  WHERE 7102   = ANY (blg.artderflurstuecksgrenze) 
    752453    AND 'DLKM' = ANY (blg.advstandardmodell); 
     454 
    753455COMMENT ON VIEW sk2018_bundeslandgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Bundeslandgrenze"'; 
    754456 
     
    759461  WHERE 7103   = ANY (rbg.artderflurstuecksgrenze)  
    760462    AND 'DLKM' = ANY (rbg.advstandardmodell); 
     463 
    761464COMMENT ON VIEW sk2020_regierungsbezirksgrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Regierungsbezirksgrenze"'; 
    762465 
     
    767470  WHERE 7106   = ANY (gemg.artderflurstuecksgrenze)  
    768471    AND 'DLKM' = ANY (gemg.advstandardmodell); 
     472 
    769473COMMENT ON VIEW sk2022_gemeindegrenze IS 'Sicht fÃŒr Kartendarstellung: besondere FlurstÃŒcksgrenze "Gemeindegrenze"'; 
    770474 
     
    817521     -- so2.bezeichner                     AS sonst2, -- immer leer? 
    818522        bs.jahreszahl                                 -- integer 
    819    FROM ax_bodenschaetzung bs 
     523   FROM      ax_bodenschaetzung bs 
    820524   LEFT JOIN ax_bodenschaetzung_kulturart      ka ON bs.kulturart = ka.wert 
    821525   LEFT JOIN ax_bodenschaetzung_bodenart       ba ON bs.bodenart  = ba.wert 
     
    828532 --LEFT JOIN ax_bodenschaetzung_sonstigeangaben so2 ON bs.sonstigeangaben[2] = so2.wert -- [2] fast nie 
    829533   WHERE bs.endet IS NULL; 
     534 
    830535COMMENT ON VIEW s_bodensch_ent IS 'Sicht fÃŒr Feature-Info: BodenschÀtzung, mit Langtexten entschlÃŒsselt'; 
    831536 
     
    838543 SELECT bs.ogc_fid, 
    839544        bs.wkb_geometry, 
    840      -- bs.advstandardmodell,   -- NUR TEST 
     545     -- bs.advstandardmodell,     -- NUR TEST 
    841546     -- bs.entstehungsartoderklimastufewasserverhaeltnisse AS entstehart, -- Array der Keys, NUR TEST 
    842547        ka.kurz AS kult,  -- Kulturart, CLASSITEM, steuert die Farbe 
    843548     -- Viele Felder zusammen packen zu einem kompakten Zwei-Zeilen-Label: 
    844           ba.kurz  ||            -- Bodenart 
    845           zs.kurz  ||            -- Zustandsstufe 
    846           ea1.kurz ||            -- Entstehungsart oder Klimastufe, Wasserverhaeltnisse ist ein Array mit 1 bis 2 Elementen 
     549          ba.kurz  ||             -- Bodenart 
     550          zs.kurz  ||             -- Zustandsstufe 
     551          ea1.kurz ||             -- Entstehungsart oder Klimastufe, Wasserverhaeltnisse ist ein Array mit 1 bis 2 Elementen 
    847552          coalesce (ea2.kurz, '') -- NULL vermeiden! 
    848           || ' ' ||              -- Zeilenwechsel im Label (UMN: WRAP) 
     553          || ' ' ||               -- Zeilenwechsel im Label (UMN: WRAP) 
    849554          bs.bodenzahlodergruenlandgrundzahl || '/' || 
    850555          bs.ackerzahlodergruenlandzahl  
    851         AS derlabel              -- LABELITEM Umbruch am Blank 
    852    FROM ax_bodenschaetzung bs 
     556        AS derlabel               -- LABELITEM Umbruch am Blank 
     557   FROM      ax_bodenschaetzung bs 
    853558   LEFT JOIN ax_bodenschaetzung_kulturart      ka ON bs.kulturart = ka.wert 
    854559   LEFT JOIN ax_bodenschaetzung_bodenart       ba ON bs.bodenart  = ba.wert 
     
    859564          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[2] = ea2.wert   -- [2] manchmal gefÃŒllt 
    860565   WHERE bs.endet IS NULL; 
     566 
    861567COMMENT ON VIEW s_bodensch_wms IS 'Sicht fÃŒr Kartendarstellung: BodenschÀtzung mit kompakten Informationen fÃŒr Label.'; 
    862568 
     
    873579   FROM ax_bodenschaetzung 
    874580  WHERE endet IS NULL; 
     581 
    875582COMMENT ON VIEW s_bodensch_po IS 'Sicht fÃŒr Kartendarstellung: KlassenflÀche der BodenschÀtzung ohne Label.'; 
    876583 
     
    896603          bs.ackerzahlodergruenlandzahl  
    897604        AS derlabel                -- LABELITEM, Umbruch am Leerzeichen 
    898    FROM ap_pto                            p 
    899    JOIN alkis_beziehungen                 v  ON p.gml_id       = v.beziehung_von 
    900    JOIN ax_bodenschaetzung                bs ON v.beziehung_zu = bs.gml_id 
     605   FROM ap_pto                                 p 
     606   JOIN ax_bodenschaetzung                     bs ON bs.gml_id = ANY(p.dientzurdarstellungvon) 
    901607   LEFT JOIN ax_bodenschaetzung_kulturart      ka ON bs.kulturart = ka.wert 
    902608   LEFT JOIN ax_bodenschaetzung_bodenart       ba ON bs.bodenart  = ba.wert 
     
    906612   LEFT JOIN ax_bodenschaetzung_entstehungsartoderklimastufe ea2  
    907613          ON bs.entstehungsartoderklimastufewasserverhaeltnisse[2] = ea2.wert  
    908   WHERE -- v.beziehungsart = 'dientZurDarstellungVon' AND  
    909          p.endet  IS NULL 
     614  WHERE  p.endet  IS NULL 
    910615     AND bs.endet IS NULL; 
    911 COMMENT ON VIEW s_bodensch_tx IS 'Sicht fÃŒr Kartendarstellung: Kompakter Label zur KlassenflÀche der BodenschÀtzung an manueller Position. Der Label wird zusammengesetzt aus: Bodenart, Zustandsstufe, Entstehungsart oder Klimastufe/WasserverhÀltnisse, Bodenzahl oder GrÃŒnlandgrundzahl und Ackerzahl oder GrÃŒnlandzahl.'; 
     616 
     617COMMENT ON VIEW s_bodensch_tx IS 'Sicht fÃŒr Kartendarstellung: Kompakter Label zur KlassenflÀche der BodenschÀtzung an manueller Position.  
     618Der Label wird zusammengesetzt aus: Bodenart, Zustandsstufe, Entstehungsart oder Klimastufe/WasserverhÀltnisse, Bodenzahl oder GrÃŒnlandgrundzahl und Ackerzahl oder GrÃŒnlandzahl.'; 
    912619 
    913620-- Redundanz suchen: 
Note: See TracChangeset for help on using the changeset viewer.