Changeset 301 for trunk/import
- Timestamp:
- 01/17/14 09:51:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/import/sichten.sql
r298 r301 8 8 9 9 -- Dieses SQL braucht nur bei Bedarf in einer PostNAS-DB verarbeitet werden. 10 -- Es werden zusÀtzliche Views ein egerichtet, die nur bei Fehlersuche und Analys(vom Entwickler) benötigt werden.10 -- Es werden zusÀtzliche Views eingerichtet, die nur bei Fehlersuche und Analyse (vom Entwickler) benötigt werden. 11 11 12 12 -- PostNAS 0.7 … … 23 23 -- 2013-10-23 Fehlersuche GebÀude-Hausnummer-Relation 24 24 -- 2013-11-26 Neue Views (doppelverbindung) 25 -- 2014-01-17 View "exp_csv" fÃŒr den Export von CSV-Daten aus der Auskunft mit Modul alkisexport.php. 25 26 26 27 … … 66 67 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.'; 67 68 68 -- Ende "Bausteine"69 70 71 69 -- Test-Ausgabe: Ein paar FÀlle mit "Recht an" 72 70 -- SELECT * FROM doppelverbindung WHERE ba_dien > 0 LIMIT 20; 71 72 -- Ende "Bausteine" 73 74 75 76 -- Generelle Export-Struktur FlurstÃŒck - Buchung - Grundbuch - Person 77 -- ------------------------------------------------------------------ 78 -- Verwendet den gespeicherten View "doppelverbindung". 79 -- Wird benötigt im Auskunft-Modul "alkisexport.php": 80 -- Je nach aufrufendem Modul wird der Filter (WHERE) an anderer Stelle gesetzt (gml_id von FS, GB oder Pers.) 81 82 -- Problem / Konflikt: 83 -- Es kann nur eine lineare Struktur aus Spalten und Zeilen exportiert werden. 84 -- Wenn nicht nur die Daten des Ausgangs-Objektes exportiert werden, sondern auch verbundene Tabellen in 85 -- einer 1:N-Struktur, dann verdoppeln sich Zeileninhalte und es werden redundante Daten erzeugt. 86 -- Diese Redundanzen mÃŒssen vom dem Programm gefiltert werden, das die Daten ÃŒber eine Schnittstelle einliest. 87 88 -- Anwendungs-Beispiel: Abrechnung von AnliegerbeitrÀgen. 89 90 -- DROP VIEW exp_csv; 91 CREATE OR REPLACE VIEW exp_csv 92 AS 93 SELECT 94 -- ** FlurstÃŒck 95 f.gml_id AS fsgml, -- möglicher Filter FlurstÃŒcks-GML-ID 96 f.flurstueckskennzeichen AS fs_kennz, 97 f.gemarkungsnummer, -- Teile des FS-Kennz. noch mal einzeln 98 f.flurnummer, f.zaehler, f.nenner, 99 f.amtlicheflaeche AS fs_flae, 100 101 -- * Adressen des FS -- Nein, diese werden im Export-Modul ermitteln und nachtragen 102 -- k.bezeichnung AS strasse, -- StraÃennamen 103 -- split_part(l.hausnummer,' ',1) AS hausnr, -- Nummer 104 -- upper(split_part(l.hausnummer,' ',2)) AS hausnr_zs, -- Zusatz in GroÃschreibung 105 106 -- ** Grundbuch 107 gb.gml_id AS gbgml, -- möglicher Filter Grundbuch-GML-ID 108 gb.bezirk AS gb_bezirk, 109 gb.buchungsblattnummermitbuchstabenerweiterung AS gb_blatt, 110 111 -- ** Buchung 112 s.laufendenummer AS bu_lfd, 113 -- s.zaehler, s.nenner, -- Anteil des GB am FS 114 '=' || s.zaehler|| '/' || s.nenner AS bu_ant, -- als Excel-Formel (nur bei Wohnungsgrundbuch JOIN ÃŒber 'Recht an') 115 --s.buchungsart, -- verschlÃŒsselt 116 b.bezeichner AS bu_art, -- entschlÃŒsselt 117 118 -- Felder aus der Subquery "Namens-Zweig" 119 nz.nam_lfd, nz.nam_ant, nz.nam_bes, -- nn.* 120 nz.psgml, -- möglicher Filter Personen-GML-ID 121 nz.nachnameoderfirma, nz.vorname, nz.geburtsdatum -- p.* 122 123 FROM ax_flurstueck f -- FlurstÃŒck 124 JOIN doppelverbindung d -- beide FÀlle ÃŒber Union-View: direkt und ÃŒber Recht von BS an BS 125 ON d.fsgml = f.gml_id 126 127 JOIN ax_buchungsstelle s -- Buchungs-Stelle 128 ON d.bsgml = s.gml_id 129 JOIN ax_buchungsstelle_buchungsart b -- EnstschlÃŒsselung der Buchungsart 130 ON s.buchungsart = b.wert 131 132 -- JOIN alkis_beziehungen v2 -- ax_flurstueck >weistAuf> AX_LagebezeichnungMitHausnummer 133 -- ON v2.beziehung_von = f.gml_id AND v2.beziehungsart = 'weistAuf' 134 -- JOIN ax_lagebezeichnungmithausnummer l 135 -- ON v2.beziehung_zu = l.gml_id 136 -- JOIN ax_lagebezeichnungkatalogeintrag k 137 -- ON l.kreis = k.kreis AND l.gemeinde = k.gemeinde AND l.lage = k.lage 138 139 JOIN alkis_beziehungen v3 -- Grundbuch (zur Buchungs-Stelle) 140 ON s.gml_id = v3.beziehung_von AND v3.beziehungsart = 'istBestandteilVon' -- Buchung --> Blatt 141 JOIN ax_buchungsblatt gb 142 ON v3.beziehung_zu = gb.gml_id 143 144 LEFT JOIN -- LEFT: fiktives Blatt hat keine Namensnummern, dieser "Zweig" kann leer bleiben. 145 ( SELECT 146 -- Namensnummer 147 v4.beziehung_zu AS v4gml, 148 nn.laufendenummernachdin1421 AS nam_lfd, 149 '=' || nn.zaehler|| '/' || nn.nenner AS nam_ant, -- als Excel-Formel 150 nn.beschriebderrechtsgemeinschaft AS nam_bes, 151 152 -- Person (zur Namensnummer) 153 p.gml_id AS psgml, -- möglicher Filter 154 p.nachnameoderfirma, -- Familienname 155 p.vorname, -- Vorname 156 p.geburtsdatum 157 158 -- Adresse des EigentÃŒmers - Nein 159 160 FROM alkis_beziehungen v4 -- Namensnummer (zum GB-Blatt) 161 JOIN ax_namensnummer nn 162 ON v4.beziehung_von = nn.gml_id 163 JOIN alkis_beziehungen v5 -- Person (zur Namensnummer) 164 ON v5.beziehung_von = nn.gml_id AND v5.beziehungsart = 'benennt' -- NamNum --> Person 165 JOIN ax_person p 166 ON v5.beziehung_zu = p.gml_id 167 WHERE v4.beziehungsart = 'istBestandteilVon' -- Blatt --> NamNum 168 ) AS nz -- Namens-Zweig 169 ON nz.v4gml = gb.gml_id -- LEFT JOIN: Namenzweig an Grundbuch anbinden 170 171 ORDER BY f.flurstueckskennzeichen, gb.bezirk, gb.buchungsblattnummermitbuchstabenerweiterung, nz.nam_lfd ; 172 173 COMMENT ON VIEW exp_csv 174 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.'; 175 176 -- GRANT SELECT ON TABLE exp_csv TO mb27; -- User fÃŒr Auskunfts-Programme 177 -- GRANT SELECT ON TABLE exp_csv TO alkisbuch; -- User fÃŒr Auskunfts-Programme RLP-Demo 178 179 73 180 74 181 -- Welche Karten-Typen ? … … 568 675 569 676 677 -- Probleme mit der Trigger-Function "update_fields_beziehungen()" 678 -- Manchmal kann zu einer gml_id in "alkis_beziehungen" die zustÀndige Tabelle nicht gefunden werden. 679 -- Nach Ãnderung der Trigger-Function am 10.12.2013 wird die Beziehung trotzdem eingetragen, 680 -- nur die Felder "von_typename" und "beginnt" bleiben leer. 681 682 -- Diese FÀlle anzeigen: 683 CREATE OR REPLACE VIEW beziehungsproblem_faelle 684 AS 685 SELECT * 686 FROM alkis_beziehungen 687 WHERE beginnt IS NULL; 688 689 -- Wie viele sind das? 690 CREATE OR REPLACE VIEW beziehungsproblem_zaehler 691 AS 692 SELECT count(ogc_fid) AS anzahl 693 FROM alkis_beziehungen 694 WHERE beginnt IS NULL; 695 696 570 697 -- END --
Note: See TracChangeset
for help on using the changeset viewer.