source: trunk/import/Flurst_Oeff_Eigentum/oeff_FS_gkz.sql @ 429

Revision 429, 8.7 KB checked in by frank.jaeger, 2 years ago (diff)

WMS Flurstücke im öffentlichen Eigentum, Mapfile und SQL-Views.

Line 
1
2-- ====================================================================================================================
3-- FlurstÃŒcke im öffentlichen Besitz aus ALKIS selektieren fÃŒr WMS  -  Ebenen "Stadt" und "Kreis",  GKZ-spezifisch
4-- ====================================================================================================================
5
6-- Hier: Muster fÌr die Veröffentlichung.
7-- Der String *gkz* ist durch die Mandanten-Nummer (Gemeinde-Kenn-Ziffer) zu ersetzen.
8-- Individuelle Bearbeitung fÃŒr jeden Mandanten notwendig. Die Namen der vorkommenden EigentÃŒmer mÃŒssen analysiert und angepasst werden.
9
10-- Stand:
11--  2018-11-21 Erweiterung/Aufteilung [Stadt/Kreis/Sonstige]/[Land/Bund]
12
13-- Der WMS (aus View "oeff_flurst[gkz][s|k|l|b][e|r]") wird langsam, wenn er in einer kreisweiten Datenbank ausgefÃŒhrt wird.
14-- Das Filter-Feld benötigt einen Index:
15--DROP INDEX if exists ax_person_nname;
16CREATE INDEX ax_person_nname
17  ON ax_person USING btree (nachnameoderfirma COLLATE pg_catalog."default");
18
19
20-- ----------------------------------------------
21-- S t a d t
22-- ----------------------------------------------
23 
24-- Version "Eigentum"
25--        DROP    VIEW oeff_flurst*gkz*se;
26CREATE OR REPLACE VIEW oeff_flurst*gkz*se
27AS
28  SELECT f.gml_id, f.wkb_geometry
29  FROM ax_flurstueck     f                                    -- FlurstÃŒck
30  JOIN ax_buchungsstelle s  ON f.istgebucht = s.gml_id        -- Buchungs-Stelle
31  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
32  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
33  JOIN ax_person p          ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
34 WHERE f.endet  IS NULL
35   AND s.endet  IS NULL
36   AND gb.endet IS NULL
37   AND nn.endet IS NULL
38   AND p.endet  IS NULL
39   AND p.nachnameoderfirma LIKE 'Stadt ___%'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
40
41COMMENT ON VIEW oeff_flurst*gkz*se  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *S*tadt (___) *E*igentum. FÃŒr WMS: nur ID und Geometrie.';
42GRANT SELECT ON TABLE oeff_flurst*gkz*se TO ms7;
43
44
45-- Version "Recht an"
46--        DROP    VIEW oeff_flurst*gkz*sr;
47CREATE OR REPLACE VIEW oeff_flurst*gkz*sr
48AS
49  SELECT  f.gml_id, di.buchungsart, -- Buchungsart der dienenden Buchung
50     f.wkb_geometry
51  FROM ax_flurstueck     f                                    -- FlurstÃŒck
52  JOIN ax_buchungsstelle di ON f.istgebucht = di.gml_id       -- dienende Buchung
53  JOIN ax_buchungsstelle s  ON di.gml_id = ANY (s.an)         -- herrschende Buchung
54  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
55  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
56  JOIN ax_person         p  ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
57 WHERE f.endet  IS NULL
58   AND di.endet IS NULL
59   AND s.endet  IS NULL
60   AND gb.endet IS NULL
61   AND nn.endet IS NULL
62   AND p.endet  IS NULL
63   AND p.nachnameoderfirma LIKE 'Stadt ___%'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
64
65COMMENT ON VIEW oeff_flurst*gkz*sr  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *S*tadt (Lage) *R*echte. FÃŒr WMS: nur ID, Buchungsart und Geometrie.';
66GRANT SELECT ON TABLE oeff_flurst*gkz*sr TO ms7;
67
68
69-- ----------------------------------------------
70-- K r e i s
71-- ----------------------------------------------
72
73-- Version "Eigentum"
74--        DROP    VIEW oeff_flurst*gkz*ke;
75CREATE OR REPLACE VIEW oeff_flurst*gkz*ke
76AS
77  SELECT
78     f.gml_id,         -- UNIQUE KEY 
79     f.wkb_geometry
80  FROM ax_flurstueck     f                                    -- FlurstÃŒck
81  JOIN ax_buchungsstelle s  ON f.istgebucht = s.gml_id        -- Buchungs-Stelle
82  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
83  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
84  JOIN ax_person p          ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
85 WHERE f.endet  IS NULL
86   AND s.endet  IS NULL
87   AND gb.endet IS NULL
88   AND nn.endet IS NULL
89   AND p.endet  IS NULL
90   AND p.nachnameoderfirma = 'Kreis ___'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
91
92
93COMMENT ON VIEW oeff_flurst*gkz*ke  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *K*reis *E*igentum. FÃŒr WMS: nur ID und Geometrie.';
94GRANT SELECT ON TABLE oeff_flurst*gkz*ke TO ms7;
95
96
97-- Version "Recht an"
98--        DROP    VIEW oeff_flurst*gkz*kr;
99CREATE OR REPLACE VIEW oeff_flurst*gkz*kr
100AS
101  SELECT
102     f.gml_id,       -- UNIQUE KEY
103     s.buchungsart,  -- Buchungsart
104     f.wkb_geometry
105  FROM ax_flurstueck     f                                    -- FlurstÃŒck
106  JOIN ax_buchungsstelle di ON f.istgebucht = di.gml_id       -- dienende Buchung
107  JOIN ax_buchungsstelle s  ON di.gml_id = ANY (s.an)         -- herrschende Buchung
108  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
109  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
110  JOIN ax_person         p  ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
111 WHERE f.endet  IS NULL
112   AND di.endet IS NULL
113   AND s.endet  IS NULL
114   AND gb.endet IS NULL
115   AND nn.endet IS NULL
116   AND p.endet  IS NULL
117   AND p.nachnameoderfirma = 'Kreis ___'; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
118
119COMMENT ON VIEW oeff_flurst*gkz*kr  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *K*reis *R*echte. FÃŒr WMS: nur ID, Buchungsart und Geometrie.';
120GRANT SELECT ON TABLE oeff_flurst*gkz*kr TO ms7;
121
122-- auch QGIS
123GRANT SELECT ON TABLE oeff_flurst*gkz*kr TO balkis0*gkz*;
124
125
126-- ----------------------------------------------
127-- A n d e r e
128-- ----------------------------------------------
129 
130-- Version "Eigentum"
131--        DROP    VIEW oeff_flurst*gkz*ae;
132CREATE OR REPLACE VIEW oeff_flurst*gkz*ae
133AS
134  SELECT
135     f.gml_id,         -- UNIQUE KEY 
136     f.wkb_geometry
137  FROM ax_flurstueck     f                                    -- FlurstÃŒck
138  JOIN ax_buchungsstelle s  ON f.istgebucht = s.gml_id        -- Buchungs-Stelle
139  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
140  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
141  JOIN ax_person p          ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
142 WHERE f.endet  IS NULL
143   AND s.endet  IS NULL
144   AND gb.endet IS NULL
145   AND nn.endet IS NULL
146   AND p.endet  IS NULL
147   AND ( p.nachnameoderfirma LIKE 'Stadtwerke%'
148     OR  p.nachnameoderfirma LIKE 'Landesverband Lippe%'
149     OR  p.nachnameoderfirma LIKE 'Werre-Wasserverband%'
150     OR  p.nachnameoderfirma LIKE 'Landschaftsverband Westfalen Lippe%'
151     OR (p.nachnameoderfirma LIKE 'Stadt %' AND NOT p.nachnameoderfirma LIKE 'Stadt ___%')  -- Nachbar-Stadt
152     ) ; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
153
154
155COMMENT ON VIEW oeff_flurst*gkz*ae  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *A*ndere *E*igentum. FÃŒr WMS: nur ID und Geometrie.';
156GRANT SELECT ON TABLE oeff_flurst*gkz*ae TO ms7;
157
158-- auch QGIS
159GRANT SELECT ON TABLE oeff_flurst*gkz*ae TO balkis0*gkz*;
160
161-- Version "Recht an"
162--        DROP    VIEW oeff_flurst*gkz*ar;
163CREATE OR REPLACE VIEW oeff_flurst*gkz*ar
164AS
165  SELECT
166     f.gml_id,       -- UNIQUE KEY
167     s.buchungsart,  -- Buchungsart
168     f.wkb_geometry
169  FROM ax_flurstueck     f                                    -- FlurstÃŒck
170  JOIN ax_buchungsstelle di ON f.istgebucht = di.gml_id       -- dienende Buchung
171  JOIN ax_buchungsstelle s  ON di.gml_id = ANY (s.an)         -- herrschende Buchung
172  JOIN ax_buchungsblatt  gb ON gb.gml_id=s.istbestandteilvon  -- Buchung >istBestandteilVon> Blatt
173  JOIN ax_namensnummer   nn ON gb.gml_id=nn.istbestandteilvon -- Blatt <istBestandteilVon< NamNum
174  JOIN ax_person         p  ON p.gml_id=nn.benennt            -- NamNum  >benennt> Person
175 WHERE f.endet  IS NULL
176   AND di.endet IS NULL
177   AND s.endet  IS NULL
178   AND gb.endet IS NULL
179   AND nn.endet IS NULL
180   AND p.endet  IS NULL
181   AND ( p.nachnameoderfirma LIKE 'Stadtwerke%'
182     OR  p.nachnameoderfirma LIKE 'Landesverband Lippe%'
183     OR  p.nachnameoderfirma LIKE 'Werre-Wasserverband%'
184     OR  p.nachnameoderfirma LIKE 'Landschaftsverband Westfalen Lippe%'
185     OR (p.nachnameoderfirma LIKE 'Stadt %' AND NOT p.nachnameoderfirma LIKE 'Stadt ___%')
186     ) ; -- ** EIGENTÜMER / ERBBAUBERECHTIGTER **
187
188COMMENT ON VIEW oeff_flurst*gkz*ar  IS 'FlurstÃŒcke in Öffentlichen Besitz. Hier: *A*ndere *R*echte. FÃŒr WMS: nur ID, Buchungsart und Geometrie.';
189GRANT SELECT ON TABLE oeff_flurst*gkz*ar TO ms7;
190
191-- the HAPPY end --
Note: See TracBrowser for help on using the repository browser.