1 | |
---|
2 | -- =================================================================================== |
---|
3 | -- ALKIS-PostGIS Mapbender-Navigation und Buchauskunft fÃŒr NorGIS-ALKIS-Importer |
---|
4 | -- =================================================================================== |
---|
5 | |
---|
6 | --Stand 2016-02-23 |
---|
7 | |
---|
8 | -- Aufgabe: |
---|
9 | -- |
---|
10 | -- Die ALKIS-Navigation fÃŒr Mapbender 2.7.4 arbeitet bisher mit der Datenbank-Struktur |
---|
11 | -- aus dem "Klassischen" Import mit Aufruf des Konvertres ogr2ogr aus einen Shellscript. |
---|
12 | -- |
---|
13 | -- Dabei wird ein PostProcessing (Nach-Konverter-Verarbeitung) durchgefÃŒhrt, |
---|
14 | -- das Tabellen und Views bereit stellt, fÃŒr einen schnellen Zugriff in |
---|
15 | -- Mapfile, Auskunft und Navigation. |
---|
16 | -- |
---|
17 | -- Dies Script soll eine Datenbank, die mit dem NorGIS-ALKIS-Importer geladen wurde |
---|
18 | -- fÃŒr die Verwendung mit ALKIS-Navigation vorbereiten. |
---|
19 | -- Es ist jedoch eine speziell angepasste Version der NAV-PHP-Scripte notwendig. |
---|
20 | |
---|
21 | -- Alternative: |
---|
22 | -- Die bisher auch in der NAV verwendeten Tabellen "pp_flur", "pp_gemarkung", "pp_gemeinde" |
---|
23 | -- werden auch fÃŒr eine "Ãbersichtskarte" benötigt (Gruppe "Gebiete" im Classic-Mapfile). |
---|
24 | -- Um diese zu bekommen mÃŒsste dieser Teil des klassischen Post-Processing auch in der |
---|
25 | -- NorGIS-Version ausgefÃŒhrt wÃŒrde. |
---|
26 | -- Siehe Script: "pp_gebiete.sql" (FÃŒllen) und Teile von "pp_definition.sql" (DB-Struktur). |
---|
27 | |
---|
28 | |
---|
29 | -- Die Beziehungen werden immer noch mit geladen, sind aber inzwischen ÃŒberflÃŒssig, |
---|
30 | -- weil jetzt Relationen zwischen den Tabellen definiert sind. |
---|
31 | TRUNCATE alkis_beziehungen; |
---|
32 | |
---|
33 | |
---|
34 | -- Bausteine fÃŒr andere Views: |
---|
35 | -- --------------------------- |
---|
36 | |
---|
37 | -- Ein View, der die Verbindung von FlurstÌck zur Buchung fÌr zwei verschiedene FÀlle herstellt. |
---|
38 | -- Einmal die "normalen" (direkten) Buchungen. |
---|
39 | -- Zweitens ÃŒber die Rechte von Buchungsstellen an anderen Buchungsstellen. |
---|
40 | -- Dies kann als "MittelstÃŒck" in den anderen Views eingefÃŒgt werden. |
---|
41 | |
---|
42 | -- Einfach/Direkt: |
---|
43 | -- FlurstÃŒck >istGebucht> (Buchungs-Stelle) |
---|
44 | -- |
---|
45 | -- Mit "Recht an": |
---|
46 | -- FlurstÃŒck >istGebucht> Buchungs-Stelle <an< (Buchungs-Stelle) |
---|
47 | -- (dienend) (herrschend) |
---|
48 | |
---|
49 | -- DROP VIEW public.doppelverbindung; |
---|
50 | CREATE OR REPLACE VIEW public.doppelverbindung |
---|
51 | AS |
---|
52 | -- FS >istGebucht> Buchungstelle |
---|
53 | SELECT f1.gml_id AS fsgml, -- gml_id FlurstÃŒck |
---|
54 | b1.gml_id AS bsgml, -- gml_id Buchungs |
---|
55 | 0 AS ba_dien |
---|
56 | FROM ax_flurstueck f1 |
---|
57 | JOIN ax_buchungsstelle b1 ON f1.istgebucht = b1.gml_id |
---|
58 | UNION |
---|
59 | -- FS >istGebucht> Buchungstelle <an< Buchungstelle |
---|
60 | SELECT f2.gml_id AS fsgml, -- gml_id FlurstÃŒck |
---|
61 | b2.gml_id AS bsgml, -- gml_id Buchung - (herrschendes GB) |
---|
62 | dien.buchungsart AS ba_dien -- Ein Feld aus der Zwischen-Buchung zur Fall-Unterscheidung |
---|
63 | FROM ax_flurstueck f2 |
---|
64 | JOIN ax_buchungsstelle dien ON f2.istgebucht = dien.gml_id |
---|
65 | JOIN ax_buchungsstelle b2 ON dien.gml_id = ANY (b2.an) -- auch "zu" ? |
---|
66 | WHERE dien.endet IS NULL; -- FÃŒr das zusÀtzliche Verbindungselement die Historie HIER ausschlieÃen, |
---|
67 | -- FÃŒr andere Tabellen muss dies in dem View erfolgen, der dies verwendet. |
---|
68 | |
---|
69 | COMMENT ON VIEW public.doppelverbindung |
---|
70 | IS 'ALKIS-Beziehung von FlurstÃŒck zu Buchung. UNION-Zusammenfassung des einfachen Falls mit direkter Buchung und des Falles mit Recht einer Buchungsstelle an einer anderen Buchungsstelle. |
---|
71 | Dies ist ausschlieÃlich gedacht zur Verwendung in anderen Views um diese einfacher zu machen.'; |
---|
72 | |
---|
73 | |
---|
74 | -- Ein View, der die Verbindung von FlurstÃŒck zur StraÃentabelle fÃŒr zwei verschiedene FÀlle herstellt. |
---|
75 | -- Einmal ÃŒber die Lagebezeichnung MIT Hausnummer und einmal OHNE. |
---|
76 | -- Dies kann als "MittelstÃŒck" in den anderen Views eingefÃŒgt werden. |
---|
77 | |
---|
78 | -- DROP VIEW public.flst_an_strasse; |
---|
79 | CREATE OR REPLACE VIEW public.flst_an_strasse |
---|
80 | AS |
---|
81 | -- FlurstÃŒck >weistAuf> ax_lagebezeichnungMIThausnummer <JOIN> ax_lagebezeichnungkatalogeintrag |
---|
82 | SELECT fm.gml_id AS fsgml, |
---|
83 | sm.gml_id AS stgml, -- Filter: gml_id der StraÃe |
---|
84 | 'm' AS fall -- SÀtze unterschieden: Mit HsNr |
---|
85 | FROM ax_flurstueck fm -- FlurstÃŒck Mit |
---|
86 | JOIN ax_lagebezeichnungmithausnummer lm -- Lage MIT |
---|
87 | ON lm.gml_id = ANY (fm.weistauf) |
---|
88 | JOIN ax_lagebezeichnungkatalogeintrag sm |
---|
89 | ON lm.land=sm.land AND lm.regierungsbezirk=sm.regierungsbezirk AND lm.kreis=sm.kreis AND lm.gemeinde=sm.gemeinde AND lm.lage=sm.lage |
---|
90 | WHERE lm.endet IS NULL AND fm.endet IS NULL -- nichts Historisches |
---|
91 | UNION |
---|
92 | -- FlurstÃŒck >zeigtAuf> ax_lagebezeichnungOHNEhausnummer <JOIN> ax_lagebezeichnungkatalogeintrag |
---|
93 | SELECT fo.gml_id AS fsgml, |
---|
94 | so.gml_id AS stgml, -- Filter: gml_id der StraÃe |
---|
95 | 'o' AS fall -- SÀtze unterschieden: Ohne HsNr |
---|
96 | FROM ax_flurstueck fo -- FlurstÃŒck OHNE |
---|
97 | JOIN ax_lagebezeichnungohnehausnummer lo -- Lage OHNE |
---|
98 | ON lo.gml_id = ANY (fo.zeigtauf) |
---|
99 | JOIN ax_lagebezeichnungkatalogeintrag so -- StraÃe OHNE |
---|
100 | ON lo.land=so.land AND lo.regierungsbezirk=so.regierungsbezirk AND lo.kreis=so.kreis AND lo.gemeinde=so.gemeinde AND lo.lage=so.lage |
---|
101 | WHERE lo.endet IS NULL AND fo.endet IS NULL; -- nichts Historisches |
---|
102 | |
---|
103 | COMMENT ON VIEW public.flst_an_strasse |
---|
104 | IS 'ALKIS-Beziehung von FlurstÃŒck zu StraÃentabelle. UNION-Zusammenfassung der FÀlle MIT und OHNE Hausnummer.'; |
---|
105 | |
---|
106 | -- Muss man noch dafÃŒr sorgen, dass FlurstÃŒck nicht doppelt vorkommt? z.B. mit DISTINCT |
---|
107 | -- Oder mÃŒssen ggf. mehrfache FS im Programm ÃŒbersprungen werden? |
---|
108 | |
---|
109 | -- Test-Ausgabe: |
---|
110 | -- SELECT * FROM flst_an_strasse WHERE stgml='DENW18AL000004Fl' LIMIT 40; |
---|
111 | |
---|
112 | |
---|
113 | -- Generelle Export-Struktur "FlurstÃŒck - Buchung - Grundbuch - Person" |
---|
114 | -- -------------------------------------------------------------------- |
---|
115 | -- Verwendet den gespeicherten View "doppelverbindung". |
---|
116 | -- Wird benötigt im Auskunft-Modul "alkisexport.php": |
---|
117 | -- Je nach aufrufendem Modul wird der Filter (WHERE) an anderer Stelle gesetzt (gml_id von FS, GB oder Pers.) |
---|
118 | -- FÃŒr Filter nach "StraÃe" siehe die nachfolgende Sonderversion "exp_csv_str". |
---|
119 | |
---|
120 | -- Problem / Konflikt: |
---|
121 | -- Es kann nur eine lineare Struktur aus Spalten und Zeilen exportiert werden. |
---|
122 | -- Wenn nicht nur die Daten des Ausgangs-Objektes exportiert werden, sondern auch verbundene Tabellen in |
---|
123 | -- einer 1:N-Struktur, dann verdoppeln sich Zeileninhalte und es werden redundante Daten erzeugt. |
---|
124 | -- Diese Redundanzen mÃŒssen vom dem Programm gefiltert werden, das die Daten ÃŒber eine Schnittstelle einliest. |
---|
125 | |
---|
126 | -- Anwendungs-Beispiel: Abrechnung von AnliegerbeitrÀgen. |
---|
127 | |
---|
128 | DROP VIEW IF EXISTS exp_csv; |
---|
129 | |
---|
130 | CREATE OR REPLACE VIEW exp_csv |
---|
131 | AS |
---|
132 | SELECT |
---|
133 | -- F l u r s t Ì c k |
---|
134 | f.gml_id AS fsgml, -- möglicher Filter FlurstÌcks-GML-ID |
---|
135 | f.flurstueckskennzeichen AS fs_kennz, |
---|
136 | f.gemarkungsnummer, -- Teile des FS-Kennz. noch mal einzeln |
---|
137 | f.flurnummer, f.zaehler, f.nenner, |
---|
138 | f.amtlicheflaeche AS fs_flae, |
---|
139 | g.bezeichnung AS gemarkung, |
---|
140 | |
---|
141 | -- G r u n d b u c h |
---|
142 | gb.gml_id AS gbgml, -- möglicher Filter Grundbuch-GML-ID |
---|
143 | gb.bezirk AS gb_bezirk, |
---|
144 | gb.buchungsblattnummermitbuchstabenerweiterung AS gb_blatt, |
---|
145 | z.bezeichnung AS beznam, -- GB-Bezirks-Name |
---|
146 | |
---|
147 | -- B u c h u n g s s t e l l e (GrundstÃŒck) |
---|
148 | s.laufendenummer AS bu_lfd, -- BVNR |
---|
149 | --s.zaehler, s.nenner, -- Anteil des GB am FS, einzelne Felder |
---|
150 | '=' || s.zaehler || '/' || s.nenner AS bu_ant, -- als Excel-Formel (nur bei Wohnungsgrundbuch JOIN ÃŒber 'Recht an') |
---|
151 | s.buchungsart, -- verschlÃŒsselt |
---|
152 | --b.bezeichner AS bu_art, -- Buchungsart entschlÃŒsselt |
---|
153 | wb.v AS bu_art, -- Buchungsart entschlÃŒsselt |
---|
154 | |
---|
155 | -- N a m e n s N u m m e r (Normalfall mit Person) |
---|
156 | nn.laufendenummernachdin1421 AS nam_lfd, |
---|
157 | '=' || nn.zaehler|| '/' || nn.nenner AS nam_ant, -- als Excel-Formel |
---|
158 | |
---|
159 | -- R e c h t s g e m e i n s c h a f t (Sonderfall von Namensnummer, ohne Person, ohne Nummer) |
---|
160 | -- Aus Subquery rg |
---|
161 | rg.artderrechtsgemeinschaft AS nam_adr, |
---|
162 | rg.v AS nam_adrv, -- Art der Rechtsgem. - Value zum Key |
---|
163 | rg.beschriebderrechtsgemeinschaft AS nam_bes, |
---|
164 | |
---|
165 | -- P e r s o n |
---|
166 | p.gml_id AS psgml, -- möglicher Filter Personen-GML-ID |
---|
167 | p.anrede, -- Anrede key |
---|
168 | wp.v AS anrv, -- Anrede Value zum Key |
---|
169 | p.vorname, |
---|
170 | p.namensbestandteil, |
---|
171 | p.nachnameoderfirma, -- Familienname |
---|
172 | p.geburtsdatum, |
---|
173 | --p.geburtsname, p.akademischergrad |
---|
174 | |
---|
175 | -- A d r e s s e der Person |
---|
176 | a.postleitzahlpostzustellung AS plz, |
---|
177 | a.ort_post AS ort, -- Anschreifenzeile 1: PLZ+Ort |
---|
178 | a.strasse, a.hausnummer, -- Anschriftenzeile 2: StraÃe+HsNr |
---|
179 | a.bestimmungsland AS land |
---|
180 | |
---|
181 | FROM ax_flurstueck f -- FlurstÃŒck |
---|
182 | JOIN doppelverbindung d -- beide FÀlle Ìber Union-View: direkt und Ìber Recht von Buchung an Buchung |
---|
183 | ON d.fsgml = f.gml_id |
---|
184 | JOIN ax_gemarkung g -- entschlÃŒsseln |
---|
185 | ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer |
---|
186 | JOIN ax_buchungsstelle s -- Buchungs-Stelle |
---|
187 | ON d.bsgml = s.gml_id |
---|
188 | JOIN ax_buchungsblatt gb -- Buchung >istBestandteilVon> Grundbuchblatt |
---|
189 | ON gb.gml_id = s.istbestandteilvon |
---|
190 | JOIN ax_buchungsblattbezirk z |
---|
191 | ON gb.land=z.land AND gb.bezirk=z.bezirk |
---|
192 | JOIN ax_namensnummer nn -- Blatt <istBestandteilVon< NamNum |
---|
193 | ON gb.gml_id = nn.istbestandteilvon |
---|
194 | JOIN ax_person p -- NamNum >benennt> Person |
---|
195 | ON p.gml_id = nn.benennt |
---|
196 | LEFT JOIN ax_anschrift a |
---|
197 | ON a.gml_id = ANY (p.hat) |
---|
198 | -- E n t s c h l Ì s s e l n: |
---|
199 | LEFT JOIN alkis_wertearten wp -- EntschlÃŒsseln "Person - Anrede" |
---|
200 | ON cast(p.anrede AS character varying)=wp.k AND wp.element='ax_person' AND wp.bezeichnung='anrede' |
---|
201 | LEFT JOIN alkis_wertearten wb -- EntschlÃŒsseln "Buchungsart" |
---|
202 | ON cast(s.buchungsart AS character varying)=wb.k AND wp.element='ax_buchungsstelle' AND wp.bezeichnung='buchungsart' |
---|
203 | |
---|
204 | -- 2mal "LEFT JOIN" verdoppelt die Zeile in der Ausgabe. Darum als Subquery in Spalten packen: |
---|
205 | -- Noch mal "GB -> NamNum", aber dieses Mal fÃŒr "Rechtsgemeinschaft". |
---|
206 | -- Kommt max. 1 mal je GB vor und hat keine Relation auf Person. |
---|
207 | LEFT JOIN |
---|
208 | ( SELECT gr.gml_id, r.artderrechtsgemeinschaft, r.beschriebderrechtsgemeinschaft, wr.v |
---|
209 | FROM ax_namensnummer r |
---|
210 | JOIN ax_buchungsblatt gr |
---|
211 | ON r.istbestandteilvon = gr.gml_id -- Blatt <istBestandteilVon< NamNum (Rechtsgemeinschaft) |
---|
212 | LEFT JOIN alkis_wertearten wr |
---|
213 | ON cast(r.artderrechtsgemeinschaft AS character varying)=wr.k AND wr.element='ax_namensnummer' AND wr.bezeichnung='artderrechtsgemeinschaft' |
---|
214 | WHERE NOT r.artderrechtsgemeinschaft IS NULL ) AS rg -- Rechtsgemeinschaft |
---|
215 | ON rg.gml_id = gb.gml_id -- zum GB |
---|
216 | |
---|
217 | WHERE f.endet IS NULL AND s.endet IS NULL and gb.endet IS NULL and nn.endet IS NULL AND p.endet IS NULL |
---|
218 | |
---|
219 | ORDER BY f.flurstueckskennzeichen, |
---|
220 | gb.bezirk, gb.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer, |
---|
221 | nn.laufendenummernachdin1421; |
---|
222 | |
---|
223 | COMMENT ON VIEW exp_csv |
---|
224 | IS 'View fÃŒr einen CSV-Export aus der Buchauskunft mit alkisexport.php. Generelle Struktur. FÃŒr eine bestimmte gml_id noch den Filter setzen.'; |
---|
225 | |
---|
226 | |
---|
227 | -- Variante des View "exp_csv": |
---|
228 | -- Hier wird zusÀtzlich der Baustein "flst_an_strasse" verwendet. |
---|
229 | -- Der Filter "WHERE stgml= " auf die "gml_id" von "ax_lagebezeichnungkatalogeintrag" sollte gesetzt werden |
---|
230 | -- um alle FlurstÃŒcke zu bekommen, die an einer StraÃe liegen. |
---|
231 | |
---|
232 | |
---|
233 | DROP VIEW IF EXISTS exp_csv_str; |
---|
234 | |
---|
235 | CREATE OR REPLACE VIEW exp_csv_str |
---|
236 | AS |
---|
237 | SELECT |
---|
238 | l.stgml, -- Filter: gml_id aus "ax_lagebezeichnungkatalogeintrag" |
---|
239 | -- UNTERSCHIED zu exp_csv) |
---|
240 | -- F l u r s t Ì c k |
---|
241 | f.gml_id AS fsgml, -- Gruppenwechsel fÃŒr "function lage_zum_fs" in alkisexport.php |
---|
242 | f.flurstueckskennzeichen AS fs_kennz, |
---|
243 | f.gemarkungsnummer, -- Teile des FS-Kennz. noch mal einzeln |
---|
244 | f.flurnummer, f.zaehler, f.nenner, |
---|
245 | f.amtlicheflaeche AS fs_flae, |
---|
246 | g.bezeichnung AS gemarkung, |
---|
247 | |
---|
248 | -- G r u n d b u c h |
---|
249 | --gb.gml_id AS gbgml, -- möglicher Filter Grundbuch-GML-ID |
---|
250 | gb.bezirk AS gb_bezirk, |
---|
251 | gb.buchungsblattnummermitbuchstabenerweiterung AS gb_blatt, |
---|
252 | z.bezeichnung AS beznam, -- GB-Bezirks-Name |
---|
253 | |
---|
254 | -- B u c h u n g s s t e l l e (GrundstÃŒck) |
---|
255 | s.laufendenummer AS bu_lfd, -- BVNR |
---|
256 | --s.zaehler, s.nenner, -- Anteil des GB am FS, einzelne Felder |
---|
257 | '=' || s.zaehler || '/' || s.nenner AS bu_ant, -- als Excel-Formel (nur bei Wohnungsgrundbuch JOIN ÃŒber 'Recht an') |
---|
258 | s.buchungsart, -- verschlÃŒsselt |
---|
259 | wb.v AS bu_art, -- Buchungsart entschlÃŒsselt |
---|
260 | |
---|
261 | -- N a m e n s N u m m e r (Normalfall mit Person) |
---|
262 | nn.laufendenummernachdin1421 AS nam_lfd, |
---|
263 | '=' || nn.zaehler|| '/' || nn.nenner AS nam_ant, -- als Excel-Formel |
---|
264 | |
---|
265 | -- R e c h t s g e m e i n s c h a f t (Sonderfall von Namensnummer, ohne Person, ohne Nummer) |
---|
266 | -- Aus Subquery rg |
---|
267 | rg.artderrechtsgemeinschaft AS nam_adr, |
---|
268 | rg.v AS nam_adrv, -- Art der Rechtsgem. - Value zum Key |
---|
269 | rg.beschriebderrechtsgemeinschaft AS nam_bes, |
---|
270 | |
---|
271 | -- P e r s o n |
---|
272 | --p.gml_id AS psgml, -- möglicher Filter Personen-GML-ID |
---|
273 | p.anrede, -- Anrede key |
---|
274 | wp.v AS anrv, -- Anrede Value zum Key |
---|
275 | p.vorname, |
---|
276 | p.namensbestandteil, |
---|
277 | p.nachnameoderfirma, -- Familienname |
---|
278 | p.geburtsdatum, |
---|
279 | --p.geburtsname, p.akademischergrad |
---|
280 | |
---|
281 | -- A d r e s s e der Person |
---|
282 | a.postleitzahlpostzustellung AS plz, |
---|
283 | a.ort_post AS ort, -- Anschreifenzeile 1: PLZ+Ort |
---|
284 | a.strasse, a.hausnummer, -- Anschriftenzeile 2: StraÃe+HsNr |
---|
285 | a.bestimmungsland AS land |
---|
286 | |
---|
287 | FROM ax_flurstueck f -- FlurstÃŒck |
---|
288 | JOIN flst_an_strasse l -- Lage (hier zusÀtzlicher JOIN gegenÌber Version "exp_csv") |
---|
289 | ON l.fsgml = f.gml_id |
---|
290 | JOIN doppelverbindung d -- beide FÀlle Ìber Union-View: direkt und Ìber Recht von Buchung an Buchung |
---|
291 | ON d.fsgml = f.gml_id |
---|
292 | JOIN ax_gemarkung g -- entschlÃŒsseln |
---|
293 | ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer |
---|
294 | JOIN ax_buchungsstelle s -- Buchungs-Stelle |
---|
295 | ON d.bsgml = s.gml_id |
---|
296 | JOIN ax_buchungsblatt gb -- Buchung >istBestandteilVon> Grundbuchblatt |
---|
297 | ON gb.gml_id = s.istbestandteilvon |
---|
298 | JOIN ax_buchungsblattbezirk z |
---|
299 | ON gb.land=z.land AND gb.bezirk=z.bezirk |
---|
300 | JOIN ax_namensnummer nn -- Blatt <istBestandteilVon< NamNum |
---|
301 | ON gb.gml_id = nn.istbestandteilvon |
---|
302 | JOIN ax_person p -- NamNum >benennt> Person |
---|
303 | ON p.gml_id = nn.benennt |
---|
304 | LEFT JOIN ax_anschrift a |
---|
305 | ON a.gml_id = ANY (p.hat) |
---|
306 | -- E n t s c h l Ì s s e l n: |
---|
307 | LEFT JOIN alkis_wertearten wp -- EntschlÃŒsseln "Person - Anrede" |
---|
308 | ON cast(p.anrede AS character varying)=wp.k AND wp.element='ax_person' AND wp.bezeichnung='anrede' |
---|
309 | LEFT JOIN alkis_wertearten wb -- EntschlÃŒsseln "Buchungsart" |
---|
310 | ON cast(s.buchungsart AS character varying)=wb.k AND wp.element='ax_buchungsstelle' AND wp.bezeichnung='buchungsart' |
---|
311 | |
---|
312 | -- 2mal "LEFT JOIN" verdoppelt die Zeile in der Ausgabe. Darum als Subquery in Spalten packen: |
---|
313 | -- Noch mal "GB -> NamNum", aber dieses Mal fÃŒr "Rechtsgemeinschaft". |
---|
314 | -- Kommt max. 1 mal je GB vor und hat keine Relation auf Person. |
---|
315 | LEFT JOIN |
---|
316 | ( SELECT gr.gml_id, r.artderrechtsgemeinschaft, r.beschriebderrechtsgemeinschaft, wr.v |
---|
317 | FROM ax_namensnummer r |
---|
318 | JOIN ax_buchungsblatt gr |
---|
319 | ON r.istbestandteilvon = gr.gml_id -- Blatt <istBestandteilVon< NamNum (Rechtsgemeinschaft) |
---|
320 | LEFT JOIN alkis_wertearten wr |
---|
321 | ON cast(r.artderrechtsgemeinschaft AS character varying)=wr.k AND wr.element='ax_namensnummer' AND wr.bezeichnung='artderrechtsgemeinschaft' |
---|
322 | WHERE NOT r.artderrechtsgemeinschaft IS NULL ) AS rg -- Rechtsgemeinschaft |
---|
323 | ON rg.gml_id = gb.gml_id -- zum GB |
---|
324 | |
---|
325 | WHERE f.endet IS NULL AND s.endet IS NULL and gb.endet IS NULL and nn.endet IS NULL AND p.endet IS NULL |
---|
326 | |
---|
327 | ORDER BY f.flurstueckskennzeichen, |
---|
328 | gb.bezirk, gb.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer, |
---|
329 | nn.laufendenummernachdin1421; |
---|
330 | |
---|
331 | COMMENT ON VIEW exp_csv_str |
---|
332 | IS 'View fÃŒr einen CSV-Export aus der Buchauskunft mit alkisexport.php. Liefert nur FlurstÃŒcke, die eine Lagebezeichnung MIT/OHNE Hausnummer haben. Dazu noch den Filter auf GML-ID der StraÃentabelle setzen.'; |
---|
333 | |
---|
334 | |
---|
335 | -- B e r e c h t i g u n g e n |
---|
336 | -- ============================ |
---|
337 | -- Analog "grant.sql" |
---|
338 | -- Die ALKIS-Navigation fÃŒr Mapbender 2.7 und die Buchauskunft verwendet den DB-User "mb27" |
---|
339 | |
---|
340 | -- Tabellen der ALKIS-Struktur |
---|
341 | -- ----------------------------------------------------------------------- |
---|
342 | |
---|
343 | GRANT SELECT ON TABLE public.ap_pto TO mb27; |
---|
344 | |
---|
345 | GRANT SELECT ON TABLE public.ax_anschrift TO mb27; |
---|
346 | GRANT SELECT ON TABLE public.ax_bauraumoderbodenordnungsrecht TO mb27; |
---|
347 | GRANT SELECT ON TABLE public.ax_besondereflurstuecksgrenze TO mb27; |
---|
348 | GRANT SELECT ON TABLE public.ax_buchungsblatt TO mb27; |
---|
349 | GRANT SELECT ON TABLE public.ax_buchungsblattbezirk TO mb27; |
---|
350 | GRANT SELECT ON TABLE public.ax_buchungsstelle TO mb27; |
---|
351 | GRANT SELECT ON TABLE public.ax_bundesland TO mb27; |
---|
352 | GRANT SELECT ON TABLE public.ax_dienststelle TO mb27; |
---|
353 | GRANT SELECT ON TABLE public.ax_flurstueck TO mb27; |
---|
354 | GRANT SELECT ON TABLE public.ax_gebaeude TO mb27; |
---|
355 | GRANT SELECT ON TABLE public.ax_gemarkung TO mb27; |
---|
356 | GRANT SELECT ON TABLE public.ax_gemarkungsteilflur TO mb27; |
---|
357 | GRANT SELECT ON TABLE public.ax_gemeinde TO mb27; |
---|
358 | GRANT SELECT ON TABLE public.ax_historischesflurstueck TO mb27; |
---|
359 | GRANT SELECT ON TABLE public.ax_historischesflurstueckohneraumbezug TO mb27; |
---|
360 | GRANT SELECT ON TABLE public.ax_kreisregion TO mb27; |
---|
361 | GRANT SELECT ON TABLE public.ax_lagebezeichnungkatalogeintrag TO mb27; |
---|
362 | GRANT SELECT ON TABLE public.ax_lagebezeichnungmithausnummer TO mb27; |
---|
363 | GRANT SELECT ON TABLE public.ax_lagebezeichnungmitpseudonummer TO mb27; |
---|
364 | GRANT SELECT ON TABLE public.ax_lagebezeichnungohnehausnummer TO mb27; |
---|
365 | GRANT SELECT ON TABLE public.ax_namensnummer TO mb27; |
---|
366 | GRANT SELECT ON TABLE public.ax_person TO mb27; |
---|
367 | GRANT SELECT ON TABLE public.ax_regierungsbezirk TO mb27; |
---|
368 | |
---|
369 | -- Tabellen der norGIS-Metadaten (Ersatz fÃŒr SchlÃŒssel-Tabellen ) |
---|
370 | -- ----------------------------------------------------------------------- |
---|
371 | GRANT SELECT ON TABLE public.alkis_elemente TO mb27; |
---|
372 | GRANT SELECT ON TABLE public.alkis_wertearten TO mb27; |
---|
373 | |
---|
374 | -- Tabellen des norGIS-PostProcessing (Ersatz Classic-Post-Processing) |
---|
375 | -- ----------------------------------------------------------------------- |
---|
376 | -- Dies muss nach einer Datenbank-Aktualisierung neu berechtigt werden |
---|
377 | GRANT SELECT ON TABLE public.gem_shl TO mb27; |
---|
378 | GRANT SELECT ON TABLE public.gema_shl TO mb27; |
---|
379 | GRANT SELECT ON TABLE public.nutz_21 TO mb27; |
---|
380 | GRANT SELECT ON TABLE public.nutz_shl TO mb27; |
---|
381 | |
---|
382 | -- Berechtigung fuer Views |
---|
383 | -- ----------------------------------------------------------------------- |
---|
384 | |
---|
385 | -- Bausteine fÃŒr andere Views |
---|
386 | GRANT SELECT ON TABLE public.doppelverbindung TO mb27; |
---|
387 | GRANT SELECT ON TABLE public.flst_an_strasse TO mb27; |
---|
388 | |
---|
389 | -- alkis_export als CSV |
---|
390 | GRANT SELECT ON TABLE public.exp_csv TO mb27; |
---|
391 | GRANT SELECT ON TABLE public.exp_csv_str TO mb27; |
---|
392 | |
---|
393 | -- Ende -- |
---|