Changeset 377 for trunk/info/info/alkis
- Timestamp:
- 12/05/16 10:57:00 (7 years ago)
- Location:
- trunk/info/info/alkis
- Files:
-
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/info/info/alkis/alkis_conf_location.php
r376 r377 2 2 /* ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 3 3 Pfad zur Konfigurationsdatei der ALKIS-Auskunft. 4 Die Conf-Datei sollte aus Sicherheitsgr uenden nicht unterhalb des Web-Root-Verzeichnisses liegen.4 Die Conf-Datei sollte aus SicherheitsgrÃŒnden nicht unterhalb des Web-Root-Verzeichnisses liegen. 5 5 6 6 Version: 7 2016-02-23 Version fuer norGIS-ALKIS-Import, keine PostNAS-Versionsnummer im DB-Namen 7 14.12.2010 zentrale Anpassung des Pfades 8 25.07.2011 PostNAS 0.5/0.6 Versionen unterscheiden 9 04.11.2011 PostNAS Datenbankname um "_neu" erweitert 8 10 */ 9 require_once("/opt/gdi/conf/alkisn_conf.php"); // Nicht unter Web-Root speichern 11 # relativ: 12 # require_once(dirname(__FILE__)."/../../../../conf/alkis_www_conf.php"); 13 # 14 # absolut: 15 # Hier: Entwicklungs-Version 16 require_once("/data/conf/alkis_entw_conf.php"); 17 $dbname = $dbpre.$dbvers.$gkz; // Prefix + Konverter-Version + Mandant 18 // $dbname = $dbpre.$dbvers.$gkz."_neu"; // Prefix + Konverter-Version + Mandant ENTWICKLUNG aus neuem Schema 10 19 ?> -
trunk/info/info/alkis/alkisausk.php
r376 r377 5 5 Dies Programm wird aus dem Mapserver-Template (FeatureInfo) aufgerufen. 6 6 Parameter: &gkz, &gml_id (optional &id) 7 Dies Programm gibt einen kurzen Ãberblick zum FlurstÃŒck, z.B. Eigentuemer ohne Adresse 8 FÃŒr detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 7 Dies Programm gibt einen kurzen Ueberblick zum Flurstueck. 8 Eigentuemer ohne Adresse. 9 Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 9 10 Siehe auch alkisinlayausk.php - eine Variante fÃŒr den Einbau in einen iFrame 10 11 11 12 Version: 12 2016-02-24 Version fuer norGIS-ALKIS-Import 13 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen (Berechtigung fÃŒr Gemeinde prÃŒfen) 14 Hinweis: Dies Modul wird beim Entwickler nicht mehr produktiv eingesetzt. 15 Statt dessen wird "alkisinlayauk.php" verwendet um von einer WMS-FeatureInfo in ein Fenster ÃŒberzuleiten. 16 Mangels Praxis bleiben Fehler möglicherweise unerkannt. 13 2011-11-17 Link FS-Historie, Parameter der Functions geÀndert 14 2011-11-30 import_request_variables 15 2013-04-08 deprecated "import_request_variables" ersetzt 16 2014-01-28 Link zu alkisstrasse.php 17 2014-09-15 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 18 2014-09-30 RÃŒckbau substring(gml_id) 19 2015-12-09 Austausch .ico durch .png 17 20 */ 18 21 session_start(); … … 21 24 if ($auth == "mapbender") {require_once($mapbender);} 22 25 include("alkisfkt.php"); 26 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 23 27 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 24 28 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 25 29 echo <<<END 26 <! doctype html>27 <html lang="de">30 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 31 <html> 28 32 <head> 29 <meta charset="utf-8"> 33 <meta name="author" content="b600352" > 34 <meta http-equiv="cache-control" content="no-cache"> 35 <meta http-equiv="pragma" content="no-cache"> 36 <meta http-equiv="expires" content="0"> 37 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 30 38 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 31 39 <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico"> … … 37 45 <body> 38 46 END; 39 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisausk.php'");47 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 40 48 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 41 49 42 50 // *** F L U R S T U E C K *** 43 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung , f.regierungsbezirk, f.kreis, f.gemeinde51 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 44 52 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 45 53 WHERE f.gml_id= $1 AND f.endet IS NULL;"; … … 62 70 $flae=$row["amtlicheflaeche"]; 63 71 $flae=number_format($flae,0,",",".") . " m²"; 64 $fsreg=$row["regierungsbezirk"]; // Filter ZustÀndigkeit65 $fskrs=$row["kreis"];66 $fsgem=$row["gemeinde"];67 72 } else { 68 73 echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>"; … … 72 77 echo "\n<p class='fsausk'>ALKIS-Auskunft Flurstück-Übersicht ".$gmkgnr."-".$flurnummer."-".$flstnummer."</p>"; 73 78 74 // PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)75 // FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.76 if ( ($filtkreis != '' and $filtkreis != $fskrs) or ($filtgem != '' and $filtgem != $fsgem) ) {77 // Einer der gesetzten Filter passt nicht78 if ($debug > 2) {79 echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>";80 echo "<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";81 }82 echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>83 \n<br><p class='stop2'>Dies Flurstück liegt ausserhalb der zuständigen Stadt oder Gemeinde.</p>\n</body>\n</html>";84 pg_free_result($res);85 exit;86 }87 88 79 echo "\n<table class='outer'>\n<tr><td>"; 89 80 // linke Seite 90 echo "\n<h1>ALKIS-Auskunft</h1>" 91 ."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>";81 echo "\n<h1>ALKIS-Auskunft</h1>"; 82 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>"; 92 83 echo "</td><td align='right'>"; 93 84 // rechte Seite 94 echo "<img src='pic/AAA.gif' alt=''>" 95 ."</td></tr></table>"; 96 97 echo "\n<table class='outer'>\n<tr>\n<td>" 98 ."\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>" 99 ."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>" 100 ."\n\t<tr>\n\t\t<td title='Gemarkung'>"; 101 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 102 echo $gemkname."</td>" 103 . "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 104 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>" 105 ."\n\t</table>" 106 ."\n</td>\n<td>" 107 ."\n\t<p class='nwlink'>weitere Auskunft:<br>"; 85 echo "<img src='pic/AAA.gif' alt=''>"; 86 echo "</td></tr></table>"; 87 88 echo "\n<table class='outer'>\n<tr>\n<td>"; 89 echo "\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>"; 90 echo "\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"; 91 echo "\n\t<tr>\n\t\t<td title='Gemarkung'>"; 92 if ($showkey) { 93 echo "<span class='key'>".$gmkgnr."</span><br>"; 94 } 95 echo $gemkname."</td>"; 96 echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"; 97 echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"; 98 echo "\n\t</table>"; 99 echo "\n</td>\n<td>"; 100 if ($idanzeige) {linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); } 101 echo "\n\t<p class='nwlink'>weitere Auskunft:<br>"; 108 102 109 103 // Flurstuecksnachweis (o. Eigent.) 110 104 echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 111 if ($showkey) {echo "&showkey=j";} 112 echo "' title='Flurstücksnachweis, alle Flurstücksdaten'>Flurstück " 113 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 114 ."</a><br>"; 105 if ($idanzeige) {echo "&id=j";} 106 if ($showkey) {echo "&showkey=j";} 107 echo "' title='Flurstücksnachweis, alle Flurstücksdaten'>Flurstück "; 108 echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 109 echo "</a><br>"; 115 110 116 111 // FS- u. Eigent.-NW 117 112 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j"; 118 if ($showkey) {echo "&showkey=j";} 119 echo "' title='Flurstück mit Eigentümer'>Flurstück mit Eigentümer " 120 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 121 ."</a><br>"; 113 if ($idanzeige) {echo "&id=j";} 114 if ($showkey) {echo "&showkey=j";} 115 echo "' title='Flurstück mit Eigentümer'>Flurstück mit Eigentümer "; 116 echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 117 echo "</a><br>"; 122 118 123 119 // FS-Historie 124 120 echo "\n\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 125 if ($showkey) {echo "&showkey=j";} 126 echo "' title='Vorgänger des Flurstücks'>Historie " 127 ."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>" 128 ."</a><br>"; 121 if ($idanzeige) {echo "&id=j";} 122 if ($showkey) {echo "&showkey=j";} 123 echo "' title='Vorgänger des Flurstücks'>Historie "; 124 echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"; 125 echo "</a><br>"; 129 126 130 127 // Gebaeude-NW 131 128 echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 132 if ($showkey) {echo "&showkey=j";} 133 echo "' title='Gebäudenachweis'>Gebäude " 134 ."<img src='ico/Haus.png' width='16' height='16' alt=''>" 135 ."</a>" 136 . "\n\t</p>\n</td>"; 129 if ($idanzeige) {echo "&id=j";} 130 if ($showkey) {echo "&showkey=j";} 131 echo "' title='Gebäudenachweis'>Gebäude "; 132 echo "<img src='ico/Haus.png' width='16' height='16' alt=''>"; 133 echo "</a>"; 134 135 echo "\n\t</p>\n</td>"; 137 136 138 137 // Lagebezeichnung MIT Hausnummer (Adresse) … … 152 151 while($row = pg_fetch_array($res)) { 153 152 $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name 154 echo "\n<tr>\n\t" 155 ."\n\t<td class='lr'>".$sname." ".$row["hausnummer"]."</td>" 156 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 157 ."\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]."'>Lage " 158 ."<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> " 159 ."\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"] 160 ."' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>" 161 ."\n\t\t</p>\n\t</td>" 162 ."\n</tr>"; 153 echo "\n<tr>\n\t"; 154 echo "\n\t<td class='lr'>".$sname." ".$row["hausnummer"]."</td>"; 155 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 156 echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]."'>Lage "; 157 echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 158 159 echo "\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"]; // Katalog GML-ID 160 echo "' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>"; 161 echo "\n\t\t</p>\n\t</td>"; 162 echo "\n</tr>"; 163 163 $j++; 164 164 } … … 171 171 echo "\n<h2><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbuch</h2>"; 172 172 // ALKIS: FS >istgebucht> GS >istBestandteilVon> GB. 173 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, wa.v AS blattartv, 174 s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, wb.v AS bart 175 FROM ax_flurstueck f 176 JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 173 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, 174 s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, a.bezeichner AS bart 175 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 177 176 JOIN ax_buchungsblatt b ON s.istbestandteilvon=b.gml_id 178 177 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 179 LEFT JOIN alkis_wertearten wa ON cast(b.blattart AS character varying)=wa.k AND wa.element='ax_buchungsblatt' AND wa.bezeichnung='blattart' 180 LEFT JOIN alkis_wertearten wb ON cast(s.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' 178 LEFT JOIN v_bs_buchungsart a ON s.buchungsart = a.wert 181 179 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND b.endet IS NULL 182 180 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;"; … … 193 191 while($rowg = pg_fetch_array($resg)) { 194 192 $beznam=$rowg["bezeichnung"]; 195 echo "\n<table class='outer'>\n<tr>\n<td>"; 193 echo "\n<hr>\n<table class='outer'>"; 194 echo "\n<tr>"; 195 echo "\n<td>"; 196 196 197 $blattkey=$rowg["blattart"]; 197 $blattart= $rowg["blattartv"];198 $blattart=blattart($blattkey); 198 199 if ($blattkey == 1000) { 199 200 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 201 202 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 202 203 } 203 echo "\n\t<tr>" 204 ."\n\t\t<td class='head'>Bezirk</td>" 205 ."\n\t\t<td class='head'>".$blattart."</td>" 206 ."\n\t\t<td class='head'>Lfd-Nr.</td>" 207 ."\n\t\t<td class='head'>Buchungsart</td>" 208 ."\n\t</tr>"; 209 echo "\n\t<tr>" 210 ."\n\t\t<td title='Grundbuchbezirk'>"; 211 if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";} 212 echo $beznam."</td>" 213 ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>" 214 ."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowg["laufendenummer"]."</td>" 215 ."\n\t\t<td title='Buchungsart'>"; 216 if ($showkey) {echo "<span class='key'>".$rowg["buchungsart"]."</span><br>";} 217 echo $rowg["bart"] 218 ."</td>" 219 ."\n\t</tr>" 220 ."\n\t</table>"; 204 echo "\n\t<tr>"; 205 echo "\n\t\t<td class='head'>Bezirk</td>"; 206 echo "\n\t\t<td class='head'>".$blattart."</td>"; 207 echo "\n\t\t<td class='head'>Lfd-Nr.</td>"; 208 echo "\n\t\t<td class='head'>Buchungsart</td>"; 209 echo "\n\t</tr>"; 210 echo "\n\t<tr>"; 211 echo "\n\t\t<td title='Grundbuchbezirk'>"; 212 if ($showkey) { 213 echo "<span class='key'>".$rowg["bezirk"]."</span><br>"; 214 } 215 echo $beznam."</td>"; 216 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>"; 217 echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowg["laufendenummer"]."</td>"; 218 echo "\n\t\t<td title='Buchungsart'>"; 219 if ($showkey) { 220 echo "<span class='key'>".$rowg["buchungsart"]."</span><br>"; 221 } 222 echo $rowg["bart"]; 223 echo "</td>"; 224 echo "\n\t</tr>"; 225 echo "\n\t</table>"; 221 226 222 227 if ($rowg["zaehler"] <> "") { 223 228 echo "\n<p class='ant'>".$rowg["zaehler"]."/".$rowg["nenner"]." Anteil am Flurstück</p>"; 224 229 } 225 echo "\n</td>\n<td>" 226 ."\n\t<p class='nwlink'>weitere Auskunft:<br>" 227 ."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0]; 228 if ($showkey) {echo "&showkey=j";} 229 echo "' title='Grundbuchnachweis'>".$blattart." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 230 ."</a>" 231 ."\n\t</p>" 232 ."\n</td>\n</tr>\n</table>"; 230 echo "\n</td>\n<td>"; 231 if ($idanzeige) {linkgml($gkz, $rowg["gml_id"], "Buchungsblatt", "");} 232 echo "\n\t<p class='nwlink'>weitere Auskunft:<br>"; 233 echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg["gml_id"]; 234 if ($idanzeige) {echo "&id=j";} 235 if ($showkey) {echo "&showkey=j";} 236 echo "' title='Grundbuchnachweis'>"; 237 echo $blattart; 238 echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"; 239 echo "</a>"; 240 echo "\n\t</p>"; 241 echo "\n</td>"; 242 echo "\n</tr>"; 243 echo "\n</table>"; 233 244 234 245 // E I G E N T U E M E R 235 if ($blattkey == 5000) { // Schl ÃŒssel Blatt-Art236 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n" 237 ."\n<p>Siehe weitere Grundbuchblätter mit Rechten an dem fiktiven Blatt.</p>\n";238 } else { 239 echo "\n<h 3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";246 if ($blattkey == 5000) { // Schluessel Blattart 247 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n"; 248 echo "\n<p>Siehe weitere Grundbuchblätter mit Rechten an dem fiktiven Blatt.</p>\n"; 249 } else {// kein Eigent. bei fiktiv. Blatt 250 echo "\n<hr>\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 240 251 241 252 // Ausgabe Name in Function 242 $n = eigentuemer($con, $rowg["gml_id"], false , "imFenster"); // ohne Adressen253 $n = eigentuemer($con, $rowg["gml_id"], false); // ohne Adr. 243 254 244 255 if ($n == 0) { // keine NamNum, kein Eigent. 245 echo "\n<p class='err'>Keine Eigentümer gefunden.</p>" 246 ."\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>"; 256 echo "\n<p class='err'>Keine Eigentümer gefunden.</p>"; 257 echo "\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>"; 258 linkgml($gkz, $gmlid, "Buchungsblatt", ""); 247 259 } 248 260 } 249 261 $j++; 250 262 } 251 if ($j == 0) {echo "\n<p class='err'>Keine Buchungen gefunden.</p>";} 263 if ($j == 0) { // Entwicklungshilfe 264 echo "\n<p class='err'>Keine Buchungen gefunden.</p>"; 265 echo "\n<p><a target='_blank' href=alkisrelationen.php?gkz=".$gkz."&gmlid=".$gmlid.">Beziehungen des Flurstücks</a></p>"; 266 //echo "<p>".$sql."</p>"; // TEST 267 } 252 268 echo "\n<hr>"; 253 269 -
trunk/info/info/alkis/alkisauszug.css
r376 r377 1 1 /* Modul: alkisauszug.css 2 S t y l e s 2 S t y l e s zur ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 3 3 4 4 Version: … … 11 11 2013-06-27 p.recht 12 12 2014-01-27 strasse, hsnr, Print-Balken 13 2014-09-15 13 2014-09-15 PostNAS 0.8: p.cnt 14 14 2014-12-30 Neu: td.fsnr 15 2016-02-24 Umstellung norBIT-Struktur16 2016-12-01 Stop-Meldung bei BerechtigungsprÃŒfung, Sortierspalten17 15 */ 18 16 body {background-color: #FDFFFD;} … … 24 22 p.fsausk {background-color: teal; color: silver;} /* Uebersichts-Seite Flurstuecks-Auskunft */ 25 23 p.fskennz,p.fsei{background-color: navy; color: silver;} /* Flurstuecks-Nachweis */ 24 /* p.fsei {background-color: olive; color: silver;}*/ /* Flurstuecks- und Eigentuemer-Nachweis */ 26 25 p.fshis {background-color: gray; color: white;} /* Flurstuecks-Historie */ 27 26 p.gbkennz {background-color: green; color: silver;} /* Bestandsnachweis */ … … 33 32 34 33 /* Format nach Inhalt */ 35 /* p.bezieh {text-align: right; background: olive; color: silver;} *//* Beziehungen */34 p.bezieh {text-align: right; background: olive; color: silver;} /* Beziehungen */ 36 35 p.fsd {margin-left: 170px;} /* Flst-Flaeche */ 37 36 p.gbl {position: relative; left: 60px;} /* Nam: Buchungsstelle*/ … … 90 89 td.lr {color: black;} /* Liste Rechts */ 91 90 td.ph {color: gray;} /* Platzhalter, vorlaeufig, spaeter loschen */ 92 td.erkl {color: silver; font-size: 8pt;} /* ErklÀrungen, nur klein (Haus) */93 91 94 92 td.fla {width: 110px; padding-right: 4px; text-align: right;} /* Flaechen rechtsbuendig (stellengerecht) */ … … 101 99 td.sond, p.sond {font-size: 9pt; font-style: italic; background-color: white; 102 100 border: 1px dotted silver; padding: 6px;} /* Sondereigentumsbeschreibung */ 101 103 102 td.nrap, p.nrap {font-size: 9pt; font-style: italic; background-color: white;} /* Nummer im Aufteilungsplan */ 103 104 104 td.fett {font-weight: bold;} 105 td.nwlink {width: 80px;} /* Link zum Nachweis */ 106 107 /* Kopfzeile, Spaltenueberschrift */ 108 td.head, td.heads{font-style: italic; padding-top: 2px;} 109 td.head {border-bottom: 1px solid gray;} 110 td.heads {border-bottom: 1px solid black;} /* Kopf Sortierspalte(n) */ 111 105 td.head {border-bottom: 1px solid gray; font-style: italic; padding-top: 2px;} /* Kopfzeile, Spaltenueberschrift */ 112 106 td.sum {border-top: 2px dotted maroon; border-bottom:3px solid maroon; 113 107 border-left:0px dotted maroon; border-right:0px dotted maroon; font-weight: bold;} /* unter dem Strich = Summenzeile */ … … 116 110 td.nam {font-weight: bold;} 117 111 td.gbl {border-bottom: 1px dotted green;} /* Name: GB-Liste */ 118 /* Inlay analog WMS-Feature-InfoTemplate: linke Tabellenspalte - Feldname */112 /* Inlay analog Template: linke Tabellenspalte - Feldname */ 119 113 td.li, td.gr {color:gray; padding-left: 8px; padding-right:8px; border-bottom: 0px; vertical-align:top;} 120 114 /* dienendes GB in FS-Tab im Best-NW */ 121 115 td.dien {font-size: 9pt; font-style: italic; color: purple; border-bottom: 1px solid silver;} 122 116 td.hsnr {width: 70px; padding-right: 4px; text-align: right;} /* Hausnummer in StraÃe */ 123 124 /* Fallunterscheidung bei GebÀude auf FlurstÃŒck: */125 td.gin {color: rgb(0,50,0);} /* GebÀude in FS */126 td.gtl {color: rgb(140,140,100);} /* GebÀude teilweise auf FS */127 td.gan {color: rgb(210,170,170);} /* GebÀude angrenzend an FS*/128 117 129 118 /* Ueberschriften */ … … 134 123 h4 { color: black; font-size: 11pt;} 135 124 h5 { color: black; font-size: 10pt;} 136 h6 { color: black; font-size: 9pt; margin-top: 2pt; margin: 0pt ;} /* FS in Best-NW */125 h6 { color: black; font-size: 9pt; margin-top: 2pt; margin: 0pt} /* FS in Best-NW */ 137 126 138 127 img {border: 0px; margin: 0px;} /* Icons */ 139 128 140 129 iframe.inlay {border:0px; width: 100%;} /* height: 400px; */ 141 142 /* Abbruch, Fehler der Berechtigung */143 p.stop1, p.stop2 {text-align: center; color: red;}144 p.stop1 {font-size: 14pt; margin: 4pt;}145 p.stop2 {font-size: 10pt;}146 130 147 131 /* Seitenfuss */ -
trunk/info/info/alkis/alkisbaurecht.php
r376 r377 4 4 5 5 Version: 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 6 2013-06-27Neu als Variante von alkis*inlay*baurecht.ph (mit Footer, Balken und Umschaltung Key) 7 2014-09-15 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 8 2015-12-09 Austausch .ico durch .png 9 10 ToDo: id-Anzeige hinzufÃŒgen fÃŒr Baurecht und FlurstÃŒck 8 11 */ 9 12 session_start(); … … 12 15 if ($auth == "mapbender") {require_once($mapbender);} 13 16 include("alkisfkt.php"); // f. Footer 17 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 14 18 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 15 19 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 16 echo <<<END 17 <!doctype html> 18 <html lang="de"> 20 21 ?> 22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 23 <html> 19 24 <head> 20 <meta charset="utf-8"> 25 <meta name="author" content="b600352" > 26 <meta http-equiv="cache-control" content="no-cache"> 27 <meta http-equiv="pragma" content="no-cache"> 28 <meta http-equiv="expires" content="0"> 29 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 21 30 <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title> 22 31 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 24 33 </head> 25 34 <body> 26 END;27 35 28 29 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisbaurecht.php'");36 <?php 37 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 30 38 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 31 39 32 // Spalte "a.d" ist immer leer 33 $sql ="SELECT r.ogc_fid, r.artderfestlegung as adfkey, r.name, r.stelle, r.bezeichnung AS rechtbez, 34 a.v AS adfbez, d.bezeichnung AS stellbez, d.stellenart, wd.v, wd.d, round(st_area(r.wkb_geometry)::numeric,0) AS flae 40 // wie View "baurecht" 41 $sql ="SELECT r.ogc_fid, r.artderfestlegung as adfkey, r.name, r.stelle, r.bezeichnung AS rechtbez, a.bezeichner AS adfbez, d.bezeichnung AS stellbez, d.stellenart, round(st_area(r.wkb_geometry)::numeric,0) AS flae 35 42 FROM ax_bauraumoderbodenordnungsrecht r 36 LEFT JOIN alkis_wertearten a ON cast(r.artderfestlegung AS character varying)=a.k AND a.element='ax_bauraumoderbodenordnungsrecht' AND a.bezeichnung='artderfestlegung' 37 LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle 38 LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart' 39 WHERE r.gml_id= $1 AND r.endet IS NULL AND d.endet IS NULL;"; 43 LEFT JOIN v_baurecht_adf a ON r.artderfestlegung=a.wert 44 LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle WHERE r.gml_id= $1 AND r.endet IS NULL AND d.endet IS NULL;"; 40 45 41 46 $v = array($gmlid); 42 47 $res = pg_prepare("", $sql); 43 48 $res = pg_execute("", $v); 49 44 50 if (!$res) { 45 51 echo "\n<p class='err'>Fehler bei Baurecht.</p>\n"; 46 if ($debug > 2) {echo " \n<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}52 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";} 47 53 } 54 48 55 if ($row = pg_fetch_array($res)) { 49 56 $artfest=$row["adfkey"]; // Art der Festlegung, Key 50 57 $verfnr=$row["rechtbez"]; // Verfahrens-Nummer 51 58 $enam=$row["name"]; 59 $stellk=$row["stelle"]; // LEFT JOIN ! 52 60 $stellb=$row["stellbez"]; 53 61 $stella=$row["stellenart"]; … … 58 66 echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>\n"; 59 67 60 echo "\n<table>" 61 ."\n<tr>" 62 ."\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>"; 63 if ($showkey) {echo "<span class='key'>(".$artfest.")</span> ";} 64 echo "<span class='wichtig'>".$row["adfbez"]."</span></td>" 65 ."\n</tr>"; 68 echo "\n<table>"; 69 70 echo "\n<tr>"; 71 echo "\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>"; 72 if ($showkey) { 73 echo "<span class='key'>(".$artfest.")</span> "; 74 } 75 echo "<span class='wichtig'>".$row["adfbez"]."</span></td>"; 76 echo "\n</tr>"; 77 66 78 if ($enam != "") { 67 echo "\n<tr>" 68 ."\n\t<td class='li'>Eigenname des Gebietes:</td>" 69 ."\n\t<td>".$enam."</td>" 70 . "\n</tr>"; 79 echo "\n<tr>"; 80 echo "\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>"; 81 echo "\n</tr>"; 71 82 } 83 72 84 if ($verfnr != "") { 73 echo "\n<tr>" 74 ."\n\t<td class='li'>Verfahrensnummer:</td>" 75 ."\n\t<td>".$verfnr."</td>" 76 ."\n</tr>"; 85 echo "\n<tr>"; 86 echo "\n\t<td class='li'>Verfahrensnummer:</td>"; 87 echo "\n\t<td>".$verfnr."</td>"; 88 // if ($idanzeige) {linkgml($gkz, $gmlid, "Verfahren", ""); } // KEINE Bez.! 89 echo "\n</tr>"; 77 90 } 78 if ($stellb != "") { // z.B. Umlegung *mit* und Baulast *ohne* Dienststelle, darum bezirk testen 79 echo "\n<tr>" 80 ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>"; 81 if ($showkey) {echo "<span class='key'>(".$row["stelle"].")</span> ";} 82 echo $stellb 83 ."</td>" 84 ."\n</tr>"; 91 92 if ($stellb != "") { // z.B. Umlegung mit und Baulast ohne Dienststelle 93 echo "\n<tr>"; 94 echo "\n\t<td class='li'>Dienststelle:</td>\n\t<td>"; 95 if ($showkey) {echo "<span class='key'>(".$stellk.")</span> ";} 96 echo $stellb; 97 echo "</td>"; 98 echo "\n</tr>"; 85 99 if ($stella != "") { 86 echo "\n<tr>" 87 ."\n\t<td class='li'>Art der Dienststelle:</td>"88 ."\n\t<td>";100 echo "\n<tr>"; 101 echo "\n\t<td class='li'>Art der Dienststelle:</td>"; 102 echo "\n\t<td>"; 89 103 if ($showkey) {echo " <span class='key'>(".$stella.")</span>";} 90 echo "<span title='".$row["d"]."'>".$row["v"]."</span>"; 91 echo "</td>" 92 ."\n</tr>"; 104 // d.stellenart -- weiter entschluesseln 1000, 1200, 1300 105 // Dazu SchlÃŒsseltabelle aus GeoInfoDok erfassen 106 echo " "; // Platzhalter 107 echo "</td>"; 108 echo "\n</tr>"; 93 109 } 94 110 } 95 echo "\n<tr>" 96 ."\n\t<td class='li'>Fläche:</td>"; 111 112 echo "\n<tr>"; 113 echo "\n\t<td class='li'>Fläche:</td>"; 97 114 $flae=number_format($row["flae"],0,",",".")." m²"; 98 echo "\n\t<td>".$flae."</td>" 99 ."\n</tr>" 100 . "\n</table>"; 115 echo "\n\t<td>".$flae."</td>"; 116 echo "\n</tr>"; 117 118 echo "\n</table>"; 101 119 } else { 102 120 echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>"; 103 121 } 104 122 105 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> betroffene Flurstücke</h2>\n" 106 ."\n<p>Ermittelt durch geometrische Verschneidung. Nach Größe absteigend.</p>";123 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> betroffene Flurstücke</h2>\n"; 124 echo "\n<p>Ermittelt durch geometrische Verschneidung. Nach Größe absteigend.</p>"; 107 125 108 126 $sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, round(st_area(ST_Intersection(r.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae 109 127 FROM ax_flurstueck f, ax_bauraumoderbodenordnungsrecht r 110 WHERE r.gml_id= $1 AND f.endet IS NULL AND r.endet IS NULL "; 111 if ($filtgem == '' ) { // ungefiltert 112 $v=array($gmlid); 113 } else { 114 $sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // Zuständiges Gebiet 115 $v=array($gmlid, $filtkreis, $filtgem); 116 } 117 $sql.="AND st_intersects(r.wkb_geometry,f.wkb_geometry) = true 128 WHERE r.gml_id= $1 AND f.endet IS NULL AND r.endet IS NULL 129 AND st_intersects(r.wkb_geometry,f.wkb_geometry) = true 118 130 AND st_area(st_intersection(r.wkb_geometry,f.wkb_geometry)) > 0.05 119 ORDER BY schnittflae DESC LIMIT 50;";131 ORDER BY schnittflae DESC LIMIT 40;"; 120 132 // > 0.0 ist gemeint, Ungenauigkeit durch st_simplify 121 133 // Limit: Flurbereinig. kann gross werden! 122 134 // Trotz Limit lange Antwortzeit, wegen OrderBy -> intersection 135 $v = array($gmlid); 136 $res = pg_prepare("", $sql); 137 $res = pg_execute("", $v); 123 138 124 $res=pg_prepare("", $sql);125 $res=pg_execute("", $v);126 139 if (!$res) { 127 140 echo "\n<p class='err'>Keine Flurstücke ermittelt.<br>\nSQL=<br></p>\n"; 128 //if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}141 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";} 129 142 } 130 143 131 echo "\n<table class='fs'>" 132 ."\n<tr>"133 ."\n\t<td class='head' title='Flur- und Flurstücksnummer'>Flurstück</td>"134 ."\n\t<td class='heads fla' title='geometrische Schnittfläche'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Fläche</td>"135 ."\n\t<td class='head fla' title='amtliche Flurstücksfläche, Buchfläche'>von</td>"136 ."\n\t<td class='head nwlink' title='Link zum Flurstück'>weitere Auskunft</td>"137 ."\n</tr>";144 echo "\n<table class='fs'>"; 145 echo "\n<tr>"; // Header 146 echo "\n\t<td class='head' title='Flur- und Flurstücksnummer'>Flurstück</td>"; 147 echo "\n\t<td class='head fla' title='geometrische Schnittfläche'>Fläche</td>"; 148 echo "\n\t<td class='head fla' title='amtliche Flurstücksfläche, Buchfläche'>von</td>"; 149 echo "\n\t<td class='head nwlink' title='Link zum Flurstück'>weitere Auskunft</td>"; 150 echo "\n</tr>"; 138 151 139 152 $fscnt=0; 140 153 while($row = pg_fetch_array($res)) { 141 154 $fscnt++; 142 echo "\n<tr>" 143 ."\n\t<td>".$row["flurnummer"]."-<span class='wichtig'>".$row["zaehler"]; 144 $nen=$row["nenner"]; 145 if ($nen != "") {echo "/".$nen;} 146 echo "</span></td>" 147 ."\n\t<td class='fla'>".$row["schnittflae"]." m²</td>" 148 ."\n\t<td class='fla'>".$row["amtlicheflaeche"]." m²</td>" 149 ."\n\t<td class='nwlink noprint'>" 150 ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$row["gml_id"]."&eig=n' " 151 ."title='Flurstücksnachweis'>Flurstück " 152 ."\n\t\t\t<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 153 ."\n\t\t</a>" 154 ."\n\t</td>" 155 ."\n</tr>"; 155 echo "\n<tr>"; 156 echo "\n\t<td>".$row["flurnummer"]."-<span class='wichtig'>".$row["zaehler"]; 157 $nen=$row["nenner"]; 158 if ($nen != "") { 159 echo "/".$nen; 160 } 161 echo "</span></td>"; 162 echo "\n\t<td class='fla'>".$row["schnittflae"]." m²</td>"; 163 echo "\n\t<td class='fla'>".$row["amtlicheflaeche"]." m²</td>"; 164 echo "\n\t<td class='nwlink noprint'>"; 165 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$row["gml_id"]."&eig=n' " ; 166 echo "title='Flurstücksnachweis'>Flurstück "; 167 echo "\n\t\t\t<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 168 echo "\n\t\t</a>"; 169 echo "\n\t</td>"; 170 echo "\n</tr>"; 156 171 } 157 172 echo "\n</table>"; 158 173 159 if ($fscnt == 0) { // nicht gefunden 160 if ($filtgem == '' ) { // ungefiltert 161 echo "<p class='err'>Kein Flurstück gefunden.</p>"; 162 } else { // Wahrscheinliche Ursache = Filter 163 echo "<p class='err'>Kein Flurstück im berechtigten Bereich.</p>"; 164 // if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid." $2 = ".$filtkreis." $3 = ".$filtgem."</p>\n";} 165 } 166 } elseif ($fscnt == 50) { 167 echo "<p>... und weitere Flurstücke (Limit 50 erreicht).</p>"; 174 if ($fscnt == 40) { 175 echo "<p>... und weitere Flurstücke (Limit 40 erreicht).</p>"; 168 176 } 169 177 … … 171 179 echo <<<END 172 180 173 <div class='buttonbereich noprint'> 174 <hr> 175 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück" /></a> 176 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken" /></a> 177 </div> 181 <form action=''> 182 <div class='buttonbereich noprint'> 183 <hr> 184 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück" /></a> 185 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken" /></a> 186 </div> 187 </form> 178 188 END; 179 189 -
trunk/info/info/alkis/alkisbestnw.php
r376 r377 6 6 7 7 Version: 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen, Markierung der Sortierung 8 2011-11-17 Parameter der Functions geÀndert 9 2011-11-22 Feldname land in ax_buchungsblattbezirk geÀndert 10 2011-11-30 import_request_variables 11 2012-07-24 Export CSV 12 2013-04-08 deprecated "import_request_variables" ersetzt 13 2014-09-10 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 14 2014-09-15 Bei Relationen den Timestamp abschneiden 15 2014-09-30 RÃŒckbau substring(gml_id) 16 2014-12-30 Berechtigte GB nach "an BVNR" dieses Bestandes sortieren 17 2015-12-09 Austausch .ico durch .png 10 18 */ 11 19 session_start(); … … 15 23 if ($auth == "mapbender") {require_once($mapbender);} 16 24 include("alkisfkt.php"); 25 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 17 26 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 18 27 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 28 19 29 ?> 20 <! doctype html>21 <html lang="de">30 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 31 <html> 22 32 <head> 23 <meta charset="utf-8"> 33 <meta name="author" content="b600352" > 34 <meta http-equiv="cache-control" content="no-cache"> 35 <meta http-equiv="pragma" content="no-cache"> 36 <meta http-equiv="expires" content="0"> 37 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 24 38 <title>ALKIS Bestandsnachweis</title> 25 39 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 36 50 <body> 37 51 <?php 38 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisbestnw.php'");52 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 39 53 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 40 54 41 55 // G R U N D B U C H 42 $sql="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, wb.v AS blattartv, wb.d AS blattartd, 43 b.gml_id, b.bezirk, b.bezeichnung AS beznam, d.gml_id, d.land, d.bezeichnung, d.stelle, d.stellenart, wd.v AS stellev 44 FROM ax_buchungsblatt g 45 LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk 46 LEFT JOIN ax_dienststelle d ON b.land=d.land AND b.stelle=d.stelle 47 LEFT JOIN alkis_wertearten wb ON cast(g.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart' 48 LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart' 49 WHERE g.gml_id= $1 AND g.endet IS NULL AND d.endet IS NULL;"; 50 // .. AND d.stellenart=1000 56 $sql="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, 57 b.gml_id, b.bezirk, b.bezeichnung AS beznam, a.gml_id, a.land, a.bezeichnung, a.stelle, a.stellenart 58 FROM ax_buchungsblatt g LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk 59 LEFT JOIN ax_dienststelle a ON b.land=a.land AND b.stelle=a.stelle 60 WHERE g.gml_id= $1 AND a.stellenart=1000 AND g.endet IS NULL AND a.endet IS NULL;"; 51 61 52 62 $v = array($gmlid); 53 63 $res = pg_prepare("", $sql); 54 64 $res = pg_execute("", $v); 65 55 66 if (!$res) { 56 67 echo "<p class='err'>Fehler bei Grundbuchdaten.</p>"; … … 59 70 if ($row = pg_fetch_array($res)) { 60 71 $blattkey=$row["blattart"]; 61 $blattart=$row["blattartv"]; 62 72 $blattart=blattart($blattkey); 63 73 echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]." </p>\n"; // Balken 64 echo "\n<h2><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Grundbuch</h2>" 65 ."\n<table class='outer'>\n<tr>\n\t<td>"; // Kennz. im Rahmen74 echo "\n<h2><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Grundbuch</h2>"; 75 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Kennz. im Rahmen 66 76 if ($blattkey == 1000) { 67 77 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 69 79 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 70 80 } 71 echo "\n\t<tr>" 72 ."\n\t\t<td class='head'>"; // .d nicht gefÃŒllt 73 if ($showkey) {echo "<span class='key'>".$row["stellenart"]." </span>";} 74 echo $row["stellev"]."</td>"; 75 echo "\n\t\t<td class='head'>Bezirk</td>" 76 ."\n\t\t<td class='head' title='".htmlentities($row["blattartd"], ENT_QUOTES, "UTF-8")."'>"; 77 if ($showkey) {echo "<span class='key'>".$blattkey." </span>";} 78 echo $blattart."</td>" 79 ."\n\t</tr>\n\t<tr>" 80 ."\n\t\t<td title='Amtsgerichtsbezirk'>"; 81 if ($showkey) {echo "<span class='key'>".$row["stelle"]."</span><br>";} 82 echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>" 83 ."\n\t\t<td title='Grundbuchbezirk'>"; 84 if ($showkey) {echo "<span class='key'>".$row["bezirk"]."</span><br>";} 85 echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>" 86 ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>" 87 ."\n\t</tr>" 88 ."\n\t</table>" 89 ."\n\n\t</td>\n\t<td>" 90 ."\n\t</td>\n</tr>\n</table>"; 81 echo "\n\t<tr>"; 82 echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 83 echo "\n\t\t<td class='head'>Bezirk</td>"; 84 echo "\n\t\t<td class='head'>".$blattart."</td>"; 85 echo "\n\t</tr>\n\t<tr>"; 86 echo "\n\t\t<td title='Amtsgerichtsbezirk'>"; 87 if ($showkey) { 88 echo "<span class='key'>".$row["stelle"]."</span><br>"; 89 } 90 echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 91 echo "\n\t\t<td title='Grundbuchbezirk'>"; 92 if ($showkey) { 93 echo "<span class='key'>".$row["bezirk"]."</span><br>"; 94 } 95 echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 96 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>"; 97 echo "\n\t</tr>"; 98 echo "\n\t</table>"; 99 100 echo "\n\n\t</td>\n\t<td>"; 101 if ($idanzeige) {linkgml($gkz, $gmlid, "Buchungsblatt", "");} 102 echo "\n\t</td>\n</tr>\n</table>"; 91 103 } 92 104 … … 95 107 } else { 96 108 // E I G E N T U E M E R 97 echo "\n \n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>";109 echo "\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 98 110 $n = eigentuemer($con, $gmlid, true, ""); // MIT Adressen. 99 111 if ($n == 0) { // keine NamensNr, kein Eigentuemer 100 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>" 101 ."\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>"; 112 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 113 echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>"; 114 linkgml($gkz, $gmlid, "Buchungsblatt", ""); 102 115 } 103 116 } … … 120 133 } 121 134 if ($anz > 0) { 122 echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurstücke</h3>" 123 ."\n<table class='fs'>"124 ."\n<tr>" // zus. Kopfz.125 ."\n\t<td> </td>"126 ."\n\t<td class='dien' title='herrschendes Grundstück'>herrschende Buchungsart</td>"127 ."\n\t<td> </td>"128 ."\n\t<td class='dien'>Bezirk</td>"129 ."\n\t<td class='dien'>Blatt</td>"130 ."\n\t<td class='dien'>BVNR</td>"131 ."\n\t<td class='dien' title='dienendes Grundstück'>Buchungsart</td>"132 ."\n\t<td> </td>"133 ."\n</tr>";135 echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurstücke</h3>"; 136 echo "\n<table class='fs'>"; 137 echo "\n<tr>"; // zusÀtzliche Kopfzeile 138 echo "\n\t<td> </td>"; 139 echo "\n\t<td class='dien' title='herrschendes Grundstück'>herrschende Buchungsart</td>"; 140 echo "\n\t<td> </td>"; 141 echo "\n\t<td class='dien'>Bezirk</td>"; 142 echo "\n\t<td class='dien'>Blatt</td>"; 143 echo "\n\t<td class='dien'>BVNR</td>"; 144 echo "\n\t<td class='dien' title='dienendes Grundstück'>Buchungsart</td>"; 145 echo "\n\t<td> </td>"; 146 echo "\n</tr>"; 134 147 } else { 135 echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>" 136 ."\n<table class='fs'>"; 137 } // gemeinsame Kopfzeile 138 echo "\n<tr>" 139 ."\n\t<td class='heads' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundstück'><span class='wichtig'>BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='primäre Sortierung'></td>" 140 ."\n\t<td class='head'>Buchungsart</td>" 141 ."\n\t<td class='head'>Anteil</td>" 142 ."\n\t<td class='heads'>Gemarkung</td>" 143 ."\n\t<td class='heads'>Flur</td>" 144 ."\n\t<td class='heads fsnr' title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>Flurst.</span></td>" 145 ."\n\t<td class='head fla'>Fläche</td>" 146 ."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>" 147 ."\n</tr>"; 148 echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>"; 149 echo "\n<table class='fs'>"; 150 } 151 152 echo "\n<tr>"; // gemeinsame Kopfzeile 153 echo "\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundstück'><span class='wichtig'>BVNR</span></td>"; 154 echo "\n\t<td class='head'>Buchungsart</td>"; 155 echo "\n\t<td class='head'>Anteil</td>"; 156 echo "\n\t<td class='head'>Gemarkung</td>"; 157 echo "\n\t<td class='head'>Flur</td>"; 158 echo "\n\t<td class='head fsnr' title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>Flurst.</span></td>"; 159 echo "\n\t<td class='head fla'>Fläche</td>"; // 7 160 echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; 161 echo "\n</tr>"; 148 162 149 163 // Blatt -> B u c h u n g s s t e l l e 150 164 // aktuelles ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle 151 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond, b. v as bart, b.d152 FROM ax_buchungsstelle s LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' and b.bezeichnung='buchungsart'165 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond, b.bezeichner as bart 166 FROM ax_buchungsstelle s LEFT JOIN v_bs_buchungsart b ON s.buchungsart=b.wert 153 167 WHERE s.istbestandteilvon= $1 AND s.endet IS NULL ORDER BY cast(s.laufendenummer AS integer);"; 154 168 … … 167 181 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 168 182 $gml_bs= $row["gml_id"]; // id der buchungsstelle 169 $bartkey=$row["buchungsart"]; // SchlÃŒsselwert 170 $bart=$row["bart"]; // BuchungsART Text dazu 171 $bartstory=htmlentities($row["d"], ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet 183 $ba=$row["bart"]; // Buchungsart aus Schluesseltabelle 172 184 173 185 if ($row["zaehler"] == "") { … … 177 189 } 178 190 // F l u r s t u e c k s d a t e n zur direkten Buchungsstelle 179 $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $ba rt, $anteil, true, $bartkey, $bartstory); // return=Anzahl der FS191 $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, true); // return=Anzahl der FS 180 192 $fscnt=$fscnt + $j; 181 193 if ($j == 0) { // k e i n e Flurstuecke gefunden (Miteigentumsnteil usw.) … … 188 200 // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) 189 201 // sh=herrschend sd=dienend 190 $sql ="SELECT sd.gml_id, sd.buchungsart, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, wb.v AS bart "191 ."FROM ax_buchungsstelle sh JOIN ax_buchungsstelle sd ON (sd.gml_id=ANY(sh.an) OR sd.gml_id=ANY(sh.zu)) "192 ."LEFT JOIN alkis_wertearten wb ON cast(sd.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' "193 ."WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL ORDER BY sd.laufendenummer;";202 $sql ="SELECT sd.gml_id, sd.buchungsart, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, b.bezeichner AS bart 203 FROM ax_buchungsstelle sh JOIN ax_buchungsstelle sd ON (sd.gml_id=ANY(sh.an) OR sd.gml_id=ANY(sh.zu)) 204 LEFT JOIN v_bs_buchungsart b ON sd.buchungsart=b.wert 205 WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL ORDER BY sd.laufendenummer;"; 194 206 195 207 $v=array($gml_bs); … … 198 210 if (!$resan) { 199 211 echo "<p class='err'>Fehler bei 'andere Buchungsstelle'.</p>\n"; 200 //if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}212 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 201 213 } 202 214 $a=0; // count 203 215 $altbvnr=""; // Gruppenwechsel 204 while($rowan = pg_fetch_array($resan)) {205 $lfdnran =$rowan["lfd"]; // BVNR an206 $gml_bsan= $rowan["gml_id"]; // id der buchungsstelle an207 $baan= $rowan["bart"]; // Buchungsart an, entschluesselt216 while($rowan = pg_fetch_array($resan)) { 217 $lfdnran = $rowan["lfd"]; // BVNR an 218 $gml_bsan= $rowan["gml_id"]; // id der buchungsstelle an 219 $baan= $rowan["bart"]; // Buchungsart an, entschluesselt 208 220 209 221 // a n d e r e s B l a t t (an dem das aktuelle Blatt Rechte hat) 210 222 // dienendes Grundbuch 211 $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, wb.v AS blattartv, z.bezeichnung AS beznam " 212 ."FROM ax_buchungsblatt b JOIN ax_buchungsstelle s ON b.gml_id=s.istbestandteilvon " 213 ."LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk " 214 ."LEFT JOIN alkis_wertearten wb ON cast(b.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart' " 215 ."WHERE s.gml_id= $1 AND b.endet IS NULL ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 223 $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, z.bezeichnung AS beznam 224 FROM ax_buchungsblatt b JOIN ax_buchungsstelle s ON b.gml_id=s.istbestandteilvon 225 LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk 226 WHERE s.gml_id= $1 AND b.endet IS NULL ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 216 227 $v=array($gml_bsan); 217 228 $fbres=pg_prepare("", $sql); … … 223 234 $b=0; 224 235 while($fbrow = pg_fetch_array($fbres)) { // genau 1 225 $fbgml =$fbrow["gml_id"];226 $fbland =$fbrow["land"];227 $fbbez =$fbrow["bezirk"];228 $ beznam=$fbrow["beznam"];229 $fbb latt=$fbrow["blatt"]; // Key230 $ fbbart=$fbrow["blattartv"]; // Value236 $fbgml = $fbrow["gml_id"]; 237 $fbland = $fbrow["land"]; 238 $fbbez = $fbrow["bezirk"]; 239 $fbblatt = $fbrow["blatt"]; 240 $fbbart = blattart($fbrow["blattart"]); 241 $beznam = $fbrow["beznam"]; 231 242 $b++; 232 243 } 233 if ($b != 1) { // Ãberwachen: genau 1?244 if ($b != 1) { 234 245 echo "<p class='err'>Anzahl fiktive Blätter zu anderer Buchungstelle = ".$b."</p>"; 235 246 } 236 247 237 248 // G r u n d b u c h d a t e n zur a n d e r e n Buchungsstelle 238 echo "\n<tr>" 239 ."\n\t<td>"; // Sp.1 Erbbau BVNR249 echo "\n<tr>"; 250 echo"\n\t<td>"; 240 251 if($bvnr == $altbvnr) { // gleiches Grundstueck 241 echo " "; // dannAnzeige unterdruecken252 echo " "; // Anzeige unterdruecken 242 253 } else { 243 echo "<a id='bvnr".$lfdnr."'></a>" // Sprungmarke 244 ."<span class='wichtig'>".$bvnr."</span>"; 254 echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke 255 echo "<span class='wichtig'>".$bvnr."</span>"; // Sp.1 Erbbau BVNR 256 if ($idanzeige) {linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle");} 245 257 $altbvnr = $bvnr; // Gruppenwechsel merken 246 258 } 247 echo "</td>" 248 ."\n\t<td class='dien'>"; // Sp.2 Buchung 249 if ($showkey) {echo "<span class='key'>".$row["buchungsart"]."</span> ";} 250 echo $bart." an</td>" 251 ."\n\t<td>".$anteil."</td>" // Sp.3 Anteil 252 ."\n\t<td class='dien'>"; // Sp.4 Gemarkg., hier Bezirk 253 if ($showkey) {echo "<span class='key'>".$fbbez."</span> ";} 254 echo $beznam 255 ."</td>"; 256 echo "\n\t<td class='dien'>".$fbblatt."</td>" // Sp. 5 Blatt 257 ."\n\t<td class='dien'>".str_pad($lfdnran, 4, "0", STR_PAD_LEFT)."</td>" // Sp.6 BVNR 258 ."\n\t<td class='dien'>"; // Sp.7 Buchungsart 259 if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span> ";} 260 echo $baan." " 261 ."</td>" 262 ."\n\t<td>" // Sp.8 Link ("an" oder "zu"?) 263 ."<p class='nwlink noprint'>an/zu" 264 ." <a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$fbgml; 265 if ($showkey) {echo "&showkey=j";} 266 echo "#bvnr".$lfdnran // Sprungmarke auf der Seite 267 ."' title='Zum Grundbuchnachweis des dienenden Blattes'>"; 268 if ($showkey) {echo "<span class='key'>".$rowan["blattart"]."</span> ";} 269 echo $fbbart 270 ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a></p>" 271 ."</td>" 272 ."\n</tr>"; 259 echo "</td>"; 260 echo "\n\t<td class='dien'>"; // Sp.2 Buchung 261 if ($showkey) { 262 echo "<span class='key'>".$row["buchungsart"]."</span> "; 263 } 264 echo $ba." an</td>"; 265 echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil 266 echo "\n\t<td class='dien'>"; // Sp.4 Gemarkg. hier Bezirk 267 if ($showkey) { 268 echo "<span class='key'>".$fbbez."</span> "; 269 } 270 echo $beznam; 271 echo "</td>"; // Sp.4 hier Bezirk 272 echo "\n\t<td class='dien'>"; // Sp. 5 Blatt 273 echo $fbblatt; // Sp.6 BVNR 274 if ($idanzeige) { 275 linkgml($gkz, $fbgml, "Buchungsblatt", ""); 276 } 277 echo "</td>"; 278 echo "\n\t<td class='dien'>"; // BVNR 279 echo str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 280 if ($idanzeige) { 281 linkgml($gkz, $gml_bsan, "Buchungsstelle", "ax_buchungsstelle"); 282 } 283 284 echo "</td>"; 285 echo "\n\t<td class='dien'>"; // Sp.7 Buchungsart 286 if ($showkey) { 287 echo "<span class='key'>".$rowan["buchungsart"]."</span> "; 288 } 289 echo $baan." "; 290 echo "</td>"; 291 echo "\n\t<td>"; // Sp.8 Link ("an" oder "zu" ?) 292 echo "<p class='nwlink noprint'>an/zu"; //.$rowan["beziehungsart"] Feld gibt es nicht mehr 293 echo " <a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$fbgml; 294 if ($idanzeige) {echo "&id=j";} 295 if ($showkey) {echo "&showkey=j";} 296 echo "#bvnr".$lfdnran; // Sprungmarke auf der Seite 297 echo "' title='Grundbuchnachweis des dienenden Blattes'>"; 298 echo $fbbart; 299 echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a></p>"; 300 echo "</td>"; 301 echo "\n</tr>"; 273 302 274 303 // F l u r s t u e c k s d a t e n zur a n d e r e n Buchungsstelle 275 304 // Buchungsart wird nur in erster Zeile ausgegeben, hier leer 276 $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false , "", ""); // return=Anz.FS305 $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false); // return=Anz.FS 277 306 $fscnt=$fscnt + $aj; 278 307 // +++ Gibt es Sondereigentum beim fiktiven Blatt? 279 308 if ($rowan["nrap"] != "") { 280 echo "\n<tr>" 281 ."\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>"282 ."\n</tr>";309 echo "\n<tr>"; 310 echo "\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>"; 311 echo "\n</tr>"; 283 312 } 284 313 if ($rowan["sond"] != "") { 285 echo "\n<tr>" 286 ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>"287 ."\n</tr>";314 echo "\n<tr>"; 315 echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>"; 316 echo "\n</tr>"; 288 317 } 289 318 $a++; 290 319 } 291 320 if ($a == 0) { 292 echo "\n<tr>" 293 ."\n\t<td><span class='wichtig'>".$bvnr."</span></td>" 294 ."\n\t<td colspan=7>" 295 ."<p class='warn'>Keine Flurstücke zu Buchung ".$bvnr." im berechtigten Bereich.</p>" 296 ."</td>" 297 ."\n</tr>"; 321 echo "\n<tr>"; 322 echo "\n\t<td><span class='wichtig'>".$bvnr."</span>"; 323 if ($idanzeige) { 324 linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle"); 325 } 326 echo "</td>"; 327 echo "\n\t<td colspan=7>"; 328 echo "<p class='warn'>Flurstücke zu ".$bvnr." nicht gefunden.</p>"; 329 echo "</td>"; 330 echo "\n</tr>"; 298 331 } 299 332 } 300 333 $i++; 301 334 if ($row["nrap"] != "") { // Nr im Auft.Plan 302 echo "\n<tr>" 303 ."\n\t<td class='nrap' colspan=8>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td>"304 ."\n</tr>";335 echo "\n<tr>"; 336 echo "\n\t<td class='nrap' colspan=8>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td>"; 337 echo "\n</tr>"; 305 338 } 306 339 if ($row["sond"] != "") { // Sondereigentumsbeschreibung 307 echo "\n<tr>" 308 ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>"309 ."\n</tr>";340 echo "\n<tr>"; 341 echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>"; 342 echo "\n</tr>"; 310 343 } // Ende Buchungsstelle/BVNR 311 344 } // Ende Loop … … 314 347 if ($i == 0) { 315 348 echo "\n<p class='err'>Keine Buchung gefunden.</p>\n"; 349 linkgml($gkz, $gmlid, "Buchungsblatt", ""); 316 350 } else { 317 351 if ($i > 5 and $fscnt > 5) { // nur wenn nicht auf einen Blick zu erkennen … … 325 359 // Blatt <istBestandteilVon< Stelle <an< Stelle >istBestandteilVon> Blatt 326 360 // Fiktiv Fiktiv <zu< Berechtigt Berechtigt 327 $sql="SELECT sf.laufendenummer AS anlfdnr, bb.gml_id, bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung AS blatt, bb.blattart, wa.v AS blattartv,328 sb.gml_id AS gml_s, sb.laufendenummer AS lfdnr, sb.buchungsart, wb.v AS bart, wb.d AS bartd, bz.bezeichnung AS beznam, d.bezeichnung, d.stelle, d.stellenart, wd.v AS stellev361 $sql="SELECT sf.laufendenummer AS anlfdnr, bb.gml_id, bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung AS blatt, bb.blattart, 362 sb.gml_id AS gml_s, sb.laufendenummer AS lfdnr, sb.buchungsart, ba.bezeichner AS bart, bz.bezeichnung AS beznam, ag.bezeichnung, ag.stelle, ag.stellenart 329 363 FROM ax_buchungsstelle sf JOIN ax_buchungsstelle sb ON (sf.gml_id=ANY(sb.an) OR sf.gml_id=ANY(sb.zu)) 330 364 JOIN ax_buchungsblatt bb ON bb.gml_id=sb.istbestandteilvon 331 365 LEFT JOIN ax_buchungsblattbezirk bz ON bb.land=bz.land AND bb.bezirk=bz.bezirk 332 LEFT JOIN ax_dienststelle d ON bz.land=d.land AND bz.stelle=d.stelle 333 LEFT JOIN alkis_wertearten wa ON cast(bb.blattart AS character varying)=wa.k AND wa.element='ax_buchungsblatt' AND wa.bezeichnung='blattart' 334 LEFT JOIN alkis_wertearten wb ON cast(sb.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' 335 LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart' 366 LEFT JOIN ax_dienststelle ag ON bz.land=ag.land AND bz.stelle=ag.stelle 367 LEFT JOIN v_bs_buchungsart ba ON sb.buchungsart=ba.wert 336 368 WHERE sf.istbestandteilvon = $1 AND sf.endet IS NULL AND sb.endet IS NULL AND bb.endet IS NULL 337 ORDER BY cast(sf.laufendenummer AS integer), bz.bezeichnung, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);"; 369 ORDER BY cast(sf.laufendenummer AS integer), bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);"; 370 // Ãnd. 2014-12-30: Sort. wie im ersten Teil 338 371 339 372 $v = array($gmlid); … … 347 380 while($rowb = pg_fetch_array($resb)) { 348 381 if ($b == 0) { // Ueberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde 349 echo "\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Berechtigte Grundbücher</h3>\n" 350 ."\n<table class='outer'>"351 ."\n<tr>"352 ."\n\t<td class='heads' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurstücke'><span class='wichtig'>an BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='primäre Sortierung'></td>"353 // ."\n\t<td class='heads'>Land</td>"354 ."\n\t<td class='head'>Dienststelle</td>"355 ."\n\t<td class='heads'>Bezirk</td>"356 ."\n\t<td class='heads'><span class='wichtig'>Blatt</span></td>"357 ."\n\t<td class='heads'>BVNR</td>"358 ."\n\t<td class='head'>Buchungsart</td>"359 ."\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>"360 ."\n</tr>";382 echo "\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Berechtigte Grundbücher</h3>\n"; 383 echo "\n<table class='outer'>"; 384 echo "\n<tr>"; // Tab Kopf 385 echo "\n\t<td class='head' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurstücke'>an <span class='wichtig'>BVNR</span></td>"; // wie oben 386 echo "\n\t<td class='head'>Land</td>"; 387 echo "\n\t<td class='head'>Dienststelle</td>"; 388 echo "\n\t<td class='head'>Bezirk</td>"; 389 echo "\n\t<td class='head'><span class='wichtig'>Blatt</span></td>"; 390 echo "\n\t<td class='head'>BVNR</td>"; 391 echo "\n\t<td class='head'>Buchungsart</td>"; 392 echo "\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>"; 393 echo "\n</tr>"; 361 394 } 362 395 … … 366 399 $gml_s=$rowb["gml_s"]; // id der ber. B-Stelle 367 400 $blart=$rowb["blattart"]; 368 369 401 $buch=$rowb["buchungsart"]; // Buchungsart Stelle berechtigt 370 402 $bart=$rowb["bart"]; // BA entschl. … … 372 404 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 373 405 374 echo "\n<tr>"; // Der Teil "berechtigte GrundbÃŒcher" ist sortiert wie oberer Teil "FlurstÃŒcke" 406 echo "\n<tr>"; 407 // Teil berechtigte GrundbÃŒcher ist sortiert wie oberer Teil "FlurstÃŒcke" 375 408 echo "\n\t<td><span class='wichtig'>".$anlfdnr0."</span>"; 376 377 echo "</td>" 378 //."\n\t<td>".$rowb["land"]."</td>" 379 ."\n\t<td>"; // Amtsgericht,Grundbuchamt 380 echo $rowb["stellev"]." "; 381 if ($showkey) {echo "<span class='key'>".$rowb["stelle"]."</span> ";} 382 echo $rowb["bezeichnung"] 383 ."</td>" 384 ."\n\t<td>"; 385 if ($showkey) {echo "<span class='key'>".$rowb["bezirk"]."</span> ";} 386 echo $rowb["beznam"] 387 ."</td>" 388 ."\n\t<td><span class='wichtig'>".$rowb["blatt"]."</span></td>" 389 ."\n\t<td>".$bvnr."</td>" 390 ."\n\t<td title='".htmlentities($rowb["bartd"], ENT_QUOTES, "UTF-8")."'>"; 391 if ($showkey) {echo "<span class='key'>".$buch."</span> ";} 392 echo $bart 393 ."</td>" 394 ."\n\t<td>" 395 ."\n\t\t<p class='nwlink noprint'>" 396 ."\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gml_b."#bvnr".$lfdnr; 397 if ($showkey) {echo "&showkey=j";} 398 echo "' title='Nachweis des berechtigten Blattes an ".$blattart."'>".$rowb["blattartv"]; // oder "zu" statt "an" 399 echo " \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 400 ."\n\t\t</p>" 401 ."</td>" 402 ."\n</tr>"; 409 // Link "nach oben" - bringt das Nutzen? Nur bei ganz langen BestÀnden. 410 /* echo "\n\t\t<p class='noprint'> "; 411 echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlid."#bvnr".$anlfdnr; 412 if ($idanzeige) {echo "&id=j";} 413 if ($showkey) {echo "&showkey=j";} 414 echo "' title='Sprung nach oben zum Grundstück'>hoch</a>"; 415 echo "\n\t\t</p>"; 416 ++ <p> auflösen, sonst 2 Zeilen im <td> ++ 417 */ 418 echo "</td>"; 419 echo "\n\t<td>".$rowb["land"]."</td>"; 420 echo "\n\t<td>"; // Amtsgericht 421 echo dienststellenart($rowb["stellenart"])." "; 422 if ($showkey) { 423 echo "<span class='key'>".$rowb["stelle"]."</span> "; 424 } 425 echo $rowb["bezeichnung"]; 426 echo "</td>"; 427 echo "\n\t<td>"; 428 if ($showkey) { 429 echo "<span class='key'>".$rowb["bezirk"]."</span> "; 430 } 431 echo $rowb["beznam"]; 432 echo "</td>"; 433 echo "\n\t<td><span class='wichtig'>".$rowb["blatt"]."</span>"; 434 if ($idanzeige) {linkgml($gkz, $gml_b, "Buchungsblatt", "");} 435 echo "</td>"; 436 echo "\n\t<td>".$bvnr; 437 if ($idanzeige) {linkgml($gkz, $gml_s, "Buchungsstelle", "ax_buchungssstelle");} 438 echo "</td>"; 439 echo "\n\t<td>"; 440 if ($showkey) { 441 echo "<span class='key'>".$buch."</span> "; 442 } 443 echo $bart; 444 echo "</td>"; 445 echo "\n\t<td>"; 446 echo "\n\t\t<p class='nwlink noprint'>"; 447 echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gml_b."#bvnr".$lfdnr; 448 if ($idanzeige) {echo "&id=j";} 449 if ($showkey) {echo "&showkey=j";} 450 echo "' title='Nachweis des berechtigten Blattes an ".$blattart."'>"; // oder "zu" statt "an" 451 echo blattart($blart); 452 echo " \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 453 echo "\n\t\t</p>"; 454 echo "</td>"; 455 echo "\n</tr>"; 403 456 $b++; 404 457 } … … 415 468 ?> 416 469 417 <div class='buttonbereich noprint'> 418 <hr> 419 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 420 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 421 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a> 422 </div> 470 <form action=''> 471 <div class='buttonbereich noprint'> 472 <hr> 473 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 474 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 475 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a> 476 </div> 477 </form> 478 423 479 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> 480 424 481 </body> 425 482 </html> -
trunk/info/info/alkis/alkisexport.php
r376 r377 6 6 Der View verkettet Flurstueck - Buchungsstelle - Grundbuch - Eigentuemer 7 7 Die Lagebezeichnung des FlurstÃŒcks wird in ein Feld komprimiert. 8 Parameter Beispiele: 9 ?gkz=mandant&tabtyp=flurstueck/grundbuch/person&gmlid=DE... 10 ?gkz=270&tabtyp=gemarkung&gemarkung=2662 11 ?gkz=270&gemarkung=2662 12 Parameter Beispiele fÃŒr Fehler: 13 ?gkz=270&tabtyp=gemarkung&gmlid=2662 14 ?gkz=270&tabtyp=flurstueck&gemarkung=2662 15 ?gkz=270&tabtyp=flurstueck 16 ?gkz=270&gmlid=2662 8 Parameter: gkz=mandant&gmlid=DE...&tabtyp=flurstueck/grundbuch/person 17 9 18 Version 19 2016-02-23 Version fuer norGIS-ALKIS-Import 20 2016-10-18 Export einer ganzen Gemarkung zulassen (Sonderfall bei den Parametern) 21 2016-11-29 Gemeinsam genutzte Datenbanken ermöglichen 22 23 ++ ToDo: SQL "exp_csv_str" und "exp_csv_str" optimieren 10 2014-01-17 krz f.j. 11 2014-01-20 weitere Spalten und verbesserte Formatierung 12 2014-01-21 Der View liefert "Rechtsgemeinschaft" nun als Feld in allen Personen-SÀtzen 13 eines GB-Blattes statt als eigenen "Satz ohne Person". 14 2014-01-27 Erweiterung auf Filter "strasse" ("gml_id" aus "ax_lagebezeichnungkatalogeintrag") 15 2014-09-04 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 16 2014-09-10 Bei Relationen den Timestamp abschneiden 17 2014-09-30 RÃŒckbau substring(gml_id) 18 2015-12-09 LATIN1 in '' 24 19 */ 25 20 … … 36 31 $res=pg_prepare("", $sql); 37 32 $res=pg_execute("", $v); 38 if (!$res) {return "** Fehler bei Lagebezeichnung **";} 33 if (!$res) { 34 return "** Fehler bei Lagebezeichnung **"; //.$sql; 35 } 39 36 $j=0; 40 37 $lagehsnr=""; … … 57 54 // HIER START // 58 55 59 $gkz=''; $tabtyp = ''; $gemarkung=''; $gmlid=''; // erwartete Parameter initialisieren 60 $cntget = extract($_GET); // aktuelle Parameter aus URL auslesen 61 require_once("alkis_conf_location.php"); // Konfiguration laden 62 include("alkisfkt.php"); // Funktionen der ALKIS-Auskunft laden 63 64 if ($tabtyp == '') { // Parameter (-kombinationen) pruefen 65 if ($gemarkung == '') { // Beim Wert "gmlid" MUSS man die Tabelle dazu nennen 66 exit ("Fehler: Art des Suchfilters nicht angeben."); 67 } else { // Art des Wertes bestimmt eindeutig den Filter 68 $tabtyp = 'gemarkung'; 69 } 70 } elseif ($tabtyp == 'gemarkung') { 71 if ($gemarkung == '') { 72 exit ("Fehler: Gemarkungsnummer nicht angeben."); 73 } 74 } 75 if ($gmlid == '') { 76 if ($gemarkung == '') { 77 exit ("Fehler: Kein Wert fuer die Suche angegeben."); 78 } else { // Wert fÃŒr Gemarkungsnummer angegeben 79 if ($tabtyp != 'gemarkung') { 80 exit ("Fehler: Falsche Kombination Parameter tabtyp='".$tabtyp."' mit Wert fuer Gemarkungsnummer."); 81 } 82 $filename='alkis_'.$tabtyp.'_'.$gemarkung.'.csv'; 83 } 84 } else { // alles gut 85 $filename='alkis_'.$tabtyp.'_'.$gmlid.'.csv'; 86 } 87 88 // DOWNLOAD der CSV-Datei vorbereiten (statt HTML-Ausgabe) 56 $cntget = extract($_GET); // Parameter aus URL lesen 89 57 header('Content-type: application/octet-stream'); 90 header('Content-Disposition: attachment; filename="'.$filename.'"'); 58 header('Content-Disposition: attachment; filename="alkis_'.$tabtyp.'_'.$gmlid.'.csv"'); 59 require_once("alkis_conf_location.php"); 60 include("alkisfkt.php"); 91 61 92 62 // CSV-Ausgabe: Kopfzeile mit Feldnamen … … 94 64 95 65 // Datenbank-Verbindung 96 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisexport.php'"); 97 if (!$con) {exit("Fehler beim Verbinden der DB");} 66 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 67 if (!$con) { 68 exit("Fehler beim Verbinden der DB"); 69 } 98 70 pg_set_client_encoding($con, 'LATIN1'); // FÃŒr Excel kein UTF8 ausgeben 99 100 $viewname="exp_csv"; // Standard-View, ist in der Datenbank gespeichert101 $v=array($gmlid); // Standard-Filter-Feld102 71 103 72 // Der Parameter "Tabellentyp" bestimmt den Namen des Filter-Feldes aus dem View "exp_csv". 104 73 switch ($tabtyp) { // zulaessige Werte fuer &tabtyp= 105 case 'flurstueck': // ax_flurstueck.gml_id 106 $filter = "fsgml"; 107 break; 108 case 'grundbuch': // ax_buchungsblatt.gml_id 109 $filter = "gbgml"; 110 break; 111 case 'person': // ax_person.gml_id 112 $filter = "psgml"; 113 break; 114 case 'strasse': // ax_lagebezeichnungkatalogeintrag.gml_id = StraÃe-GML-ID 115 $filter = "stgml"; 116 $viewname="exp_csv_str"; // alternativer View mit "_str", ist in der Datenbank gespeichert 117 break; 118 case 'gemarkung': // SONDERfall als Parameter wird "Gemarkungsnummer" und nicht "gml_id" geliefert 119 $filter = "gemarkungsnummer"; 120 $v=array($gemarkung); // anderes Filter-Feld, anderer Parameter 121 break; 122 default: 123 exit("Falscher Parameter '".$tabtyp."'"); 124 break; 74 case 'flurstueck': $filter = "fsgml"; break; // ax_flurstueck.gml_id 75 case 'grundbuch': $filter = "gbgml"; break; // ax_buchungsblatt.gml_id 76 case 'person': $filter = "psgml"; break; // ax_person.gml_id 77 case 'strasse': $filter = "stgml"; break; // ax_lagebezeichnungkatalogeintrag.gml_id = StraÃe-GML-ID 78 default: exit("Falscher Parameter '".$tabtyp."'"); break; 125 79 } 126 80 127 81 // Daten aus gespeichertem View, zusaetzlich Filter: "feld"='wert' mitgeben 128 $sql="SELECT * FROM ".$viewname." WHERE ".$filter." = $1 "; 82 if ($tabtyp == 'strasse') { // Sonderversion 83 $sql="SELECT * FROM exp_csv_str WHERE ".$filter." = $1 "; 84 } else { 85 $sql="SELECT * FROM exp_csv WHERE ".$filter." = $1 "; 86 } 129 87 88 $v=array($gmlid); 130 89 $res=pg_prepare("", $sql); 131 90 $res=pg_execute("", $v); … … 147 106 $flstnummer=$row["zaehler"]; 148 107 $nenner=$row["nenner"]; 149 // Bruchnummer kann in Excel als Datum interpretiert werden. In '' setzen. 150 if ($nenner > 0) {$flstnummer="'".$flstnummer."/".$nenner."'";} // BruchNr 108 if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 151 109 $fs_flae=$row["fs_flae"]; // amtliche Fl. aus DB-Feld 152 110 … … 182 140 $rechtsg=$row["nam_bes"]; // Beschrieb der Rechtsgemeinschaft 183 141 } else { 184 // $rechtsg=rechtsgemeinschaft($nam_adr); // EntschlÃŒsseln 185 $rechtsg=$row["nam_adrv"]; // Art der Rechtsgemeischaft (Value zum Key) 142 $rechtsg=rechtsgemeinschaft($nam_adr); // EntschlÃŒsseln 186 143 } 187 144 } … … 191 148 $nana=$row["nachnameoderfirma"]; 192 149 $namteil=$row["namensbestandteil"]; 193 //$name=anrede($row["anrede"]); 194 $name=$row["anrv"]; // Anrede (Value zum Key) 150 $name=anrede($row["anrede"]); 195 151 if ($name != "") {$name.=" ";} // Trenner 196 152 if ($namteil != "") {$name.=$namteil." ";} // von und zu -
trunk/info/info/alkis/alkisfkt.php
r376 r377 1 1 <?php 2 2 /* Modul: alkisfkt.php 3 4 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 4 Functions 6 5 7 6 Version: 8 2016-02-24 Version fuer norGIS-ALKIS-Import, "function linkgml" raus. Case-EntschlÃŒsselung raus. 9 2016-03-03 Hinweis auf Datenfehler wenn "ax_person" fehlt in function "eigentuemer" 10 2016-03-14 Kleine Korrekturen 11 2016-11-29 Gemeinsam genutzte Datenbanken ermöglichen (Filter Gemeinde) 7 2010-12-17 Astrid Emde: Prepared Statements (pg_query -> pg_prepare + pg_execute) 8 2011-11-01 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen 9 2011-11-02 Parameter debug in function eigentuemer 10 2011-11-17 Variable ($debug, $idanzeige, $showkey) von Parameter nach global. Die heiÃen in allen Programmteilen gleich. 11 2014-01-22 Eigentuemerart: Mehr Werte und Zugriff auf DB-SchlÃŒssel-Tabelle 12 2014-02-06 Korrektur EigentÃŒmerart 13 2014-09-09 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 14 2014-09-15 Bei Relationen den Timestamp abschneiden 15 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 16 2014-12-30 class='fsnr' 17 2015-12-09 Austausch .ico durch .png 12 18 */ 13 19 14 20 function footer($gmlid, $link, $append) { 15 21 // Einen Seitenfuss ausgeben. 22 // Den URL-Parameter "&id=j/n" und "&showkey=j/n" in allen Kombinationen umschalten lassen. 16 23 // Die Parameter &gkz= und &gmlid= kommen in allen Modulen einheitlich vor 17 // Den URL-Parameter "&showkey=j/n" umschalten lassen. 18 // $append wird angehaengt wenn gefuellt. Anwendung: &eig=j bei FS-NW, <yp=m/p/o bei Lage 19 global $gkz, $showkey, $hilfeurl, $auth; 20 21 echo "\n<div class='confbereich noprint'>" 22 ."\n<table class='outer'>\n<tr>"; 24 25 // Der Parameter $append wird angehaengt wenn gefuellt 26 // Anwendung: &eig=j bei FS-NW, <yp=m/p/o bei Lage 27 global $gkz, $idumschalter, $idanzeige, $showkey, $hilfeurl; 28 29 $customer=$_SESSION["mb_user_name"]; 30 echo "\n<div class='confbereich noprint'>"; 31 echo "\n<table class='outer'>\n<tr>"; 23 32 24 33 // Spalte 1: Info Benutzerkennung 25 if ($auth == "mapbender") { 26 $customer=$_SESSION["mb_user_name"]; 27 echo "\n\t<td title='Info'><i>Benutzer: ".$customer."</i></td>"; 28 } else { 29 echo "\n\t<td> </td>"; 30 } 34 echo "\n\t<td title='Info'><i>Benutzer: ".$customer."</i></td>"; 31 35 32 36 // Spalte 2: Umschalter 33 37 echo "\n\t<td title='Konfiguration'>"; 34 38 $mylink ="\n\t\t<a class='gmlid' href='".$link."gkz=".$gkz."&gmlid=".$gmlid.$append; 35 36 if ($showkey) { // Umschalten SchlÃŒssel ein/aus 37 echo $mylink."&showkey=n' title='Verschlüsselungen ausblenden'>Schlüssel aus</a>"; 39 if ($showkey) {$mykey = "&showkey=j";} else {$mykey = "&showkey=n";} 40 if ($idumschalter) { // fuer Entwicklung ODER Test 41 if ($idanzeige) {$myid = "&id=j";} else {$myid = "&id=n";} 42 43 // Umschalter nur ausgeben, wenn in conf gesetzt 44 if ($idanzeige) { // Umschalten ID ein/aus 45 echo $mylink.$mykey."&id=n' title='Ohne Verfolgung der ALKIS-Beziehungen'>"; 46 echo "<img src='ico/Beziehung_link.png' width='16' height='16' alt=''> ID aus</a>"; 47 } else { 48 echo $mylink.$mykey."&id=j' title='Verfolgung der GML-ID in den ALKIS-Beziehungen'>"; 49 echo "<img src='ico/Beziehung_link.png' width='16' height='16' alt=''> ID ein</a>"; 50 } 51 echo " | "; 52 } else { // keinen ID-Umschalter 53 $myid = ""; 54 } 55 56 if ($showkey) { // // Umschalten SchlÃŒssel ein/aus 57 echo $mylink.$myid."&showkey=n' title='Verschlüsselungen ausblenden'>Schlüssel aus</a>"; 38 58 } else { 39 echo $mylink. "&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein</a>";59 echo $mylink.$myid."&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein</a>"; 40 60 } 41 61 echo "\n\t</td>"; 42 62 43 63 // Spalte 3 44 echo "\n\t<td title='Hilfe'>" 45 ."\n\t\t<p class='nwlink'>\n\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t</p>\n\t</td>"46 ."\n</tr>\n</table>\n</div>\n";64 echo "\n\t<td title='Hilfe'>"; 65 echo "\n\t\t<p class='nwlink'>\n\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t</p>\n\t</td>"; 66 echo "\n</tr>\n</table>\n</div>\n"; 47 67 return 0; 48 68 } 49 69 50 function ber_bs_hinw($gmls) { 51 // Unter einem Grundbuch-Link den Hinweis auf "berechtigte Buchungssstellen" anzeigen 52 // In FS-Nachweis wird nur der EigentÃŒmer des direkt gebuchten GrundstÃŒcks angezeigt. 53 // Den Erbbauberechtigten sieht man erst in der Grundbuch-Auskunft. 54 global $debug, $showkey; 55 56 // Buchungstelle dien. >an> Buchungstelle herr. 57 $sql ="SELECT count(sh.gml_id) AS anz, sh.buchungsart, a.v " 58 ."FROM ax_buchungsstelle sd JOIN ax_buchungsstelle sh ON sd.gml_id=ANY(sh.an) " 59 ."LEFT JOIN alkis_wertearten a ON sh.buchungsart=cast(a.k AS integer) " 60 ."WHERE sd.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL AND a.element='ax_buchungsstelle' and a.bezeichnung='buchungsart' " 61 ."GROUP BY sh.buchungsart, a.v;"; 62 63 $v = array($gmls); // id dienende BS 64 $resan = pg_prepare("", $sql); 65 $resan = pg_execute("", $v); 66 if (!$resan) { 67 echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen'.</p>\n"; 68 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmls."'</p>";} 69 } 70 $an=0; 71 while($rowan = pg_fetch_array($resan)) { 72 $an++; 73 if ($an == 1) {echo "\n\t<br>\n\t<p class='nwlink' title='Andere Grundstücke mit Rechten an diesem.'>Berechtigte Buchungen:<br><b>";} 74 if ($an > 1) {echo",<br>";} // kann es gemischste Buchungsarten geben? 75 echo $rowan["anz"]." ".htmlentities($rowan["v"], ENT_QUOTES, "UTF-8"); 76 if ($showkey) {echo " <span class='key'>(".$rowan["buchungsart"].")</span>";} 77 } 78 if ($an == 0) { 79 echo "<br><p class='nwlink' title='Kein anderes Grundstück hat ein Recht an diesem.'>Keine berechtigte Buchung</p>"; 80 } else { 81 echo "</b></p>"; 82 } 83 pg_free_result($resan); 70 function linkgml($gkz, $gml, $typ, $tabelle) { 71 // Einen Link zur Verfolgung der Beziehungen mit dem Modul alkisrelationen.php 72 // tabelle = nur angeben fÃŒr Tabellen, die Relationen-Spalten besitzen, sonst leer 73 $kurzid=substr($gml, 12, 4); // ID in Anzeige kuerzen (4 Zeichen), der Anfang ist immer gleich 74 // PostNAS 0.8: Timestamp abschneiden 75 echo "\n\t\t<a target='_blank' title='ID ".$typ."' class='gmlid noprint' "; 76 echo "href='alkisrelationen.php?gkz=".$gkz."&gmlid=".$gml."&otyp=".$typ."&tabelle=".$tabelle."'>"; 77 echo "<img src='ico/Beziehung_link.png' width='16' height='16' alt=''>".$kurzid."</a>"; 78 return 0; 84 79 } 85 80 … … 90 85 $kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang 91 86 $kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe 92 $kurz=rtrim($kurz); // Leerzeichen hinten93 // echo "/n<p class='dbg'> lang='".$lang."'</p>/n<p class='dbg'> kurz='".$kurz."'</p>";94 87 return $kurz; 95 88 } 96 89 97 function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus , $bartkey, $bartstory) {90 function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus) { 98 91 /* Bestandsnachweis - Flurstuecksdaten 99 92 Die Tabellenzeilen mit den Flurstuecksdaten zu einer Buchungsstelle im Bestandsnachweis ausgeben. 100 93 Die Funktion wird je einmal aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall). 101 94 Weiterere Aufrufe ggf. bei Erbbaurecht fÃŒr die mit "an" verknuepften Buchungsstellen. 102 Table-Tag und Tabellenkopf werden im aufrufenden Programm ausgegeben. */103 global $debug, $gkz, $ showkey, $filtkreis, $filtgem;95 Table-Tag und Kopfzeile im aufrufenden Programm. */ 96 global $debug, $gkz, $idanzeige, $showkey; 104 97 105 98 // F L U R S T U E C K … … 107 100 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 108 101 LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 109 WHERE f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL AND s.gml_id= $1 "; 110 if ($filtgem == '' ) { // ungefiltert 111 $v=array($gml_bs); 112 } else { 113 $sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // ZustÀndiges Gebiet 114 $v=array($gml_bs, $filtkreis, $filtgem); 115 } 116 $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 102 WHERE s.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 103 104 $v = array($gml_bs); 117 105 $resf = pg_prepare("", $sql); 118 106 $resf = pg_execute("", $v); … … 121 109 if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben 122 110 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 123 } else {124 $bvnr="";125 111 } 126 112 $altlfdnr=""; … … 137 123 echo "\n<tr>"; // eine Zeile je Flurstueck 138 124 // Sp. 1-3 der Tab. aus Buchungsstelle, nicht aus FS 139 if($lfdnr == $altlfdnr) { // gleiches Grundstueck 140 echo "\n\t<td> </td>" 141 ."\n\t<td> </td>" 142 ."\n\t<td> </td>"; 143 } else { // Sprungmarke, BVNR 144 echo "\n\t<td>" 145 ."<a id='bvnr".$lfdnr."'></a><span class='wichtig'>".$bvnr."</span>" /// ++++ FEHLER?? $bvnr 146 ."</td>"; 147 148 echo "\n\t<td title ='".$bartstory."'>"; // Buchungsart 149 if ($showkey) {echo "<span class='key'>".$bartkey."</span> ";} // Schluessel 125 if($lfdnr == $altlfdnr) { // gleiches Grundstueck 126 echo "\n\t<td> </td>"; 127 echo "\n\t<td> </td>"; 128 echo "\n\t<td> </td>"; 129 } else { 130 echo "\n\t<td>"; 131 echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke 132 echo "<span class='wichtig'>".$bvnr."</span>"; // BVNR 133 if ($idanzeige) {linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle");} 134 echo "</td>"; 135 136 echo "\n\t<td>"; // Buchungsart 137 // if ($showkey) {echo "<span class='key'>".$???."</span> ";} // Schluessel 150 138 echo $ba; // entschluesselt 151 echo "</td>" 152 ."\n\t<td> </td>"; // Anteil139 echo "</td>"; 140 echo "\n\t<td> </td>"; // Anteil 153 141 $altlfdnr=$lfdnr; 154 142 } 155 143 //Sp. 4-7 aus Flurstueck 156 144 echo "\n\t<td>"; 157 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 158 echo $rowf["bezeichnung"]."</td>" 159 ."\n\t<td>".$flur."</td>" 160 ."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span>" 161 ."</td>" 162 ."\n\t<td class='fla'>".$flae."</td>"; 163 164 echo "\n\t<td><p class='nwlink noprint'>" 165 ."<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 145 if ($showkey) { 146 echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> "; 147 } 148 echo $rowf["bezeichnung"]."</td>"; 149 echo "\n\t<td>".$flur."</td>"; 150 echo "\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span>"; 151 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück", "ax_flurstueck");} 152 echo "</td>"; 153 echo "\n\t<td class='fla'>".$flae."</td>"; 154 155 echo "\n\t<td><p class='nwlink noprint'>"; 156 echo "<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 157 if ($idanzeige) {echo "&id=j";} 166 158 if ($showkey) {echo "&showkey=j";} 167 echo "' title='Flurstücksnachweis'>Flurstück " 168 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"169 ."</a>"170 ."</p></td>"171 ."\n</tr>";159 echo "' title='Flurstücksnachweis'>Flurstück "; 160 echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 161 echo "</a>"; 162 echo "</p></td>"; 163 echo "\n</tr>"; 172 164 173 165 $j++; … … 178 170 if ($debug > 2) {echo "<p class='dbg'>SQL='".$sql."'<br>$1 = '".$gml_bs."'</p>";} 179 171 } */ 172 180 173 pg_free_result($resf); 181 174 return $j; … … 192 185 // Schleife 1: N a m e n s n u m m e r 193 186 // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt 194 global $debug, $gkz, $ showkey;187 global $debug, $gkz, $idanzeige, $showkey; 195 188 196 189 // Link ÃŒber Java-Class? (Ja in alkisinlayausk.php, sonst normal) … … 203 196 } // Beispiel-Link href='javascript:imFenster(\"alkislage.php?gkz= ... ."\")'>xxx "; 204 197 205 $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass, n.benennt, wn.v AS adrv, we.v AS eiartv 206 FROM ax_namensnummer n 207 LEFT JOIN alkis_wertearten wn ON cast(n.artderrechtsgemeinschaft AS character varying)=wn.k AND wn.element='ax_namensnummer' AND wn.bezeichnung='artderrechtsgemeinschaft' 208 LEFT JOIN alkis_wertearten we ON cast(n.eigentuemerart AS character varying)=we.k AND we.element='ax_namensnummer' AND we.bezeichnung='eigentuemerart' 209 WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;"; 198 $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass "; 199 $sqln.="FROM ax_namensnummer n WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;"; 210 200 211 201 $v = array($gmlid); // 16 Stellen bei Relationen … … 214 204 215 205 if (!$resn) { 216 echo " \n<p class='err'>Fehler bei Eigentümer</p>\n";206 echo "<p class='err'>Fehler bei Eigentümer</p>\n"; 217 207 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";} 218 208 } 219 209 220 echo "\n <table class='eig'>";210 echo "\n\n<table class='eig'>"; 221 211 $n=0; // Z.NamNum. 222 212 223 213 while($rown = pg_fetch_array($resn)) { 224 214 $gmlnn=$rown["gml_id"]; 225 $namnum=kurz_namnr($rown["lfd"]); 226 $rechtsg=$rown["adr"]; 227 echo "\n<tr>" 228 ."\n\t<td class='nanu' title='Namens-Nummer'>\n\t\t<p>" // Sp. 1 229 .$namnum." " // VOR die Tabelle: "EigentÃŒmer" 230 ."</p>\n\t</td>" 231 . "\n\t<td>"; // Sp. 2 215 echo "\n<tr>"; 216 echo "\n\t<td class='nanu' title='Namens-Nummer'>\n\t\t<p>"; // Sp. 1 217 // VOR die Tabelle: "EigentÃŒmer" 218 $namnum=kurz_namnr($rown["lfd"]); 219 echo $namnum." "; 220 if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer", "ax_namensnummer");} 221 echo "</p>\n\t</td>"; 222 223 echo "\n\t<td>"; // Sp. 2 224 $rechtsg=$rown["adr"]; 232 225 if ($rechtsg != "" ) { 233 226 if ($rechtsg == 9999) { // sonstiges 234 227 echo "\n\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; 235 228 } else { 236 echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities( $rown["adrv"], ENT_QUOTES, "UTF-8")."</p>";229 echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>"; 237 230 } 238 231 } … … 247 240 // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 248 241 242 249 243 // Schleife 2: P e r s o n 250 244 // Beziehung: ax_person <benennt< ax_namensnummer 251 252 // $sqlp="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad " 253 // ."FROM ax_person p JOIN ax_namensnummer nn ON nn.benennt=p.gml_id WHERE nn.gml_id= $1 AND p.endet IS NULL AND nn.endet IS NULL;"; 254 // $v = array($gmlnn); 255 256 // 03.03.16: 257 $sqlp="SELECT gml_id, nachnameoderfirma, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad " 258 ."FROM ax_person WHERE gml_id= $1 AND endet IS NULL;"; 259 $gmlpers=$rown["benennt"]; 260 $v = array($gmlpers); // gml_id von ax_person 245 $sqlp ="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "; 246 $sqlp.="FROM ax_person p JOIN ax_namensnummer nn ON nn.benennt=p.gml_id WHERE nn.gml_id= $1 AND p.endet IS NULL AND nn.endet IS NULL;"; 247 248 $v = array($gmlnn); 261 249 $resp = pg_prepare("", $sqlp); 262 250 $resp = pg_execute("", $v); 251 263 252 if (!$resp) { 264 253 echo "\n\t<p class='err'>Fehler bei Person</p>\n"; 265 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gml pers."'</p>";}254 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gmlnn."'</p>";} 266 255 } 267 256 268 257 $i=0; // cnt Person 269 while($rowp = pg_fetch_array($resp)) { // Schleife weglassen? nn >benennt> Person ist KEINArray!270 $diePerson=""; //++ Anrede?258 while($rowp = pg_fetch_array($resp)) { // ++ Schleife? nn >benennt> Person ist kein Array! 259 $diePerson=""; 271 260 if ($rowp["akademischergrad"] <> "") {$diePerson=$rowp["akademischergrad"]." ";} 272 261 $diePerson.=$rowp["nachnameoderfirma"]; … … 277 266 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute 278 267 279 if ($i > 0) { // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0 268 // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0 269 if ($i > 0) { 280 270 echo "\n<tr>\n\t<td> </td>\n\t<td>"; 281 271 } 282 272 // Spalte 2 = Angaben 283 $eiartkey=$rown["eigentuemerart"]; // Key284 $eiart= $rown["eiartv"]; // Value273 $eiartkey=$rown["eigentuemerart"]; 274 $eiart=eigentuemerart($eiartkey); 285 275 echo "\n\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t</td>"; 286 276 287 277 // Spalte 3 = Link 288 278 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 279 if ($idanzeige) {linkgml($gkz, $rowp["gml_id"], "Person", "ax_person"); echo " ";} 289 280 if ($showkey AND $eiartkey != '') { // oft leer 290 281 echo "<span class='key'>(".$eiartkey.")</span> "; 291 282 } 292 echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp[0]; 283 echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp["gml_id"]; 284 if ($idanzeige) {echo "&id=j";} 293 285 if ($showkey) {echo "&showkey=j";} 294 echo $lnknach."' title='vollständiger Name und Adresse eines Eigentümers'>".$eiart 295 ." <img src='ico/Eigentuemer.png' width='16' height='16' alt=''></a>\n\t\t</p>"296 ."\n\t</td>\n</tr>";286 echo $lnknach."' title='vollständiger Name und Adresse eines Eigentümers'>".$eiart; 287 echo " <img src='ico/Eigentuemer.png' width='16' height='16' alt=''></a>\n\t\t</p>"; 288 echo "\n\t</td>\n</tr>"; 297 289 298 290 if ($mitadresse) { 299 291 // Schleife 3: A d r e s s e (OPTIONAL) 300 $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland "301 ."FROM ax_anschrift a JOIN ax_person p ON a.gml_id=ANY(p.hat) WHERE p.gml_id= $1 AND a.endet IS NULL AND p.endet IS NULL LIMIT 2;";292 $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland 293 FROM ax_anschrift a JOIN ax_person p ON a.gml_id=ANY(p.hat) WHERE p.gml_id= $1 AND a.endet IS NULL AND p.endet IS NULL LIMIT 2;"; 302 294 $gmlp=$rowp["gml_id"]; // Person 303 295 $v = array($gmlp); … … 327 319 echo "\n<tr>\n\t<td> </td>"; //Sp. 1 328 320 echo "\n\t<td><p class='gadr'>"; //Sp. 2 329 if ($str.$hsnr != "") {echo $str." ".$hsnr."<br>";} 330 if ($plz.$ort != "") {echo $plz." ".$ort;} 331 if ($land != "" and $land != "DEUTSCHLAND") {echo ", ".$land;} 332 echo "</p></td>\n\t<td>"; // Sp. 3 333 echo " </td>\n</tr>"; 321 if ($str.$hsnr != "") { 322 echo $str." ".$hsnr."<br>"; 323 } 324 if ($plz.$ort != "") { 325 echo $plz." ".$ort; 326 } 327 if ($land != "" and $land != "DEUTSCHLAND") { 328 echo ", ".$land; 329 } 330 echo "</p></td>"; 331 echo "\n\t<td>"; // Sp. 3 332 if ($idanzeige) { 333 echo "<p class='nwlink noprint'>"; 334 linkgml($gkz, $gmla, "Adresse", "ax_adresse"); 335 echo "</p>"; 336 } else { 337 echo " "; 338 } 339 echo "</td>\n</tr>"; 334 340 } else { // manchmal dopplete Angaben (_straÃe / _str.) 335 341 echo "\n<tr>\n\t<td> </td>\n\t<td><p class='dbg' title='Siehe Auskunft zur Person'>weitere Adresse</p></td>\n\t<td> </td>\n</tr>"; … … 348 354 $nenner=str_replace(".", ",", $rown["nenner"]); 349 355 $comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundstück oder Recht)."; 350 echo "\n<tr>\n\t<td> </td>" // Sp. 1351 ."\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>"352 ."\n\t<td> </td>\n</tr>"; // Sp. 3356 echo "\n<tr>\n\t<td> </td>"; // Sp. 1 357 echo "\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>"; 358 echo "\n\t<td> </td>\n</tr>"; // Sp. 3 353 359 } 354 360 } // End Loop Person 355 if ($i == 0) { // Kine Parson. Kommt vor hinter Zeile "Erbengemeinschaft", ist dann KEIN Fehler356 if ($ rechtsg != 9999) {357 echo "\n<p class=' err'>(Die Person mit der ID '".$gmlpers."' fehlt im Datenbestand)</p>";358 } else{359 if ($debug > 1) { // nur bei Entwicklung360 echo "\n\t\t<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>";361 if ($i == 0) { // kommt vor hinter Zeile Erbengemeinschaft, ist dann KEIN Fehler 362 if ($debug > 1) { // nur bei Entwicklung 363 echo "\n<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>"; 364 if ($rechtsg != 9999) { 365 echo "\n<p class='dbg'>Fehler: Keine Person zur Namensnummer ".$namnum."</p>"; 366 // if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlp."<br>$1 = gml(NamNum) = '".$gmlnn."'</p>";} 361 367 } 362 368 } 363 echo "</td>\n\t<td> </td>\n< /tr>";369 echo "</td>\n\t<td> </td>\n<tr>"; 364 370 } 365 371 $n++; // cnt NamNum 366 372 } // End Loop NamNum 367 echo "\n</table> ";373 echo "\n</table>\n"; 368 374 if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler 369 if ($debug > 1) { 370 echo "\n<p class='dbg'>keine Namensnummern zum Blatt</p>"; 371 if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";} 372 } 375 if ($debug > 1) {echo "<p class='dbg'>keine Namensnummern zum Blatt</p>";} 376 // if ($debug > 2) {echo "<p class='dbg'>Namensnummern: SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";} 373 377 } 374 378 pg_free_result($resn); 375 379 return $n; 376 } // End function eigentuemer 377 380 } // End Function eigentuemer 381 382 // ** Functions zum E n t s c h l u e s s e l n ** 383 384 // Entschluesslung ax_person.anrede 385 function anrede($key) { 386 switch ($key) { 387 case 1000: $wert = "Frau"; break; 388 case 2000: $wert = "Herr"; break; 389 case 3000: $wert = "Firma"; break; 390 default: $wert = ""; break; 391 } 392 return $wert; 393 } 394 395 // Entschluesslung AX_Namensnummer.artDerRechtsgemeinschaft 396 function rechtsgemeinschaft($key) { 397 switch ($key) { 398 case 1000: $wert = "Erbengemeinschaft"; break; 399 case 2000: $wert = "GÃŒtergemeinschaft"; break; 400 case 3000: $wert = "BGB-Gesellschaft"; break; 401 case 9999: $wert = "Sonstiges"; break; // dann: beschriebDerRechtsgemeinschaft 402 default: $wert = ""; break; 403 } 404 return $wert; 405 } 406 407 // Entschluesslung AX_Namensnummer.eigentuemerart 408 function eigentuemerart($key) { 409 // Die hÀufigsten Werte direkt aus den Programmcode liefern, ggf. angepasst. 410 // FÃŒr seltene Werte in der Datenbank nachschlagen. 411 // SchlÃŒsseltabelle dazu ist vorhanden seit 2014-01-22. 412 // Hier Verwendung fÃŒr Text zum Link. 413 // FÃŒr korrekte Wiedergabe der amtlichen Werte einen Join auf Tabelle verwenden statt dieser Function. 414 global $debug; 415 switch ($key) { 416 case 1000: $wert = "Natürliche Person"; break; // singular fuer Link-Text 417 case 2000: $wert = "Juristische Person"; break; // singl. 418 case 3000: $wert = "Körperschaft"; break; // singl. 419 case 4000: $wert = "Kirchliches Eigentum"; break; 420 case 4100: $wert = "Evangelische Kirche"; break; 421 case 4200: $wert = "Katholische Kirche"; break; 422 case 5100: $wert = "Bundesrepublik Deutschland"; break; 423 case 5400: $wert = "Kreis"; break; 424 case 5500: $wert = "Gemeinde"; break; 425 case 5920: $wert = "Land"; break; // "Eigenes Bundesland" 426 case "": $wert = "Person"; break; // falls (noch) nicht gefuellt 427 default: // Datenbank-Abfrage 428 $sql="SELECT bezeichner FROM v_namnum_eigart WHERE wert= $1 ;"; 429 $v=array($key); 430 $res=pg_prepare("", $sql); 431 $res=pg_execute("", $v); 432 if ($res) { 433 $row=pg_fetch_array($res); 434 $wert=htmlentities($row["bezeichner"], ENT_QUOTES, "UTF-8"); 435 if ($wert == "") {$wert="** Eigentümerart '".$key."' nicht gefunden **";} 436 } else { 437 echo "\n\t<p class='err'>Fehler bei DB-Zugriff auf EigentÃŒmerart.</p>\n"; 438 $wert="** Unbekannte Eigentümerart '".$key."' **"; 439 } 440 pg_free_result($res); 441 break; 442 } 443 return $wert; 444 } 445 446 // Entschluesslung ax_buchungsblatt.blattart 447 function blattart($key) { 448 switch ($key) { 449 case 1000: $wert = "Grundbuchblatt"; break; 450 // Ein Grundbuchblatt ist ein Buchungsblatt, das die Buchung im Grundbuch enthÀlt. 451 case 2000: $wert = "Katasterblatt"; break; 452 // Ein Katasterblatt ist ein Buchungsblatt, das die Buchung im Liegenschaftskataster enthÀlt. 453 case 3000: $wert = "Pseudoblatt"; break; 454 // Ein Pseudoblatt ist ein Buchungsblatt, das die Buchung, die bereits vor Eintrag im Grundbuch Rechtskraft erlangt hat, enthÀlt 455 // (z.B. Ãbernahme von Flurbereinigungsverfahren, Umlegungsverfahren). 456 case 5000: $wert = "Fiktives Blatt"; break; 457 // Das fiktive Blatt enthÀlt die aufgeteilten GrundstÃŒcke und Rechte als Ganzes. 458 // Es bildet um die Miteigentumsanteile eine fachliche Klammer. 459 default: $wert = "** Unbekannter Wert '".$key."'"; break; 460 } 461 return $wert; 462 } 463 // Entschluesslung ax_dienststelle.stellenart 464 function dienststellenart($key) { 465 switch ($key) { 466 case 1000: $wert = "Grundbuchamt"; break; 467 case 1100: $wert = "Katasteramt"; break; 468 case 1200: $wert = "Finanzamt"; break; 469 case 1300: $wert = "Flurbereinigungsbehörde"; break; 470 case 1400: $wert = "Forstamt"; break; 471 case 1500: $wert = "Wasserwirtschaftsamt"; break; 472 case 1600: $wert = "StraÃenbauamt"; break; 473 case 1700: $wert = "Gemeindeamt"; break; 474 case 1900: $wert = "Kreis- oder Stadtverwaltung"; break; 475 case 2000: $wert = "Wasser- und Bodenverband"; break; 476 case 2100: $wert = "Umlegungsstelle"; break; 477 case 2200: $wert = "Landesvermessungsverwaltung"; break; 478 case 2300: $wert = "ÖbVI"; break; 479 case 2400: $wert = "Bundeseisenbahnvermögen"; break; 480 case 2500: $wert = "Landwirtschaftskammer"; break; 481 default: $wert = "** Unbekannter Wert '".$key."'"; break; 482 } 483 return $wert; 484 } 378 485 ?> -
trunk/info/info/alkis/alkisfshist.php
r376 r377 5 5 Flurstuecks-Historie fuer ein Flurstueckskennzeichen aus ALKIS PostNAS 6 6 Version: 7 2016-02-24 Version fuer norGIS-ALKIS-Import 8 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen (Filter Gemeinde) 7 2011-11-16 Zum aktuellen FS die VorgÀnger suchen 8 2011-11-17 Parameter der Functions geÀndert 9 2011-11-30 import_request_variables 10 2012-11-27 Function split deprecated: explode 11 2013-04-08 deprecated "import_request_variables" ersetzt 12 2014-09-15 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 13 2015-12-09 Austausch .ico durch .png 9 14 */ 10 15 … … 26 31 function vornach($dbarr) { 27 32 // Datenbank-Array-Feld zeilenweise ausgeben als Selbst-Link 28 global $gkz, $ showkey;33 global $gkz, $idanzeige, $showkey; 29 34 if ($dbarr == "") { 30 35 echo "(keine)"; 31 36 } else { 32 37 $stri=trim($dbarr, "{}"); 38 //$arr = split(",",$stri); 33 39 $arr = explode(",",$stri); 34 40 foreach($arr AS $val){ 35 41 echo "Flurstück <a title=' zur Flurstück Historie' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&fskennz=".$val; 42 if ($idanzeige) {echo "&id=j";} 36 43 if ($showkey) {echo "&showkey=j";} 37 44 echo "'>".fzerleg($val)."</a><br>"; … … 42 49 43 50 function gemkg_name($gkey) { 44 // Schluessel wird ÃŒbergeben, Name dazu in derDB nachschlagen51 // Schluessel wird uebergeben, Name in DB nachschlagen 45 52 global $con; 46 $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 AND g.endet IS NULL LIMIT 1;";53 $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;"; 47 54 $v=array($gkey); 48 55 $res=pg_prepare("", $sql); … … 65 72 // Akt. FS hat keine Verweise auf Vorgaenger. Darum in den Nachfolger-Verweisen von Hist.-FS suchen. 66 73 // Problem: Dies sind Arrays, die nicht performant durchsucht werden koennen. 67 global $gkz, $con, $debug , $showkey, $filtkreis, $filtgem;74 global $gkz, $con, $debug; 68 75 69 76 $wherecl="WHERE $1 = ANY (nachfolgerflurstueckskennzeichen) "; … … 93 100 $vfsk=$rowv["flurstueckskennzeichen"]; 94 101 echo "Flurstück <a title='Historie des Vorgängerflurstücks' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&fskennz=".$vfsk."&gmlid=".$gmlv; 95 if ($showkey) {echo "&showkey=j";} 102 if ($idanzeige) {echo "&id=j";} 103 if ($showkey) {echo "&showkey=j";} 96 104 echo "'>".fzerleg($vfsk)."</a><br>"; 97 105 $zv++; … … 108 116 if ($auth == "mapbender") {require_once($mapbender);} 109 117 include("alkisfkt.php"); 118 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 110 119 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 111 120 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 112 121 ?> 113 <! doctype html>114 <html lang="de">122 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 123 <html> 115 124 <head> 116 <meta charset="utf-8"> 125 <meta name="author" content="b600352" > 126 <meta http-equiv="cache-control" content="no-cache"> 127 <meta http-equiv="pragma" content="no-cache"> 128 <meta http-equiv="expires" content="0"> 129 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 117 130 <title>ALKIS Flurstücks-Historie</title> 118 131 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 124 137 <body> 125 138 <?php 126 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisfshist.php'");139 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 127 140 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 141 // if ($debug > 1) {echo "<p class='err'>DB=".$dbname.", user=".$dbuser."</p>";} 128 142 129 143 // Such-Parameter bekommen? Welche? … … 133 147 $whereclause="WHERE gml_id= $1 "; 134 148 $v = array($gmlid); 135 } elseif ($fskennz != "") { // Alternativ: Flurst.-Kennz. uebergeben 149 } else { // Alternativ: Flurst.-Kennz. uebergeben 150 if ($fskennz != "") { 136 151 $parmtyp="Flurstückskennzeichen"; 137 152 $parmval=$fskennz; 138 153 $whereclause="WHERE flurstueckskennzeichen= $1 "; // hinten auffuellen mit _ auf 20 Stellen 139 154 $v = array($fskennz); 140 } else { // Pfui!155 } else { // Pfui! 141 156 $parmtyp=""; 142 157 echo "<p class='err'>Parameter 'gmlid' oder 'fskennz' fehlt.</p>"; 158 } 143 159 } 144 160 145 161 if ($parmtyp != "") { // einer der beiden erlaubten FÀlle 146 // UNION-Abfrage auf 3Àhnliche Tabellen, darin aber immer nur 1 Treffer. 147 // norGIS: unterschiedliche Formate der gleichen Spalten, Typumwandlung "cast" verwenden. 148 149 $felder="gml_id, flurnummer, cast(zaehler AS character varying), cast(nenner AS character varying), flurstueckskennzeichen, amtlicheflaeche, zeitpunktderentstehung, gemarkungsnummer, "; 150 151 if ($filtgem == '') { // Filter Gemeinde ? 152 $wheref=''; 153 $whereh=''; 154 $whereo=''; 155 } else { // ZusÀtze zur WHERE-Clausel 156 $wheref=" AND f.kreis = '".$filtkreis."' AND f.gemeinde = '".$filtgem."' "; 157 $whereh=" AND h.kreis = '".$filtkreis."' AND h.gemeinde = '".$filtgem."' "; 158 $whereo=" AND o.gemeinde = '".$filtgem."' "; 159 } 160 161 $sqlu ="SELECT 'a' AS ftyp, ".$felder."null AS nach, null AS vor, null AS \"name\" FROM ax_flurstueck f ".$whereclause.$wheref." AND f.endet IS NULL " 162 ."UNION SELECT 'h' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueck h ".$whereclause.$whereh." AND h.endet IS NULL " 163 ."UNION SELECT 'o' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueckohneraumbezug o ".$whereclause.$whereo." AND o.endet IS NULL;"; 162 // UNION-Abfrage auf 3 Àhnliche Tabellen, darin aber immer nur 1 Treffer. 163 164 $felder="gml_id, flurnummer, zaehler, nenner, flurstueckskennzeichen, amtlicheflaeche, zeitpunktderentstehung, gemarkungsnummer, "; 165 166 $sqlu ="SELECT 'a' AS ftyp, ".$felder."null AS nach, null AS vor, null AS \"name\" FROM ax_flurstueck f ".$whereclause." AND f.endet IS NULL " 167 ."UNION SELECT 'h' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueck h ".$whereclause." AND h.endet IS NULL " 168 ."UNION SELECT 'o' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueckohneraumbezug o ".$whereclause." AND o.endet IS NULL;"; 164 169 165 170 $resu = pg_prepare("", $sqlu); … … 183 188 if ($gmlid == "") {$gmlid=$rowu["gml_id"];} // fuer selbst-link-Umschalter ueber footer 184 189 } else { 185 if ($debug > 1) { 186 echo "<br><p class='err'>Fehler! Kein Treffer für ".$parmtyp." = '".$parmval."'</p><br>"; 187 if ($debug > 2) { 188 echo "<p class='dbg'>SQL=<br>".$sqlu."<br>$1=".$parmtyp." = '".$parmval."'</p>"; 189 } 190 } 190 if ($debug > 1) {echo "<br><p class='err'>Fehler! Kein Treffer für ".$parmtyp." = '".$parmval."'</p><br>";} 191 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlu."<br>$1=".$parmtyp." = '".$parmval."'</p>";} 191 192 } 192 193 } … … 221 222 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite 222 223 // darin Tabelle Kennzeichen 223 echo "\n\t<table class='".$cls."' title='Flurstückskennzeichen'>\n\t<tr>" 224 ."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"225 ."\n\t<tr>\n\t\t<td title='Gemarkung'>";224 echo "\n\t<table class='".$cls."' title='Flurstückskennzeichen'>\n\t<tr>"; 225 echo "\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"; 226 echo "\n\t<tr>\n\t\t<td title='Gemarkung'>"; 226 227 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 227 echo $gemkname." </td>" 228 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"229 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"230 ."\n\t</table>"231 ."\n\t</td>\n\t<td>"; // rechte Seite228 echo $gemkname." </td>"; 229 echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"; 230 echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"; 231 echo "\n\t</table>"; 232 echo "\n\t</td>\n\t<td>"; // rechte Seite 232 233 // FS-Daten 2 Spalten 233 echo "\n\t<table class='fsd'>" 234 ."\n\t<tr>\n\t\t<td>Entstehung</td>" 235 ."\n\t\t<td>".$entsteh."</td>" 236 ."\n\t</tr>\n\t<tr>" 237 ."\n\t\t<td>letz. Fortf</td>" 238 ."\n\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 234 echo "\n\t<table class='fsd'>"; 235 echo "\n\t<tr>\n\t\t<td>Entstehung</td>"; 236 echo "\n\t\t<td>".$entsteh."</td>"; 237 echo "\n\t</tr>"; 238 echo "\n\t<tr>"; 239 echo "\n\t\t<td>letz. Fortf</td>"; 240 echo "\n\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 239 241 foreach($arrn AS $val) { // Zeile f. jedes Element 240 242 echo trim($val, '"')."<br>"; 241 243 } 242 echo "</td>" 243 ."\n\t</tr>" 244 ."\n\t</table>" 245 ."\n\t</td>\n</tr>\n</table>"; 244 echo "</td>"; 245 echo "\n\t</tr>"; 246 echo "\n\t</table>"; 247 if ($idanzeige) {linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); } 248 echo "\n\t</td>\n</tr>\n</table>"; 246 249 247 250 if ($ftyp == "a") { // Aktuell -> Historie 248 echo "\n<p class='nwlink noprint'>weitere Auskunft: " 249 ."<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 251 echo "\n<p class='nwlink noprint'>weitere Auskunft: "; 252 echo "<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 253 if ($idanzeige) {echo "&id=j";} 250 254 if ($showkey) {echo "&showkey=j";} 251 echo "' title='Flurstücksnachweis'>Flurstück " 252 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 253 ."</a>"; 254 } 255 echo "\n<hr>" 256 ."<table class='outer'>" 257 ."\n<tr> 255 echo "' title='Flurstücksnachweis'>Flurstück "; 256 echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 257 echo "</a>"; 258 } 259 echo "\n<hr>"; 260 261 echo "<table class='outer'>"; 262 echo "\n<tr> 258 263 <td class='head'>Flurstück</td> 259 264 <td class='head'>Vorgänger</td> … … 262 267 263 268 // Spalte 1: F l u r s t ÃŒ c k 264 echo "\n<tr>\n\t<td>" 265 ."<img src='ico/".$ico."' width='16' height='16' alt=''> ".$wert266 ."<br>Fläche <span class='flae'>".$flae."</span>"267 ."</td>";269 echo "\n<tr>\n\t<td>"; 270 echo "<img src='ico/".$ico."' width='16' height='16' alt=''> ".$wert; 271 echo "<br>Fläche <span class='flae'>".$flae."</span>"; 272 echo "</td>"; 268 273 269 274 // Spalte 2: V o r g À n g e r … … 289 294 echo "\n\t<td>"; 290 295 vornach($nach); 291 echo "</td>\n</tr>" 292 ."\n</table>";296 echo "</td>\n</tr>"; 297 echo "\n</table>"; 293 298 294 299 if ($debug > 1) { … … 302 307 ?> 303 308 304 <div class='buttonbereich noprint'> 305 <hr> 306 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 307 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 308 </div> 309 <form action=''> 310 <div class='buttonbereich noprint'> 311 <hr> 312 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 313 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 314 </div> 315 </form> 309 316 310 317 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisfsnw.php
r376 r377 6 6 7 7 Version: 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-03-14 Korrekturen 10 2016-12-01 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 8 2011-11-16 Neuer Style class='dbg', Link Historie 9 2011-11-17 Parameter der Functions geÀndert 10 2011-11-30 import_request_variables, $dbvers PostNAS 0.5 entfernt 11 2011-12-01 Summe der AbschnittsflÀchen (NUA) an amtl. BuchflÀche des FS angleichen 12 2011-12-16 Zeilenumbruch in Nutzungsart, Spaltenbreite Link 13 2012-07-24 Export als CSV, pg_free_result(), pg_close() 14 2012-11-27 split deprecated, besser: explode 15 2013-01-17 FS-Kennzeichen (ALB-Format) als Parameter statt gmlid möglich 16 2013-04-08 deprecated "import_request_variables" ersetzt 17 2013-04-11 ID-Links (im Testmodus) auch an Lagebezeichnung (mit/ohne HsNr) und an Nutzungs-Abschnitt 18 2013-06-24 Unna: Bodenneuordnung, strittige Grenze 19 2013-06-27 Bodenneuordnung u. stritt.Gr. in Tabellen-Struktur, Link zur Bodenerneuerung (neues Modul) 20 2014-01-30 Korrektur Nutzungsart (z.B. Friedhof mit class=funktion=0 hatte Anzeige "unbekannt") 21 2014-02-06 Korrektur 22 2014-09-09 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 23 2014-09-15 Bei Relationen den Timestamp abschneiden 24 2014-09-23 Korrektur "IS NULL" 25 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 26 2014-12-16 Zum Grundbuch einen Hinweis anzeigen, wenn es dazu berechtigte Buchungen gibt. 27 2015-12-09 Austausch .ico durch .png 11 28 12 29 ToDo: 13 30 - BodenschÀtzung anzeigen 14 - Bessere Differenzierung bei den Nutzungsarten (Tabelle dafÃŒr aufbauen) 31 - EntschlÃŒsseln "Bahnkategorie" bei Bahnverkehr, "OberflÀchenmaterial" bei Unland 32 Dazu evtl. diese Felder ins Classfld verschieben (Meta-Tabellen!) 15 33 */ 16 34 session_start(); 17 35 $id="n"; 18 $eig="n";19 36 $cntget = extract($_GET); 20 37 require_once("alkis_conf_location.php"); 21 38 if ($auth == "mapbender") {require_once($mapbender);} 22 39 include("alkisfkt.php"); 40 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 23 41 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 24 42 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 25 43 ?> 26 <!doctype html> 27 <html lang="de"> 44 45 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 46 <html> 28 47 <head> 29 <meta charset="utf-8"> 48 <meta name="author" content="b600352" > 49 <meta http-equiv="cache-control" content="no-cache"> 50 <meta http-equiv="pragma" content="no-cache"> 51 <meta http-equiv="expires" content="0"> 52 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 30 53 <title>ALKIS Flurstücksnachweis</title> 31 54 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 41 64 </head> 42 65 <body> 66 43 67 <?php 68 69 function ber_bs_hinw($gmls) { 70 // Unter einem Grundbuch-Link den Hinweis auf "berechtigte Buchungssstellen" anzeigen 71 // In FS-Nachweis wird nur der EigentÃŒmer des direkt gebuchten GrundstÃŒcks angezeigt. 72 // Den Erbbauberechtigten sieht man erst in der Grundbuch-Auskunft. 73 global $debug, $showkey; 74 75 // Buchungstelle dien. >an> Buchungstelle herr. 76 $sql ="SELECT count(sh.gml_id) AS anz, sh.buchungsart, a.bezeichner 77 FROM ax_buchungsstelle sd JOIN ax_buchungsstelle sh ON sd.gml_id=ANY(sh.an) 78 LEFT JOIN v_bs_buchungsart a ON sh.buchungsart=a.wert 79 WHERE sd.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL GROUP BY sh.buchungsart, a.bezeichner;"; 80 81 $v = array($gmls); // id dienende BS 82 $resan = pg_prepare("", $sql); 83 $resan = pg_execute("", $v); 84 if (!$resan) { 85 echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen'.</p>\n"; 86 //if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmls."'</p>";} 87 } 88 $an=0; 89 while($rowan = pg_fetch_array($resan)) { 90 $an++; 91 if ($an == 1) {echo "\n\t<br>\n\t<p class='nwlink' title='Andere Grundstücke mit Rechten an diesem.'>Berechtigte Buchungen:<br><b>";} 92 if ($an > 1) {echo",<br>";} // kann es gemischste Buchungsarten geben? 93 echo $rowan["anz"]." ".htmlentities($rowan["bezeichner"], ENT_QUOTES, "UTF-8"); 94 if ($showkey) { 95 echo " <span class='key'>(".$rowan["buchungsart"].")</span>"; 96 } 97 } 98 if ($an == 0) { 99 echo "<br><p class='nwlink' title='Kein anderes Grundstück hat ein Recht an diesem.'>Keine berechtigte Buchung</p>"; 100 } else { 101 echo "</b></p>"; 102 } 103 pg_free_result($resan); 104 } 105 44 106 // S t a r t 45 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisfsnw.php'");107 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 46 108 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 47 109 … … 59 121 $zgemkg=substr($zgemkg, 2, 4); 60 122 } else { // kein schöner Land .. 61 $land= $defland; //Default-Land aus config123 $land='05'; // NRW, ToDo: Default-Land aus config 62 124 } 63 125 $zflur=str_pad($arr[1], 3 , "0", STR_PAD_LEFT); // Flur-Nr … … 75 137 $fskzdb=$land.$zgemkg.$zflur.$zzaehler.$znenner.'__'; // FS-Kennz. Format Datenbank 76 138 } 77 // Spalte "flurstueckskennzeichen"ist in DB indiziert139 // Feld flurstueckskennzeichen ist in DB indiziert 78 140 // Format z.B.'052647002001910013__' oder '05264700200012______' 79 141 $sql ="SELECT gml_id FROM ax_flurstueck WHERE flurstueckskennzeichen= $1 AND endet IS NULL ;"; … … 110 172 $gemeinde=$row["gemeinde"]; 111 173 $flurnummer=$row["flurnummer"]; 112 $ zaehler=$row["zaehler"];174 $flstnummer=$row["zaehler"]; 113 175 $nenner=$row["nenner"]; 114 $flstnummer=$zaehler;115 176 if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 116 177 $fsbuchflae=$row["amtlicheflaeche"]; // amtliche Fl. aus DB-Feld … … 128 189 } 129 190 pg_free_result($res); 130 131 191 // Balken 132 192 if ($eig=="j") { 133 echo "<p class='fsei'>ALKIS Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n" 134 ."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück mit Eigentümer</h2>\n";193 echo "<p class='fsei'>ALKIS Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n"; 194 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück mit Eigentümer</h2>\n"; 135 195 } else { 136 echo "<p class='fskennz'>ALKIS Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n" 137 ."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück</h2>\n"; 138 } 139 140 // PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde) 141 // FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt. 142 if ( ($filtkreis != '' and $filtkreis != $kreis) or ($filtgem != '' and $filtgem != $gemeinde) ) { 143 // Einer der gesetzten Filter passt nicht 144 if ($debug > 2) { 145 //++ Schönes Bild? Stop-Zeichen? 146 echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>" 147 ."<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>"; 148 } 149 echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>" 150 ."\n<br><p class='stop2'>Dies Flurstück liegt ausserhalb der zuständigen Stadt oder Gemeinde.</p>\n</body>\n</html>"; 151 exit; 152 } 153 154 echo "\n<table class='outer'>\n<tr>\n\t<td>" // linke Seite 155 ."\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>" // darin Tabelle Kennzeichen 156 ."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>" 157 ."\n\t<tr>\n\t\t<td title='Gemarkung'>"; 196 echo "<p class='fskennz'>ALKIS Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n"; 197 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück</h2>\n"; 198 } 199 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite 200 // darin Tabelle Kennzeichen 201 echo "\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>"; 202 echo "\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"; 203 echo "\n\t<tr>\n\t\t<td title='Gemarkung'>"; 158 204 if ($showkey) { 159 205 echo "<span class='key'>".$gmkgnr."</span><br>"; 160 206 } 161 echo $gemkname." </td>" 162 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 163 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>" 164 ."\n\t</table>" 165 ."\n\t</td>\n\t<td>" // rechte Seite 166 ."\n\t<table class='fsd'>" // FS-Daten 2 Spalten 167 ."\n\t<tr>\n\t\t<td>Entstehung</td>" 168 ."\n\t\t<td>".$entsteh."</td>\n\t</tr>" 169 ."\n\t<tr>" 170 ."\n\t\t<td>letz. Fortf</td>" 171 ."\n\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 207 echo $gemkname." </td>"; 208 echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"; 209 echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"; 210 echo "\n\t</table>"; 211 echo "\n\t</td>\n\t<td>"; // rechte Seite 212 // FS-Daten 2 Spalten 213 echo "\n\t<table class='fsd'>"; 214 echo "\n\t<tr>\n\t\t<td>Entstehung</td>"; 215 echo "\n\t\t<td>".$entsteh."</td>\n\t</tr>"; 216 echo "\n\t<tr>"; 217 echo "\n\t\t<td>letz. Fortf</td>"; 218 echo "\n\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 172 219 foreach($arrn AS $val) { // Zeile f. jedes Element des Array 173 220 echo trim($val, '"')."<br>"; 174 221 } 175 echo "</td>" 176 ."\n\t</tr>" 177 ."\n\t</table>" 178 ."\n\t</td>\n</tr>\n</table>"; 222 echo "</td>"; 223 echo "\n\t</tr>"; 224 225 echo "\n\t</table>"; 226 if ($idanzeige) {linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); } 227 echo "\n\t</td>\n</tr>\n</table>"; 179 228 // echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame . "</td>\n</tr>"; 180 229 // Ende Seitenkopf 181 230 182 echo "\n<hr>" 183 ."\n<p class='nwlink noprint'>weitere Auskunft:</p>"// oben rechts von der Tabelle184 ."\n<table class='fs'>";231 echo "\n<hr>"; 232 echo "\n<p class='nwlink noprint'>weitere Auskunft:</p>"; // oben rechts von der Tabelle 233 echo "\n<table class='fs'>"; 185 234 186 235 // ** G e b i e t s z u g e h o e r i g k e i t ** … … 205 254 echo "<span class='key'>(".$gemeinde.")</span> "; 206 255 } 207 // Link zur FS-Historie (passt nicht ganz in die Zeile "Gemeinde", aber gut unter "weitere Auskunft") 208 echo $gnam."</td><td class='nwlink'>" 209 ."\n<p class='nwlink noprint'>" 210 ."\n\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 211 if ($showkey) {echo "&showkey=j";} 212 echo "' title='Vorgänger-Flurstücke'>Historie " 213 ."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>" 214 ."</a>" 215 ."\n</p>" 216 . "</td></tr>"; 256 echo $gnam."</td><td width='80'>"; // Mindest-Breite der Spalte fuer die Links 257 // Link zur FlurstÃŒcks-Historie (passt nicht ganz in die Zeile "Gemeinde", aber gut unter "weitere Auskunft") 258 echo "\n<p class='nwlink noprint'>"; 259 echo "\n\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 260 if ($idanzeige) {echo "&id=j";} 261 if ($showkey) {echo "&showkey=j";} 262 echo "' title='Vorgänger-Flurstücke'>Historie "; 263 echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"; 264 echo "</a>"; 265 echo "\n</p>"; 266 echo "</td></tr>"; 217 267 pg_free_result($res); 218 268 … … 285 335 echo "<td> </td>"; 286 336 } 287 echo "\n\t<td> </td>" 288 ."\n\t<td class='lr'>";337 echo "\n\t<td> </td>"; 338 echo "\n\t<td class='lr'>"; 289 339 if ($showkey) { 290 340 echo "<span class='key' title='StraÃenschlüssel'>(".$row["lage"].")</span> "; 291 341 } 292 echo $sname." ".$row["hausnummer"]."</td>" 293 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 294 ."\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]; 342 echo $sname." ".$row["hausnummer"]; 343 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Lagebezeichnung mit Hausnummer", "ax_lagebezeichnungmithausnummer");} 344 echo "</td>"; 345 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 346 echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]; 295 347 if ($showkey) {echo "&showkey=j";} 296 echo "'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>" 297 ."\n\t\t</p>\n\t</td>" 298 ."\n</tr>"; 348 echo "'>Lage "; 349 echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>"; 350 echo "\n\t\t</p>\n\t</td>"; 351 echo "\n</tr>"; 299 352 $j++; 300 353 } 301 $cnt_adressen=$j;302 354 pg_free_result($res); 303 355 } 304 // +++Verbesserung: mehrere HsNr zur gleichen StraÃe als Liste?356 // Verbesserung: mehrere HsNr zur gleichen StraÃe als Liste? 305 357 306 358 // Lagebezeichnung OHNE Hausnummer (Gewanne oder nur Strasse) … … 326 378 $lgml=$row["gml_id"]; // key der Lage 327 379 if (!$gewann == "") { 328 echo "\n<tr>" 329 ."\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>"330 ."\n\t<td></td>"331 ."\n\t<td class='lr'>".$gewann."</td>"332 ."\n\t<td>\n\t\t<p class='nwlink noprint'>"333 ."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml;380 echo "\n<tr>"; 381 echo "\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>"; 382 echo "\n\t<td></td>"; 383 echo "\n\t<td class='lr'>".$gewann."</td>"; 384 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 385 echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml; 334 386 if ($showkey) {echo "&showkey=j";} 335 echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>" 336 ."\n\t\t</p>\n\t</td>"337 ."\n</tr>";387 echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>"; 388 echo "\n\t\t</p>\n\t</td>"; 389 echo "\n</tr>"; 338 390 } 339 391 // Gleicher DB-Eintrag in zwei HTML-Zeilen, besser nur ein Link 340 392 if ($skey > 0) { 341 echo "\n<tr>" 342 ."\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Straße:</td>"343 ."\n\t<td></td>"344 ."\n\t<td class='lr'>";393 echo "\n<tr>"; 394 echo "\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Straße:</td>"; 395 echo "\n\t<td></td>"; 396 echo "\n\t<td class='lr'>"; 345 397 if ($showkey) { 346 398 echo "<span class='key'>(".$skey.")</span> "; 347 399 } 348 echo $row["bezeichnung"]."</td>" 349 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 350 ."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml; 400 echo $row["bezeichnung"]; 401 if ($idanzeige) {linkgml($gkz, $lgml, "Lagebezeichnung o. HsNr.", "ax_lagebezeichnungohnehausnummer");} 402 echo "</td>"; 403 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 404 echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml; 351 405 if ($showkey) {echo "&showkey=j";} 352 echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>" 353 ."\n\t\t</p>\n\t</td>"354 ."\n</tr>";406 echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>"; 407 echo "\n\t\t</p>\n\t</td>"; 408 echo "\n</tr>"; 355 409 } 356 410 $j++; … … 361 415 // ** N U T Z U N G ** Gemeinsame FlÀche von NUA und FS 362 416 // Tabellenzeilen (3 Spalten) mit tats. Nutzung zu einem FS ausgeben 363 364 /* N U T Z U N G C l a s s i c (alt)365 417 $sql ="SELECT m.title, m.fldclass, m.fldinfo, n.gml_id, n.nutz_id, n.class, n.info, n.zustand, n.name, n.bezeichnung, m.gruppe, 366 418 st_area(st_intersection(n.wkb_geometry,f.wkb_geometry)) AS schnittflae, c.label, c.blabla … … 435 487 } 436 488 } 489 437 490 if ($info != "") { // manchmal ein zweites Zusatzfeld (wie entschlÃŒsseln?) 438 491 echo ", ".$fldinfo."=".$info; … … 452 505 if ($nam != "") {echo "<br>Name: ".$nam;} 453 506 if ($bez != "") {echo "<br>Bezeichnung: ".$bez;} 507 if ($idanzeige) {linkgml($gkz, $gml, "Nutzungs-Abschnitt", "");} 454 508 455 509 echo "</td>"; … … 468 522 $j++; 469 523 } 470 E N D E N U T Z U N G C l a s s i c */471 472 /* Status "Nutzung":473 474 Die Classic-Tabelle "nutzung" ist eine Zusammenfassung aller Tabellen mit Nutzungs-FlÀchen475 Die Classic-Tabelle "nutzung_meta" zeigt die Kategorie und Gruppe des Nutzungs-Abschnitts an.476 477 Aus der norGIS-Struktur wird ersatzweise VORLÃUFIG die Tabelle "nutz_21" verwendet,478 die das alte ALB-Format der Nutzungs-Abschnitte von FlurstÃŒcken simuliert.479 Hier finden sich bereits verschnittene FlÀchen, aber die gml_id fehlt.480 481 Die EntschlÃŒsselung der Nutzungsart in den verschiedenen ALKIS-Varianten ist darin unterentwickelt.482 Diese ist eigentlich fÃŒr jede der getrennten Tabellen der Gruppe Nutzungsrt individuell.483 Die Classic-Lösung mit 2 Zusatzfeldern war schon sehr pauschalisiert, aber484 durch die RÃŒck-Konvertierung in ALB-Strukturen in der norGIS-Version ist das zu stark vereinfacht.485 z.B. wird "WohnbauflÀche" mit der Zusatzeigenschaft "Art der Bebauung": 'Offen'486 nun zur Nutzungsart "Offen".487 Durch JOIN auf die "alkis_elemente" mit einem Teil des SchlÃŒssels wird das zur "WohnbauflÀche, Offen".488 Es sollte eine Tabellen-Struktur bereit gestellt werden, die auch aussagt, dass der Wert "Offen" zur489 Zusatz-Eigenschaft "Art der Bebauung" gehört. Dazu muss das PostProcessing erweitert werden. */490 491 492 $sql="SELECT e.definition, trim(both FROM n.nutzsl) AS nutzsl, trim(both FROM n.fl) AS fl, trim(both FROM s.nutzung) AS nutzung493 FROM nutz_21 n JOIN nutz_shl s ON n.nutzsl = s.nutzshl494 JOIN alkis_elemente e ON e.kennung = substring(n.nutzsl from 1 for 5)495 WHERE n.flsnr = $1 ORDER BY cast(n.fl AS integer) DESC;";496 // Flurstueckskennzeichen mit Trennzeichen im ALB-Format wie 'llgggg-fff-zzzzz/nnn'497 // Alternativ könnte auch der VIEW "ax_tatsaechlichenutzungsschluessel" fÃŒr den Text zur Nutzungsart verwendet werden.498 499 $fskennzalb=$defland.$gmkgnr."-".str_pad($flurnummer,3,"0",STR_PAD_LEFT)."-".str_pad($zaehler,5,"0",STR_PAD_LEFT)."/".str_pad($nenner,3,"0",STR_PAD_LEFT);500 // echo "<p class='err'>Kennz ALB='".$fskennzalb."'</p>";501 502 $v = array($fskennzalb);503 $res = pg_prepare("", $sql);504 $res = pg_execute("", $v);505 if (!$res) {506 echo "<p class='err'>Fehler bei Suche tats. Nutzung</p>\n";507 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = FS-Kennz = '".$fskennzalb."'</p>";}508 }509 510 $j=0;511 while($row = pg_fetch_array($res)) {512 $flae=$row["fl"]; // BuchflÀche513 $nutzsl=$row["nutzsl"]; // SchlÃŒssel514 $nutzung=$row["nutzung"]; // Bezeichnung aus ALB-Tabelle, "fein"515 $defi=$row["definition"]; // Langer Text mit Beschreibung516 $title=htmlentities($defi, ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet517 518 // Aus der Definition den String zwischen den ersten '' ausschneiden519 $pos = strpos($defi, "'") + 1;520 $len = strpos($defi, "'", $pos) - $pos;521 $nutztab=substr($defi, $pos, $len); // Nutzungart Kategorie aus der Beschreibung ausschneiden522 523 echo "\n<tr>\n\t";524 if ($j == 0) {525 echo "<td class='ll' title='Abschnitt der tatsächlichen Nutzung'><img src='ico/Abschnitt.png' width='16' height='16' alt=''> Nutzung:</td>";526 } else {527 echo "<td> </td>";528 }529 $absflaebuch = number_format($flae,0,",",".") . " m²"; // Formatierte Abschnitts-Buch-FlÀche530 echo "\n\t<td class='fla' title='Buchfläche des Abschnitts'>".$absflaebuch."</td>";531 532 echo "\n\t<td class='lr' title='".$title."'>";533 if ($showkey) {echo "<span class='key'>(".$nutzsl.")</span> ";}534 echo $nutztab.", ".$nutzung535 ."</td>"536 ."\n\t<td>";537 /* // Derzeit ist keine Gruppe zugeordnet538 switch ($grupp) { // Icon nach 4 Objektartengruppen539 case "Siedlung": $ico = "Abschnitt.png"; break;540 case "Verkehr": $ico = "Strassen_Klassifikation.png"; break;541 case "Vegetation": $ico = "Wald.png"; break;542 case "GewÀsser": $ico = "Wasser.png"; break;543 default: $ico = "Abschnitt.png"; break;544 }545 // Icon ist auch im Druck sichtbar, class='noprint' ?546 echo "<p class='nwlink'><img title='".$title."' src='ico/".$ico."' width='16' height='16' alt='NUA'></p>";547 */548 echo "</td>"549 ."\n</tr>";550 $j++;551 }552 524 pg_free_result($res); 553 525 // ENDE N U T Z U N G 554 526 555 echo "\n<tr>" // Summenzeile556 ."\n\t<td class='ll' title='amtliche Fläche (Buchfläche)'>Fläche:</td>"557 ."\n\t<td class='fla sum'>"558 ."<span title='geometrisch berechnete Fläche = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>";527 echo "\n<tr>"; // Summenzeile 528 echo "\n\t<td class='ll' title='amtliche Fläche (Buchfläche)'>Fläche:</td>"; 529 echo "\n\t<td class='fla sum'>"; 530 echo "<span title='geometrisch berechnete Fläche = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>"; 559 531 560 532 // Flaeche und Link auf GebÀude-Auswertung 561 echo "\n\t<td> </td>\n\t<td>" 562 ."\n\t\t<p class='nwlink noprint'>" // Gebaeude-Verschneidung 563 ."\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 533 echo "\n\t<td> </td>\n\t<td>"; 534 echo "\n\t\t<p class='nwlink noprint'>"; // Gebaeude-Verschneidung 535 echo "\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 536 if ($idanzeige) {echo "&id=j";} 564 537 if ($showkey) {echo "&showkey=j";} 565 if ($cnt_adressen > 0) { // wenn Adresse vorgekommen ist 566 echo "' title='Gebäudenachweis'>Gebäude "; 567 } else { // GebÀude mit Adresse gibt es NICHT, das ist klar 568 echo "' title='Suche Gebäude ohne Adresse auf dem Flurstück oder angrenzende Gebäude'>Suche "; 569 } 570 echo "<img src='ico/Haus.png' width='16' height='16' alt=''></a>" 571 ."\n\t\t</p>" 572 ."\n\t</td>" 573 ."\n</tr>"; 538 echo "' title='Gebäudenachweis'>Gebäude <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 539 echo "\n\t\t</p>"; 540 echo "\n\t</td>"; 541 echo "\n</tr>"; 574 542 575 543 // H i n w e i s auf Bodenneuordnung oder eine strittige Grenze 576 544 // b.name, b.artderfestlegung, 577 545 578 $sql_boden ="SELECT a. k AS wert, a.vAS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez,546 $sql_boden ="SELECT a.wert, a.bezeichner AS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez, 579 547 b.name AS verf_name, d.bezeichnung AS stelle_bez, d.stelle AS stelle_key 580 FROM ax_bauraumoderbodenordnungsrecht b 581 LEFT JOIN alkis_wertearten a ON cast(b.artderfestlegung AS character varying)=a.k AND a.element='ax_bauraumoderbodenordnungsrecht' AND a.bezeichnung='artderfestlegung' 548 FROM ax_bauraumoderbodenordnungsrecht b JOIN v_baurecht_adf a ON a.wert=b.artderfestlegung 582 549 LEFT JOIN ax_dienststelle d ON b.stelle=d.stelle 583 550 WHERE b.endet IS NULL AND d.endet IS NULL 584 AND (ST_Within((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL ), wkb_geometry) 585 OR ST_Overlaps((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL), wkb_geometry)) ;";551 AND (ST_Within((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL ), wkb_geometry) 552 OR ST_Overlaps((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL), wkb_geometry))"; 586 553 587 554 pg_prepare($con, "bodeneuordnung", $sql_boden); 588 555 $res_bodeneuordnung = pg_execute($con, "bodeneuordnung", array($gmlid)); 589 if (!$res_bodeneuordnung) { 590 echo "<p class='err'>Fehler bei Bau-, Raum- oder Bodenordnungsrecht</p>\n"; 591 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql_boden."<br>$1 = gml_id = '".$gmlid."'</p>";} 592 } 593 594 $sql_str="SELECT gml_id FROM ax_besondereflurstuecksgrenze WHERE endet IS NULL AND 1000 = ANY(artderflurstuecksgrenze) 556 557 $sql_str="SELECT gml_id 558 FROM ax_besondereflurstuecksgrenze WHERE endet IS NULL AND 1000 = ANY(artderflurstuecksgrenze) 595 559 AND ST_touches((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL),wkb_geometry);"; 596 560 597 561 pg_prepare($con, "strittigeGrenze", $sql_str); 598 562 $res_strittigeGrenze = pg_execute($con, "strittigeGrenze", array($gmlid)); 599 if (!$res_strittigeGrenze) {600 echo "<p class='err'>Fehler bei strittige Grenze</p>\n";601 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql_str."<br>$1 = gml_id = '".$gmlid."'</p>";}602 }603 563 604 564 if (pg_num_rows($res_bodeneuordnung) > 0 OR pg_num_rows($res_strittigeGrenze) > 0) { 605 echo "\n<tr>" 606 ."\n\t<td title='Hinweise zum Flurstück'><h6><img src='ico/Hinweis.png' width='16' height='16' alt=''> "607 ."Hinweise:</h6></td>\n\t<td colspan=3> </td>"608 ."\n</tr>";565 echo "\n<tr>"; 566 echo "\n\t<td title='Hinweise zum Flurstück'><h6><img src='ico/Hinweis.png' width='16' height='16' alt=''> "; 567 echo "Hinweise:</td></h6>\n\t<td colspan=3> </td>"; 568 echo "\n</tr>"; 609 569 610 570 if (pg_num_rows($res_bodeneuordnung) > 0) { … … 613 573 614 574 // Zeile 1 - kommt immer, darum hier den Link 615 echo "\n<tr title='Bau-, Raum- oder Bodenordnungsrecht'>" 616 ."\n\t<td>Bodenrecht:</td>"617 ."\n\t<td>Festlegung</td>"// "Art der Festlegung" zu lang618 ."\n\t<td>";575 echo "\n<tr title='Bau-, Raum- oder Bodenordnungsrecht'>"; 576 echo "\n\t<td>Bodenrecht:</td>"; 577 echo "\n\t<td>Festlegung</td>"; // "Art der Festlegung" zu lang 578 echo "\n\t<td>"; 619 579 if ($showkey) {echo "<span class='key'>(".$row['wert'].")</span> ";} 620 echo $row['art_verf'] 621 ."</td>\n\t<td>"; 580 echo $row['art_verf']; 581 echo "</td>"; 582 echo "\n\t<td>"; 622 583 // LINK: 623 echo "\n\t\t<p class='nwlink noprint'>" 624 ."\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&gmlid=".$row['verf_gml']; 584 echo "\n\t\t<p class='nwlink noprint'>"; 585 echo "\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&gmlid=".$row['verf_gml']; 586 if ($idanzeige) {echo "&id=j";} 625 587 if ($showkey) {echo "&showkey=j";} 626 echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>" 627 ."\n\t\t</p>"628 ."</td>"629 ."\n</tr>";588 echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>"; 589 echo "\n\t\t</p>"; 590 echo "</td>"; 591 echo "\n</tr>"; 630 592 631 593 // Zeile 2 632 $dstell=$row['stelle_key']; 594 $dstell=$row['stelle_key']; // LEFT JOIN 633 595 if ($dstell != "") { // Kann auch leer sein 634 echo "\n<tr title='Flurbereinigungsbehörde'>" 635 ."\n\t<td> </td>"636 ."\n\t<td>Dienststelle</td>"637 ."\n\t<td>";596 echo "\n<tr title='Flurbereinigungsbehörde'>"; 597 echo "\n\t<td> </td>"; 598 echo "\n\t<td>Dienststelle</td>"; 599 echo "\n\t<td>"; 638 600 if ($showkey) {echo "<span class='key'>(".$dstell.")</span> ";} 639 echo $row['stelle_bez'] 640 ."</td>"641 ."\n\t<td> </td>"642 ."\n</tr>";601 echo $row['stelle_bez']; 602 echo "</td>"; 603 echo "\n\t<td> </td>"; 604 echo "\n</tr>"; 643 605 } 644 606 … … 647 609 $vnam=$row['verf_name']; // noch seltener 648 610 if ($vbez != "") { 649 echo "\n<tr title='Verfahrensbezeichnung'>" 650 ."\n\t<td> </td>\n\t<td>Verfahren</td>"651 ."\n\t<td>";611 echo "\n<tr title='Verfahrensbezeichnung'>"; 612 echo "\n\t<td> </td>\n\t<td>Verfahren</td>"; 613 echo "\n\t<td>"; 652 614 if ($vnam == "") { 653 615 echo $vbez; // nur die Nummer … … 656 618 echo $vnam; 657 619 } 658 echo "</td>" 659 ."\n\t<td> </td>"660 ."\n</tr>";620 echo "</td>"; 621 echo "\n\t<td> </td>"; 622 echo "\n</tr>"; 661 623 } 662 624 } 663 625 } 626 664 627 if (pg_num_rows($res_strittigeGrenze) > 0) { // 1 Zeile 665 echo "\n<tr>\n<td>Strittige Grenze:</td>" 666 ."<td colspan=2>Mindestens eine Flurstücksgrenze ist als <b>strittig</b> zu bezeichnen. Sie kann nicht festgestellt werden, weil die Beteiligten sich nicht über den Verlauf einigen. Nach sachverständigem Ermessen der Katasterbehörde ist anzunehmen, dass das Liegenschaftskataster nicht die rechtmäßige Grenze nachweist.</td>" 667 ."\n<td> </td>\n</tr>"; 668 } 669 } 628 echo "\n<tr>"; 629 echo "\n<td>Strittige Grenze:</td>"; 630 echo "<td colspan=2>Mindestens eine Flurstücksgrenze ist als <b>strittig</b> zu bezeichnen. Sie kann nicht festgestellt werden, weil die Beteiligten sich nicht über den Verlauf einigen. Nach sachverständigem Ermessen der Katasterbehörde ist anzunehmen, dass das Liegenschaftskataster nicht die rechtmäßige Grenze nachweist.</td>"; 631 echo "\n<td> </td>"; 632 echo "\n</tr>"; 633 } 634 } 635 670 636 echo "\n</table>"; 671 637 672 638 // G R U N D B U C H 673 echo "\n<table class='outer'>" 674 ."\n<tr>"675 ."\n\t<td>"676 ."\n\t\t<a id='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbücher</h3>"677 ."\n\t</td>"678 ."\n\t<td>"679 ."\n\t\t<p class='nwlink noprint'>"680 ."\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&gmlid=".$gmlid;681 if ($ showkey) {echo "&showkey=j";}682 639 echo "\n<table class='outer'>"; 640 echo "\n<tr>"; 641 echo "\n\t<td>"; 642 echo "\n\t\t<a name='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbücher</h3>"; 643 echo "\n\t</td>"; 644 echo "\n\t<td>"; 645 echo "\n\t\t<p class='nwlink noprint'>"; 646 echo "\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&gmlid=".$gmlid; 647 if ($idanzeige) { echo "&id=j";} 648 if ($showkey) {echo "&showkey=j";} 683 649 // Umschalter: FS-Nachw ruft sich selbst mit geaend. Param. auf. Posit. auf Marke #gb 684 650 if ($eig=="j") { 685 651 echo "&eig=n#gb' title='Flurstücksnachweis'>ohne Eigentümer</a>"; 686 } else { // ++ könnte man sich sparen, wenn unten nur ein "fiktives Blatt" kommt687 echo "&eig=j#gb' title='Flurstücks- und Eigentümernachweis'>mit Eigentümer " 688 ."<img src='ico/EigentuemerGBzeile.png' width='16' height='16' alt=''></a>";689 } 690 echo "\n\t\t</p>" 691 ."\n\t</td>"692 ."\n</tr>"693 ."\n</table>\n";652 } else { 653 echo "&eig=j#gb' title='Flurstücks- und Eigentümernachweis'>mit Eigentümer "; 654 echo "<img src='ico/EigentuemerGBzeile.png' width='16' height='16' alt=''></a>"; 655 } 656 echo "\n\t\t</p>"; 657 echo "\n\t</td>"; 658 echo "\n</tr>"; 659 echo "\n</table>\n"; 694 660 695 661 // B U C H U N G S S T E L L E N zum FS (istGebucht) 696 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer as lfd, s.zaehler, s.nenner, s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond, b. v AS bart, b.d AS barttitle662 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer as lfd, s.zaehler, s.nenner, s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond, b.bezeichner AS bart 697 663 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON s.gml_id=f.istgebucht 698 LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' AND b.bezeichnung='buchungsart'664 LEFT JOIN v_bs_buchungsart b ON s.buchungsart=b.wert 699 665 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL ORDER BY s.laufendenummer;"; 700 666 … … 704 670 if (!$ress) { 705 671 echo "\n<p class='err'>Keine Buchungsstelle.</p>\n"; 706 if ($debug > 1) { 707 echo "<p class='dbg'>Fehler:".pg_result_error($ress)."</p>"; 708 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 709 } 710 } 711 $bs=0; // Z.BuchungsStelle 672 //if ($debug > 1) {echo "<p class='dbg'>Fehler:".pg_result_error($ress)."</p>";} 673 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 674 } 675 $bs=0; // Z.Buchungsstelle 712 676 while($rows = pg_fetch_array($ress)) { 713 677 $gmls=$rows["gml_id"]; // gml b-Stelle 714 678 $lfd=$rows["lfd"]; // BVNR 715 $barttitle=htmlentities($rows["barttitle"], ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet716 679 717 680 // B U C H U N G S B L A T T zur Buchungsstelle (istBestandteilVon) 718 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, wb.v AS blattartv, wb.d AS blattartd, z.bezeichnung681 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, z.bezeichnung 719 682 FROM ax_buchungsstelle s JOIN ax_buchungsblatt b ON b.gml_id=s.istbestandteilvon 720 683 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 721 LEFT JOIN alkis_wertearten wb ON cast(b.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart'722 684 WHERE s.gml_id = $1 AND s.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL 723 685 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;"; 724 686 725 $v =array($gmls);726 $resg =pg_prepare("", $sql);727 $resg =pg_execute("", $v);687 $v = array($gmls); 688 $resg = pg_prepare("", $sql); 689 $resg = pg_execute("", $v); 728 690 if (!$resg) { 729 691 echo "\n<p class='err'>Kein Buchungsblatt.</p>\n"; … … 734 696 $gmlg=$rowg["gml_id"]; 735 697 $beznam=$rowg["bezeichnung"]; 736 $blattkeyg=$rowg["blattart"]; // Key 737 $blattartg=$rowg["blattartv"]; // Value 738 echo "\n<hr>" 739 ."\n<table class='outer'>" 740 ."\n<tr>"; // 1 row only 698 $blattkeyg=$rowg["blattart"]; 699 $blattartg=blattart($blattkeyg); 700 701 echo "\n<hr>"; 702 echo "\n<table class='outer'>"; 703 echo "\n<tr>"; // 1 row only 741 704 echo "\n\t<td>"; // Outer linke Spalte: 742 705 … … 747 710 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 748 711 } 749 echo "\n\t<tr>\n\t\t<td class='head'>Bezirk</td>" 750 ."\n\t\t<td class='head' title='".$rowg["blattartd"]."'>"; 751 if ($showkey) {echo "<span class='key'>".$blattkeyg."</span> ";} 752 echo $blattartg."</td>" 753 ."\n\t\t<td class='head'>Lfd-Nr.</td>" 754 ."\n\t\t<td class='head'>Buchungsart</td>" 755 ."\n\t</tr>" 756 ."\n\t<tr>" 757 ."\n\t\t<td title='Grundbuchbezirk'>"; 758 if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";} 759 echo $beznam." </td>" 760 ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>" 761 ."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rows["lfd"]."</td>" 762 ."\n\t\t<td title='".$barttitle."'>"; 763 if ($showkey) {echo "<span class='key'>".$rows["buchungsart"]."</span><br>";} 764 echo $rows["bart"]."</td>" 765 ."\n\t</tr>" 766 ."\n\t</table>"; 712 echo "\n\t<tr>\n\t\t<td class='head'>Bezirk</td>"; 713 echo "\n\t\t<td class='head'>".$blattartg."</td>"; 714 echo "\n\t\t<td class='head'>Lfd-Nr.</td>"; 715 echo "\n\t\t<td class='head'>Buchungsart</td>"; 716 echo "\n\t</tr>"; 717 echo "\n\t<tr>"; 718 echo "\n\t\t<td title='Grundbuchbezirk'>"; 719 if ($showkey) { 720 echo "<span class='key'>".$rowg["bezirk"]."</span><br>"; 721 } 722 echo $beznam." </td>"; 723 724 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>"; 725 726 echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rows["lfd"]."</td>"; 727 728 echo "\n\t\t<td title='Buchungsart'>"; 729 if ($showkey) { 730 echo "<span class='key'>".$rows["buchungsart"]."</span><br>"; 731 } 732 echo $rows["bart"]."</td>"; 733 echo "\n\t</tr>"; 734 echo "\n\t</table>"; 767 735 768 736 // Miteigentumsanteil … … 770 738 echo "\n<p class='ant'>".$rows["zaehler"]."/".$rows["nenner"]." Anteil am Flurstück</p>"; 771 739 } 772 echo "\n</td>\n<td>"; // Outer rechte Spalte: NW-Links 773 echo "\n\t<p class='nwlink noprint'>weitere Auskunft:<br>" 774 ."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg."#bvnr".$lfd; 740 echo "\n</td>"; 741 742 echo "\n<td>"; // Outer rechte Spalte: NW-Links 743 if ($idanzeige) { 744 linkgml($gkz, $gmls, "Buchungsstelle", "ax_buchungsstelle"); 745 echo "<br>"; 746 linkgml($gkz, $gmlg, "Buchungsblatt", ""); // ax_buchungsblatt keine Relationen 747 } 748 echo "\n\t<p class='nwlink noprint'>weitere Auskunft:<br>"; 749 echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg."#bvnr".$lfd; 750 if ($idanzeige) {echo "&id=j";} 775 751 if ($showkey) {echo "&showkey=j";} 776 752 if ($blattkeyg == 1000) { … … 779 755 echo "' title='Grundbuchnachweis'>"; 780 756 } 781 echo $blattartg." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 782 ."</a>"783 ."\n\t</p>";757 echo $blattartg." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"; 758 echo "</a>"; 759 echo "\n\t</p>"; 784 760 785 761 ber_bs_hinw($gmls); // berechtigte Buchungstellen Hinweis 786 762 787 echo "\n</td>" 788 ."\n</tr>"789 ."\n</table>";763 echo "\n</td>"; 764 echo "\n</tr>"; 765 echo "\n</table>"; 790 766 791 767 // +++ Weitere Felder ausgeben? BeschreibungDesUmfangsDerBuchung … … 805 781 if ($blattkeyg == 1000) { 806 782 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 783 linkgml($gkz, $gmlg, "Buchungsblatt", ""); 807 784 } else { 808 785 echo "\n<p>ohne Eigentümer.</p>"; … … 812 789 $bl++; 813 790 } 814 if ($bl == 0) {echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>";} 791 if ($bl == 0) { 792 echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>"; 793 echo "\n<p class='err'>Parameter: gml_id= ".$gmls.", Beziehung='istBestandteilVon'</p>"; 794 linkgml($gkz, $gmls, "Buchungstelle", "ax_buchungsstelle"); 795 } 796 797 798 /* ++ Diese Teil wird deaktiviert, weil das nicht vorkommen kann. SpÀter komplett löschen ++ 799 800 // Dienende Buchungsstellen ausgeben - Beginn 801 802 // Buchungstelle herr. >an> Buchungstelle dien. >istBestandteilVon> BLATT -> Bezirk 803 $sql ="SELECT sd.gml_id AS s_gml, sd.buchungsart, sd.laufendenummer as lfd, sd.zaehler, sd.nenner, sd.nummerimaufteilungsplan as nrpl, sd.beschreibungdessondereigentums as sond, 804 b.gml_id AS g_gml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, z.bezeichnung, a.bezeichner AS bart 805 FROM ax_buchungsstelle sh JOIN ax_buchungsstelle sd ON sd.gml_id=ANY(sh.an) 806 JOIN ax_buchungsblatt b ON b.gml_id=sd.istbestandteilvon 807 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 808 LEFT JOIN v_bs_buchungsart a ON sd.buchungsart=a.wert 809 WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL 810 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 811 812 $v = array($gmls); // id herrschende Buchungsstelle 813 $resan = pg_prepare("", $sql); 814 $resan = pg_execute("", $v); 815 if (!$resan) { 816 echo "\n<p class='err'>Fehler bei 'weitere Buchungsstellen'.</p>\n"; 817 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmls."'</p>";} 818 } 819 820 $an=0; // Stelle >Recht an> Stelle 821 while($rowan = pg_fetch_array($resan)) { 822 $beznam=$rowan["bezeichnung"]; 823 $blattkeyan=$rowan["blattart"]; // Schluessel von Blattart 824 $blattartan=blattart($blattkeyan); 825 echo "\n<hr>\n<table class='outer'>"; 826 echo "\n<tr>"; // 1 row only 827 echo "\n<td>"; // outer linke Spalte 828 // Rahmen mit Kennzeichen GB 829 if ($blattkeyan == 1000) { 830 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; 831 } else { 832 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 833 } 834 echo "\n\t<tr>"; 835 echo "\n\t\t<td class='head'>Bezirk</td>"; 836 echo "\n\t\t<td class='head'>".$blattartan."</td>"; 837 echo "\n\t\t<td class='head'>Lfd-Nr,</td>"; 838 echo "\n\t\t<td class='head'>Buchungsart</td>"; 839 echo "\n\t</tr>"; 840 echo "\n\t<tr>"; 841 echo "\n\t\t<td title='Grundbuchbezirk'>"; 842 if ($showkey) {echo "<span class='key'>".$rowan["bezirk"]."</span><br>";} 843 echo $beznam."</td>"; 844 845 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowan["blatt"]."</span></td>"; 846 847 echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowan["lfd"]."</td>"; 848 849 echo "\n\t\t<td title='Buchungsart'>"; 850 if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span><br>";} 851 echo $rowan["bart"]; 852 echo "</td>"; 853 echo "\n\t</tr>"; 854 echo "\n\t</table>"; 855 if ($rowan["zaehler"] <> "") { 856 echo "\n<p class='ant'>".$rowan["zaehler"]."/".$rowan["nenner"]." Anteil am Flurstück</p>"; 857 } 858 echo "\n</td>"; 859 echo "\n<td>"; // outer rechte Spalte 860 if ($idanzeige) { 861 linkgml($gkz, $rowan["s_gml"], "Buchungsstelle", "ax_buchungsstelle"); 862 echo "<br>"; 863 linkgml($gkz, $rowan["g_gml"], "Buchungsblatt", ""); 864 } 865 echo "\n<br>"; 866 echo "\n\t<p class='nwlink'>"; 867 echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowan["g_gml"]; 868 if ($idanzeige) {echo "&id=j";} 869 if ($showkey) {echo "&showkey=j";} 870 echo "' title='Grundbuchnachweis mit kompletter Eigentümerangabe'>"; 871 echo $blattartan; 872 echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"; 873 echo "</a>"; 874 echo "\n\t</p>"; 875 echo "\n\t</td>"; 876 echo "\n</tr>"; 877 echo "\n</table>"; 878 879 if ($blattkeyan != 1000) { 880 echo "\n<p>Blattart: ".$blattartan." (".$blattkeyan.").<br>\n"; 881 } 882 if ($rowan["nrpl"] != "") { 883 echo "<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$rowan["nrpl"]."</span> im Aufteilungsplan.</p>"; 884 } 885 if ($rowan["sond"] != "") { 886 echo "<p class='sond' title='Sondereigentum'>Verbunden mit dem Sondereigentum<br>".$rowan["sond"]."</p>"; 887 } 888 if ($eig == "j") { 889 $n = eigentuemer($con, $rowan["g_gml"], false, ""); // ohne Adresse 890 } 891 $an++; 892 } 893 pg_free_result($resan); 894 // Dienende Buchungsstellen ausgeben - Ende 895 */ 896 815 897 $bs++; 816 898 } 817 899 pg_free_result($resg); 818 if ($bs == 0) {echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>";} 900 if ($bs == 0) { 901 echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>"; 902 linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); 903 } 819 904 pg_close($con); 820 905 echo <<<END 821 906 822 <div class='buttonbereich noprint'> 823 <hr> 824 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 825 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 826 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_fs.png" width="32" height="16" alt="Export"></a> 827 </div> 907 <form action=''> 908 <div class='buttonbereich noprint'> 909 <hr> 910 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 911 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 912 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_fs.png" width="32" height="16" alt="Export"></a> 913 </div> 914 </form> 828 915 END; 916 829 917 footer($gmlid, $_SERVER['PHP_SELF']."?", "&eig=".$eig); 918 830 919 ?> 920 831 921 </body> 832 922 </html> -
trunk/info/info/alkis/alkisgebaeudenw.php
r376 r377 4 4 5 5 Version: 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 6 2011-11-22 Feld ax_gebaeude.description ist entfallen, neue Spalte Zustand 7 2011-11-30 Fehlerkorrektur Gebaeude mit mehreren Adressen nicht mehrfach 8 2013-04-08 deprecated "import_request_variables" ersetzt 9 2014-01-30 pg_free_result 10 2014-09-04 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 11 2014-09-10 Bei Relationen den Timestamp abschneiden 12 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 13 2015-12-09 Austausch .ico durch .png 14 2015-12-16 area -> st_area 8 15 */ 9 16 session_start(); … … 13 20 if ($auth == "mapbender") {require_once($mapbender);} 14 21 include("alkisfkt.php"); 22 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 15 23 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 16 24 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 17 25 ?> 18 <! doctype html>19 <html lang="de">26 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 27 <html> 20 28 <head> 21 <meta charset="utf-8"> 29 <meta name="author" content="b600352" > 30 <meta http-equiv="cache-control" content="no-cache"> 31 <meta http-equiv="pragma" content="no-cache"> 32 <meta http-equiv="expires" content="0"> 33 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 22 34 <title>ALKIS Gebäudenachweis</title> 23 35 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 29 41 <body> 30 42 <?php 31 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisgebaeudenw.php'");43 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 32 44 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 33 45 … … 64 76 65 77 // Kennzeichen in Rahmen 66 echo "\n<table class='outer'>\n<tr>\n<td>" 67 ."\n\t<table class='kennzfs' title='Flurstückskennzeichen'>"68 ."\n\t<tr>"69 ."\n\t\t<td class='head'>Gmkg</td>"70 ."\n\t\t<td class='head'>Flur</td>"71 ."\n\t\t<td class='head'>Flurst-Nr.</td>"72 ."\n\t</tr>\n\t<tr>"73 ."\n\t\t<td title='Gemarkung'>";78 echo "\n<table class='outer'>\n<tr>\n<td>"; 79 echo "\n\t<table class='kennzfs' title='Flurstückskennzeichen'>"; 80 echo "\n\t<tr>"; 81 echo "\n\t\t<td class='head'>Gmkg</td>"; 82 echo "\n\t\t<td class='head'>Flur</td>"; 83 echo "\n\t\t<td class='head'>Flurst-Nr.</td>"; 84 echo "\n\t</tr>\n\t<tr>"; 85 echo "\n\t\t<td title='Gemarkung'>"; 74 86 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 75 echo $gemkname." </td>" 76 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 77 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>" 78 ."\n\t</tr>" 79 ."\n\t</table>" 80 ."\n</td>\n<td>"; 81 82 // Links zu anderem Nachweis 83 echo "\n\t<p class='nwlink noprint'>" 84 ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid; 85 if ($showkey) {echo "&showkey=j";} 86 echo "&eig=n' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 87 ."\n\t</p>" 88 ."\n\t</td>\n</tr>\n</table>"; 87 echo $gemkname." </td>"; 88 echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"; 89 echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>"; 90 echo "\n\t</tr>"; 91 echo "\n\t</table>"; 92 echo "\n</td>\n<td>"; 93 94 // Links zu anderen Nachweisen 95 echo "\n\t<p class='nwlink noprint'>"; 96 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid; 97 if ($idanzeige) {echo "&id=j";} 98 if ($showkey) {echo "&showkey=j";} 99 echo "&eig=n' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 100 echo "\n\t</p>"; 101 if ($idanzeige) {linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); } 102 echo "\n\t</td>\n</tr>\n</table>"; 89 103 // Ende Seitenkopf 90 104 … … 92 106 pg_free_result($resf); 93 107 94 echo "\n\n<h3><img src='ico/Haus.png' width='16' height='16' alt=''> Gebäude</h3>" 95 ."\n<p>.. auf oder an dem Flurstück. Ermittelt durch Verschneidung der Geometrie.</p>";108 echo "\n\n<h3><img src='ico/Haus.png' width='16' height='16' alt=''> Gebäude</h3>"; 109 echo "\n<p>.. auf oder an dem Flurstück. Ermittelt durch Verschneidung der Geometrie.</p>"; 96 110 97 111 // G e b a e u d e 98 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, h.v AS bauweise_beschreibung, u.v AS bezeichner, g.zustand, z.v AS bzustand, 99 round(st_area(g.wkb_geometry)::numeric,2) AS gebflae, "; // GEB-Flaeche komplett auch die Fl. ausserhalb des FS 100 $sqlg.="round(st_area(ST_Intersection(g.wkb_geometry,f.wkb_geometry))::numeric,2) AS schnittflae, "; // wie viel vom GEB liegt im FS? 101 $sqlg.="st_within(g.wkb_geometry,f.wkb_geometry) as drin "; // liegt das GEB komplett im FS? 102 $sqlg.="FROM ax_flurstueck f, ax_gebaeude g 103 LEFT JOIN alkis_wertearten h ON cast(g.bauweise AS character varying) = h.k AND h.element='ax_gebaeude' and h.bezeichnung='bauweise' 104 LEFT JOIN alkis_wertearten u ON cast(g.gebaeudefunktion AS character varying) = u.k AND u.element='ax_gebaeude' and u.bezeichnung='gebaeudefunktion' 105 LEFT JOIN alkis_wertearten z ON cast(g.zustand AS character varying) = z.k AND z.element='ax_gebaeude' and z.bezeichnung='zustand' 112 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, h.bauweise_beschreibung, u.bezeichner, g.zustand, z.bezeichner AS bzustand, "; 113 114 // GEB-Flaeche komplett auch die Fl. ausserhalb des FS 115 $sqlg.="round(st_area(g.wkb_geometry)::numeric,2) AS gebflae, "; 116 117 // wie viel vom GEB liegt im FS? 118 $sqlg.="round(st_area(ST_Intersection(g.wkb_geometry,f.wkb_geometry))::numeric,2) AS schnittflae, "; 119 120 // liegt das GEB komplett im FS? 121 $sqlg.="st_within(g.wkb_geometry,f.wkb_geometry) as drin "; 122 123 // FS und GEB geometrisch verschneiden 124 $sqlg.="FROM ax_flurstueck f, ax_gebaeude g "; 125 126 // Entschluesseln 127 $sqlg.="LEFT JOIN v_geb_bauweise h ON g.bauweise=h.bauweise_id 128 LEFT JOIN v_geb_funktion u ON g.gebaeudefunktion=u.wert 129 LEFT JOIN v_geb_zustand z ON g.zustand=z.wert 106 130 WHERE f.gml_id= $1 AND f.endet IS NULL and g.endet IS NULL "; // ID des akt. FS 107 131 108 // "within" -> nur Geb., die komplett im FS liegen. "intersects" -> auch teil-ueberlappende Flst. 132 // "within" -> nur Geb., die komplett im FS liegen 133 // "intersects" -> auch teil-ueberlappende Flst. 109 134 $sqlg.="AND st_intersects(g.wkb_geometry,f.wkb_geometry) = true "; 110 135 // RLP: keine Relationen zu NebengebÀuden. Auf Qualifizierung verzichten, sonst werden NebengebÀude nicht angezeigt … … 116 141 $resg=pg_execute("", $v); 117 142 if (!$resg) { 118 echo "\n<p class='err'> Fehler bei Gebäude-Verschneidung.</p>\n";143 echo "\n<p class='err'>Keine Gebäude ermittelt.</p>\n"; 119 144 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlg."<br>$1 = gml_id = '".$gmlid."'</p>";} 120 145 } … … 123 148 echo "\n<hr>\n<table class='geb'>"; 124 149 // T-Header 125 echo "\n<tr>\n" 126 ."\n\t<td class='head' title='ggf. Gebäudename'>Name</td>"127 ."\n\t<td class='heads fla' title='Schnittsfläche'><img src='ico/sortd.png' width='10' height='10' alt='' title='Sortierung (absteigend)'>Fläche</td>"128 ."\n\t<td class='head' title='Gebäudefläche'> </td>"129 ."\n\t<td class='head' title='Gebäudefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>"130 ."\n\t<td class='head' title='Bauweise ist die Beschreibung der Art der Bauweise'>Bauweise</td>"131 ."\n\t<td class='head' title='Zustand beschreibt die Beschaffenheit oder die Betriebsbereitschaft von Gebäude. Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.'>Zustand</td>"132 ."\n\t<td class='head nwlink' title='Lagebezeichnung mit Straße und Hausnummer'>Lage</td>"133 ."\n\t<td class='head nwlink' title='Link zu den kompletten Hausdaten'>Haus</td>"134 ."\n</tr>";150 echo "\n<tr>\n"; 151 echo "\n\t<td class='head' title='ggf. Gebäudename'>Name</td>"; 152 echo "\n\t<td class='head fla' title='Schnittsfläche'>Fläche</td>"; 153 echo "\n\t<td class='head' title='Gebäudefläche'> </td>"; 154 echo "\n\t<td class='head' title='Gebäudefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>"; 155 echo "\n\t<td class='head' title='Bauweise (Schlüssel und Beschreibung)'>Bauweise</td>"; 156 echo "\n\t<td class='head' title='Zustand (Schlüssel und Beschreibung)'>Zustand</td>"; 157 echo "\n\t<td class='head nwlink' title='Lagebezeichnung mit Straße und Hausnummer'>Lage</td>"; 158 echo "\n\t<td class='head nwlink' title='Link zu den kompletten Hausdaten'>Haus</td>"; 159 echo "\n</tr>"; 135 160 // T-Body 136 161 while($rowg = pg_fetch_array($resg)) { 137 162 $gebnr = $gebnr + 1; 163 // ++ ToDo: Die Zeilen abwechselnd verschieden einfÀrben, Angrenzend anders einfÀrben 138 164 $ggml=$rowg["gml_id"]; 139 $gebflsum=$gebflsum + $rowg["schnittflae"]; 165 $gebflsum = $gebflsum + $rowg["schnittflae"]; 166 # $skey=$rowg["lage"]; // Strassenschluessel 140 167 $gnam=$rowg["name"]; 141 168 $gzus=$rowg["zustand"]; 142 169 $gzustand=$rowg["bzustand"]; 143 170 144 // 3 FÀlle unterscheiden: 145 if ($rowg["drin"] == "t") { // GebÀude liegt komplett in FlurstÃŒck 146 $f1=$rowg["schnittflae"]." m²"; 147 $f2=" "; 148 $gstyle="gin"; // siehe .css 149 } else { 150 if ($rowg["schnittflae"] == "0.00") { // GebÀude angrenzend (Grenzbebauung) 151 $gstyle="gan"; 152 $f1=" "; 153 $f2="angrenzend"; 154 } else { // Teile des GebÀudes stehen auf dem FlurstÃŒck 155 $gstyle="gtl"; 156 $f1=$rowg["schnittflae"]." m²"; 157 $f2="(von ".$rowg["gebflae"]." m²)"; 171 echo "\n<tr>"; 172 echo "\n\t<td>"; 173 if ($gnam != "") {echo "<span title='Gebäudename'>".$gnam."</span><br>";} 174 echo "\n\t</td>"; 175 176 if ($rowg["drin"] == "t") { // 3 komplett enthalten 177 echo "\n\t<td class='fla'>".$rowg["schnittflae"]." m²</td>"; 178 echo "\n\t<td> </td>"; 179 } else { 180 if ($rowg["schnittflae"] == "0.00") { // angrenzend 181 echo "\n\t<td class='fla'> </td>"; 182 echo "\n\t<td>angrenzend</td>"; 183 } else { // Teile enthalten 184 echo "\n\t<td class='fla'>".$rowg["schnittflae"]." m²</td>"; 185 echo "\n\t<td>(von ".$rowg["gebflae"]." m²)</td>"; 186 } 158 187 } 159 } 160 161 echo "\n<tr>" 162 ."\n\t<td class='".$gstyle."'>"; 163 if ($gnam != "") {echo "<span title='Gebäudename'>".$gnam."</span><br>";} 164 echo "\n\t</td>"; 165 166 echo "\n\t<td class='fla'>".$f1."</td>" 167 ."\n\t<td class='".$gstyle."'>".$f2."</td>"; // FlÀchenangaben 168 169 echo "\n\t<td class='".$gstyle."'>"; 188 echo "\n\t<td>"; 170 189 if ($showkey) {echo "<span class='key'>".$rowg["gebaeudefunktion"]."</span> ";} 171 190 echo $rowg["bezeichner"]."</td>"; 172 191 173 echo "\n\t<td class='".$gstyle."'>";192 echo "\n\t<td>"; 174 193 if ($showkey) {echo "<span class='key'>".$rowg["bauweise"]."</span> ";} 175 194 echo $rowg["bauweise_beschreibung"]." </td>"; 176 195 177 echo "\n\t<td class='".$gstyle."'>";196 echo "\n\t<td>"; 178 197 if ($showkey) {echo "<span class='key'>".$gzus."</span> ";} 179 198 echo $gzustand." </td>"; … … 183 202 184 203 // HAUPTgebÀude Geb >zeigtAuf> lage (mehrere) 185 $sqll ="SELECT 'm' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer "186 ."FROM ax_gebaeude g JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(g.zeigtauf) "187 ."JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "188 ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL ";204 $sqll ="SELECT 'm' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer "; 205 $sqll.="FROM ax_gebaeude g JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(g.zeigtauf) "; 206 $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 207 $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; 189 208 190 209 // oder NEBENgebÀude Geb >hat> Pseudo 191 $sqll.="UNION SELECT 'p' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer " 192 ."FROM ax_gebaeude g JOIN ax_lagebezeichnungmitpseudonummer l ON l.gml_id=g.hat "193 ."JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "194 ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; // ID des Hauses"210 $sqll.="UNION SELECT 'p' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer "; 211 $sqll.="FROM ax_gebaeude g JOIN ax_lagebezeichnungmitpseudonummer l ON l.gml_id=g.hat "; 212 $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 213 $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; // ID des Hauses" 195 214 196 215 $sqll.="ORDER BY bezeichnung, hausnummer;"; … … 220 239 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 221 240 echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 241 if ($idanzeige) {echo "&id=j";} 222 242 if ($showkey) {echo "&showkey=j";} 223 243 echo "'>".$lagetxt."</a>"; 244 if ($idanzeige) {linkgml($gkz, $gmllag, "Lage", ""); } 224 245 echo "<br>"; 225 246 } // Ende Loop Lage m.H. … … 227 248 echo "\n\t</td>"; 228 249 229 echo "\n\t<td class='nwlink noprint'>" 230 ."\n\t\t<a title='Daten zum Gebäude-Objekt' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 231 if ($showkey) {echo "&showkey=j";} 232 echo "'><img src='ico/Haus.png' width='16' height='16' alt=''></a>" 233 ."\n\t</td>" 234 ."\n</tr>"; 250 echo "\n\t<td class='nwlink noprint'>"; 251 echo "\n\t\t<a title='Daten zum Gebäude-Objekt' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 252 if ($idanzeige) {echo "&id=j";} 253 if ($showkey) {echo "&showkey=j";} 254 echo "'><img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 255 echo "\n\t</td>"; 256 257 echo "\n</tr>"; 235 258 } 236 259 // Footer 237 260 if ($gebnr == 0) { 238 echo "\n</table>" 239 ."<p class='err'><br>Keine Gebäude auf diesem Flurstück.<br> </p>";261 echo "\n</table>"; 262 echo "<p class='err'><br>Keine Gebäude auf diesem Flurstück.<br> </p>"; 240 263 } else { 241 echo "\n<tr>" 242 ."\n\t<td>Summe:</td>" 243 ."\n\t<td class='fla sum' title='von Gebäuden überbaute Fläche des Flurstücks'>".number_format($gebflsum,0,",",".")." m²</td>" 244 ."\n\t<td colspan='6'> </td>" 245 ."\n</tr>" 246 ."\n</table>"; 264 echo "\n<tr>"; 265 echo "\n\t<td>Summe:</td>"; // 1 266 echo "\n\t<td class='fla sum'>".number_format($gebflsum,0,",",".")." m²</td>"; 267 echo "\n\t<td> </td>"; // 3 268 echo "\n\t<td> </td>"; // 4 269 echo "\n\t<td> </td>"; // 5 270 echo "\n\t<td> </td>"; // 6 271 echo "\n\t<td> </td>"; // 7 272 echo "\n</tr>"; 273 echo "\n</table>"; 247 274 $unbebaut = number_format(($flstflaeche - $gebflsum),0,",",".") . " m²"; 248 echo "\n<p> <br>Flurstücksfläche abzüglich Gebäudefläche: <b>".$unbebaut."</b></p><br>";275 echo "\n<p>Flurstücksfläche abzüglich Gebäudefläche: <b>".$unbebaut."</b></p><br>"; 249 276 } 250 277 pg_free_result($resg); 251 278 ?> 252 279 253 <div class='buttonbereich noprint'> 254 <hr> 255 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 256 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 257 </div> 280 <form action=''> 281 <div class='buttonbereich noprint'> 282 <hr> 283 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 284 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 285 </div> 286 </form> 258 287 259 288 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkishaus.php
r376 r377 1 1 <?php 2 /* alkishaus.php - viele Daten zu EINEMALKIS-GebÀude-Objekt2 /* alkishaus.php - Daten zum ALKIS-GebÀude-Objekt 3 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 4 5 5 Version: 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 6 2011-11-30 NEU! Variante von alkisgebaeudenw: Aufruf fÃŒr EIN Haus, nicht fÃŒr ein FS 7 2011-01-31 ax_gebaeude.weiteregebaeudefunktion ist jetzt Array 8 2013-04-08 deprecated "import_request_variables" ersetzt 9 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 10 2014-09-10 Bei Relationen den Timestamp abschneiden 11 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 12 2015-12-09 Austausch .ico durch .png 13 2015-12-16 area -> st_area 8 14 9 15 ToDo: … … 11 17 - geometrische Suche nach FS, auf denen das Haus steht 12 18 - Template im WMS auf Ebene GebÀude hierhin verknÃŒpfen. 13 - Relationen abbilden:19 - Auch diese Relationen abbilden: 14 20 ax_gebaeude >gehoertZu> ax_gebaeude (ringförmige Verbindung GebÀudekomplex) 15 21 ax_gebaeude (umschliesst) ax_bauteil 16 ax_gebaeude >gehoert> ax_person (Ausnahme)22 ax_gebaeude >gehoert> ax_person (Ausnahme) 17 23 */ 18 24 session_start(); … … 23 29 if ($auth == "mapbender") {require_once($mapbender);} 24 30 include("alkisfkt.php"); 31 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 25 32 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 26 33 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 27 34 if ($allfld == "j") {$allefelder=true;} else {$allefelder=false;} 28 35 ?> 29 <! doctype html>30 <html lang="de">36 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 37 <html> 31 38 <head> 32 <meta charset="utf-8"> 39 <meta name="author" content="b600352" > 40 <meta http-equiv="cache-control" content="no-cache"> 41 <meta http-equiv="pragma" content="no-cache"> 42 <meta http-equiv="expires" content="0"> 43 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 33 44 <title>ALKIS Daten zum Haus</title> 34 45 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 36 47 <style type='text/css' media='print'> 37 48 .noprint {visibility: hidden;} 38 td.mittelspalte {width: 190px;}39 49 </style> 40 50 </head> … … 42 52 <?php 43 53 44 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkishaus.php'");54 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 45 55 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 46 56 47 57 // G e b a e u d e 48 49 58 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, 50 g.lagezurerdoberflaeche, g.dachgeschossausbau, g.zustand, array_to_string(g.weiteregebaeudefunktion, ',') AS wgf, g.dachform, g.hochhaus, g.objekthoehe, g.geschossflaeche, g.grundflaeche, g.umbauterraum, g.baujahr, g.dachart, g.qualitaetsangaben, 51 h.v AS bbauw, h.d AS dbauw, u.v AS bfunk, u.d AS dfunk, z.v AS zustandv, z.d AS zustandd, d.v AS bdach, a.v AS dgaus, o.v AS oflv, o.d AS ofld, 52 round(st_area(g.wkb_geometry)::numeric,2) AS gebflae 53 FROM ax_gebaeude g 54 LEFT JOIN alkis_wertearten h ON cast(g.bauweise AS character varying)=h.k AND h.element='ax_gebaeude' AND h.bezeichnung='bauweise' 55 LEFT JOIN alkis_wertearten u ON cast(g.gebaeudefunktion AS character varying)=u.k AND u.element='ax_gebaeude' AND u.bezeichnung='gebaeudefunktion' 56 LEFT JOIN alkis_wertearten z ON cast(g.zustand AS character varying)=z.k AND z.element='ax_gebaeude' AND z.bezeichnung='zustand' 57 LEFT JOIN alkis_wertearten d ON cast(g.dachform AS character varying)=d.k AND d.element='ax_gebaeude' AND d.bezeichnung='dachform' 58 LEFT JOIN alkis_wertearten a ON cast(g.dachgeschossausbau AS character varying)=a.k AND a.element='ax_gebaeude' AND a.bezeichnung='dachgeschossausbau' 59 LEFT JOIN alkis_wertearten o ON cast(g.lagezurerdoberflaeche AS character varying)=o.k AND o.element='ax_gebaeude' AND o.bezeichnung='lagezurerdoberflaeche' 60 WHERE g.gml_id= $1 AND g.endet IS NULL;"; 59 g.lagezurerdoberflaeche, g.dachgeschossausbau, g.zustand, g.weiteregebaeudefunktion, g.dachform, g.hochhaus, g.objekthoehe, g.geschossflaeche, g.grundflaeche, g.umbauterraum, g.baujahr, g.dachart, g.qualitaetsangaben, 60 h.bauweise_beschreibung, u.bezeichner AS bfunk, z.bezeichner AS bzustand, "; // w.bezeichner AS bweitfunk, 61 $sqlg.="d.bezeichner AS bdach, round(st_area(g.wkb_geometry)::numeric,2) AS gebflae FROM ax_gebaeude g 62 LEFT JOIN v_geb_bauweise h ON g.bauweise=h.bauweise_id 63 LEFT JOIN v_geb_funktion u ON g.gebaeudefunktion=u.wert 64 LEFT JOIN v_geb_zustand z ON g.zustand=z.wert 65 LEFT JOIN v_geb_dachform d ON g.dachform=d.wert 66 WHERE g.gml_id= $1 AND g.endet IS NULL ;"; 61 67 62 68 $v = array($gmlid); … … 75 81 // Kennzeichen in Rahmen 76 82 // - Welches Kennzeichen zum Haus ? 83 if ($idanzeige) {linkgml($gkz, $gmlid, "Haus", "ax_gebaeude"); } 77 84 echo "\n<hr>"; 78 85 // Umschalter: auch leere Felder ausgeben? 79 86 echo "<p class='nwlink noprint'>"; 80 echo " Umschalten:<a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&gmlid=".$gmlid;87 echo "<a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&gmlid=".$gmlid; 81 88 if ($showkey) {echo "&showkey=j";} else {echo "&showkey=n";} 82 if ($allefelder) { 83 echo "&allfld=n'>nur Felder mit Inhalt"; 84 } else { 85 echo "&allfld=j'>auch leere Felder"; 86 } 89 if ($idanzeige) {echo "&id=j";} else {echo "&id=n";} 90 if ($allefelder) {echo "&allfld=n'>nur Felder mit Inhalt";} 91 else {echo "&allfld=j'>auch leere Felder";} 87 92 echo "</a></p>"; 88 93 … … 91 96 while($rowg = pg_fetch_array($resg)) { // Schleife, kann aber nur EIN Haus sein. 92 97 $gebnr++; 93 echo "\n<table class='geb'>" 94 ."\n<tr>\n" 95 ."\n\t<td class='head' title=''>Attribut</td>" 96 ."\n\t<td class='head mittelspalte' title=''>Wert</td>" 97 ."\n\t<td class='head' title=''>Erklärung</td>" 98 ."\n</tr>"; 98 echo "\n<table class='geb'>"; 99 echo "\n<tr>\n"; 100 echo "\n\t<td class='head' title=''>Attribut</td>"; 101 echo "\n\t<td class='head' title=''>Wert</td>"; 102 echo "\n</tr>"; 99 103 100 104 $aog=$rowg["aog"]; … … 102 106 $hoh=$rowg["hochhaus"]; 103 107 $nam=$rowg["name"]; // Gebaeude-Name 104 105 $kfunk=$rowg["gebaeudefunktion"];106 108 $bfunk=$rowg["bfunk"]; 107 $dfunk=$rowg["dfunk"];108 109 109 $baw=$rowg["bauweise"]; 110 $bbauw=$rowg["bbauw"]; 111 $dbauw=$rowg["dbauw"]; 112 110 $bbauw=$rowg["bauweise_beschreibung"]; 113 111 $ofl=$rowg["lagezurerdoberflaeche"]; 114 $oflv=$rowg["oflv"]; 115 $ofld=$rowg["ofld"]; 116 117 $dga=$rowg["dachgeschossausbau"]; // Key 118 $dgav=$rowg["dgaus"]; // Value 119 120 $zus=$rowg["zustand"]; // Key 121 $zusv=$rowg["zustandv"]; // Value 122 $zusd=$rowg["zustandd"]; // Description 123 124 $wgf=$rowg["wgf"]; // Array-> kommagetrennte Liste 125 126 $daf=$rowg["dachform"]; // Key 127 $dach=$rowg["bdach"]; // Value 128 112 $dga=$rowg["dachgeschossausbau"]; 113 $zus=$rowg["zustand"]; 114 $zustand=$rowg["bzustand"]; 115 $wgf=$rowg["weiteregebaeudefunktion"]; 116 $daf=$rowg["dachform"]; 117 $dach=$rowg["bdach"]; 129 118 $hho=$rowg["objekthoehe"]; 130 119 $gfl=$rowg["geschossflaeche"]; … … 136 125 137 126 if (($nam != "") OR $allefelder) { 138 echo "\n<tr>" 139 ."\n\t<td class='li'>Name</td>" 140 ."\n\t<td>".$nam."</td>" 141 ."\n\t<td class='erkl'>'Name' ist der Eigenname oder die Bezeichnung des Gebäudes.</td>" 142 ."\n</tr>"; 143 } 144 145 // 0 bis N L a g e bezeichnungen mit Haus- oder Pseudo-Nummer 146 127 echo "\n<tr>"; 128 echo "\n\t<td title='\"Name\" ist der Eigenname oder die Bezeichnung des Gebäudes.'>Name</td>"; 129 echo "\n\t<td>"; 130 echo $nam."</td>"; 131 echo "\n</tr>"; 132 } 133 134 // 0 bis N Lagebezeichnungen mit Haus- oder Pseudo-Nummer 147 135 // HAUPTgebÀude 148 $sqll ="SELECT 'm' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer FROM ax_gebaeude g 149 JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(g.zeigtauf) 150 JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 151 WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL"; 136 $sqll ="SELECT 'm' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer "; 137 $sqll.="FROM ax_gebaeude g "; 138 $sqll.="JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(g.zeigtauf) "; 139 $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 140 $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL "; 141 $sqll.="UNION "; 152 142 // oder NEBENgebÀude 153 $sqll.=" UNION 154 SELECT 'p' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer 155 FROM ax_gebaeude g 156 JOIN ax_lagebezeichnungmitpseudonummer l ON l.gml_id=g.hat 157 JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 158 WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL "; 143 $sqll.="SELECT 'p' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer "; 144 $sqll.="FROM ax_gebaeude g "; 145 $sqll.="JOIN ax_lagebezeichnungmitpseudonummer l ON l.gml_id=g.hat "; 146 $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 147 $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL "; 159 148 160 149 $sqll.="ORDER BY bezeichnung, hausnummer ;"; … … 177 166 $gmllag=$rowl["gmllag"]; 178 167 179 if ($zhsnr == 1) { 180 echo "\n<tr>" 181 ."\n\t<td class='li' title='Lage mit Hausnummer oder Pseudonummer'>Adresse</td>" 182 ."\n\t<td class='fett'>"; 183 } 184 echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> "; 185 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 186 echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp."'>" 187 .$snam." ".$hsnr; 188 if ($ltyp == "p") {echo ", lfd.Nr ".$hlfd;} 189 echo "</a><br>"; 168 if ($zhsnr == 1) { 169 echo "\n<tr>\n\t<td title='Lage mit Hausnummer oder Pseudonummer'>Adresse</td>"; 170 echo "\n\t<td>"; 171 } 172 echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> "; 173 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 174 echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 175 if ($idanzeige) {echo "&id=j";} 176 echo "'>"; 177 echo $snam." ".$hsnr; 178 if ($ltyp == "p") { echo ", lfd.Nr ".$hlfd;} 179 echo "</a>"; 180 if ($idanzeige) {linkgml($gkz, $gmllag, "Lage", ""); } 181 echo "<br>"; 190 182 } // Ende Loop Lagezeilen m.H. 191 if ($zhsnr > 0) {echo "\n\t</td>\n\t<td> </td>\n</tr>";} 192 193 // GebÀudefunktion194 echo "\n<tr>"195 ."\n\t<td class='li'>Gebäudefunktion</td>" 196 ."\n\t<td class='fett'>";197 if ($showkey) {echo "<span class='key'>".$kfunk."</span> ";}198 echo $bfunk."</td>"199 ."\n\t<td class='erkl'>'Gebäudefunktion' ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'<br>".$dfunk."</td>"200 ."\n</tr>";201 202 // Bauweise 183 184 if ($zhsnr > 0) { 185 echo "\n\t</td>\n</tr>"; 186 } 187 188 echo "\n<tr>"; 189 echo "\n\t<td title='\"Gebäudefunktion\" ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>"; 190 echo "\n\t<td>"; 191 if ($showkey) {echo "<span class='key'>".$rowg["gebaeudefunktion"]."</span> ";} 192 echo $bfunk."</td>"; 193 echo "\n</tr>"; 194 203 195 if ($baw != "" OR $allefelder) { 204 echo "\n<tr>" 205 ."\n\t<td class='li'>Bauweise</td>"206 ."\n\t<td class='fett'>";196 echo "\n<tr>"; 197 echo "\n\t<td title='\"Bauweise\" ist die Beschreibung der Art der Bauweise.'>Bauweise</td>"; 198 echo "\n\t<td>"; 207 199 if ($showkey) {echo "<span class='key'>".$baw."</span> ";} 208 echo $bbauw."</td>" 209 ."\n\t<td class='erkl'>'Bauweise' ist die Beschreibung der Art der Bauweise.<br>".$dbauw."</td>" 210 ."\n</tr>"; 211 } 212 213 // Geschosse 200 echo $bbauw."</td>"; 201 echo "\n</tr>"; 202 } 203 214 204 if ($aog != "" OR $allefelder) { 215 echo "\n<tr>" 216 ."\n\t<td class='li'>Geschosse</td>" 217 ."\n\t<td class='fett'>".$aog."</td>" 218 ."\n\t<td class='erkl'>Anzahl oberirdischer Geschosse</td>" 219 ."\n</tr>"; 220 } 221 222 // U-Geschosse 205 echo "\n<tr>"; 206 echo "\n\t<td title='Anzahl oberirdischer Geschosse'>Geschosse</td>"; 207 echo "\n\t<td>".$aog."</td>"; 208 echo "\n</tr>"; 209 } 210 223 211 if ($aug != "" OR $allefelder) { 224 echo "\n<tr>" 225 ."\n\t<td class='li'>U-Geschosse</td>" 226 . "\n\t<td class='fett'>".$aug."</td>" 227 ."\n\t<td class='erkl'>Anzahl unterirdischer Geschosse</td>" 228 ."\n</tr>"; 229 } 230 231 // Hochhaus 212 echo "\n<tr>"; 213 echo "\n\t<td title='Anzahl unterirdischer Geschosse'>U-Geschosse</td>"; 214 echo "\n\t<td>".$aug."</td>"; 215 echo "\n</tr>"; 216 } 217 232 218 if ($hoh != "" OR $allefelder) { 233 echo "\n<tr>" 234 ."\n\t<td class='li'>Hochhaus</td>" 235 ."\n\t<td class='fett'>".$hoh."</td>" 236 ."\n\t<td class='erkl'>'Hochhaus' ist ein Gebäude, das nach Gebäudehöhe und Ausprägung als Hochhaus zu bezeichnen ist. Für Gebäude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, für andere Gebäude ab einer Gebäudehöhe von 22 m.</td>" 237 ."\n</tr>"; 238 } 239 240 // Lage zur ErdoberflÀche 219 echo "\n<tr>"; 220 echo "\n\t<td title='\"Hochhaus\" ist ein Gebäude, das nach Gebäudehöhe und Ausprägung als Hochhaus zu bezeichnen ist. Für Gebäude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, für andere Gebäude ab einer Gebäudehöhe von 22 m.'>Hochhaus</td>"; 221 echo "\n\t<td>".$hoh."</td>"; 222 echo "\n</tr>"; 223 } 224 241 225 if ($ofl != "" OR $allefelder) { 242 echo "\n<tr>" 243 ."\n\t<td class='li'>Lage zur Erdoberfläche</td>"244 ."\n\t<td class='fett'>";226 echo "\n<tr>"; 227 echo "\n\t<td title='\"Lage zur Erdoberfläche\" ist die Angabe der relativen Lage des Gebäudes zur Erdoberfläche. Diese Attributart wird nur bei nicht ebenerdigen Gebäuden geführt.'>Lage zur Erdoberfläche</td>"; 228 echo "\n\t<td>"; 245 229 if ($showkey) {echo "<span class='key'>".$ofl."</span> ";} 246 echo $oflv."</td>" 247 ."\n\t<td class='erkl'>'Lage zur Erdoberfläche' ist die Angabe der relativen Lage des Gebäudes zur Erdoberfläche. Diese Attributart wird nur bei nicht ebenerdigen Gebäuden geführt.<br>".$ofld."</td>" 248 ."\n</tr>"; 249 } 250 251 // Dachgeschossausbau 252 // nichts dazu in alkis_wertearten.d 253 if ($dga != "" OR $allefelder) { 254 echo "\n<tr>" 255 ."\n\t<td class='li'>Dachgeschossausbau</td>" 256 ."\n\t<td class='fett'>"; 230 switch ($ofl) { 231 case 1200: echo "Unter der Erdoberfläche"; break; 232 // "Unter der Erdoberfläche" bedeutet, dass sich das Gebäude unter der Erdoberfläche befindet 233 case 1400: echo "Aufgeständert"; break; 234 // "Aufgeständert" bedeutet, dass ein Gebäude auf Stützen steht 235 case "": echo " "; break; 236 default: echo "** Unbekannte Lage zur Erdoberfläche '".$ofl."' **"; break; 237 } 238 echo " </td>"; 239 echo "\n</tr>"; 240 } 241 242 if ($dga != "" OR $allefelder) { // keine Schluesseltabelle in DB 243 echo "\n<tr>"; 244 echo "\n\t<td title='\"Dachgeschossausbau\" ist ein Hinweis auf den Ausbau bzw. die Ausbaufähigkeit des Dachgeschosses.'>Dachgeschossausbau</td>"; 245 echo "\n\t<td>"; 257 246 if ($showkey) {echo "<span class='key'>".$dga."</span> ";} 258 echo $dgav."</td>" 259 ."\n\t<td class='erkl'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbaufähigkeit des Dachgeschosses.</td>" 260 ."\n</tr>"; 261 } 262 263 // Zustand 247 switch ($dga) { 248 case 1000: echo "Nicht ausbaufähig"; break; 249 case 2000: echo "Ausbaufähig"; break; 250 case 3000: echo "Ausgebaut"; break; 251 case 4000: echo "Ausbaufähigkeit unklar"; break; 252 case "": echo " "; break; 253 default: echo "** Unbekannter Wert Dachgeschossausbau '".$dga."' **"; break; 254 } 255 echo "</td>"; 256 echo "\n</tr>"; 257 } 258 264 259 if ($zus != "" OR $allefelder) { 265 echo "\n<tr>" 266 ."\n\t<td class='li'>Zustand</td>"267 ."\n\t<td class='fett'>";260 echo "\n<tr>"; 261 echo "\n\t<td title='\"Zustand\" beschreibt die Beschaffenheit oder die Betriebsbereitschaft von \"Gebäude\". Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.'>Zustand</td>"; 262 echo "\n\t<td>"; 268 263 if ($showkey) {echo "<span class='key'>".$zus."</span> ";} 269 echo $zusv."</td>" 270 ."\n\t<td class='erkl'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Gebäude'. Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.<br>".$zusd."</td>" 271 ."\n</tr>"; 272 } 273 274 // Weitere GebÀudefunktionen 275 // Suche Testfall: SELECT * FROM ax_gebaeude WHERE NOT weiteregebaeudefunktion IS NULL; 276 // Keiner zu finden. Das folgende ungetestet: 277 if ($wgf != "" OR $allefelder) { // "weiteregebaeudefunktion" ist ein Array 278 echo "\n<tr>" 279 ."\n\t<td class='li'>Weitere Gebäudefunktionen</td>" 280 ."\n\t<td>"; 281 if ($wgf != "") { // Kommagetrennte Liste aus Array 282 $sqlw="SELECT k, v, d FROM alkis_wertearten WHERE k IN ( $1 ) AND element='ax_gebaeude' AND bezeichnung='weiteregebaeudefunktion' ORDER BY k;"; 283 $v = array($wgf); 264 echo $zustand."</td>"; 265 echo "\n</tr>"; 266 } 267 268 if ($wgf != "" OR $allefelder) { 269 echo "\n<tr>"; 270 echo "\n\t<td title='\"Weitere Gebäudefunktion\" ist die Funktion, die ein Gebäude neben der dominierenden Gebäudefunktion hat.'>Weitere Gebäudefunktionen</td>"; 271 echo "\n\t<td>"; 272 273 if ($wgf != "") { 274 // weiteregebaeudefunktion ist jetzt ein Array 275 $wgflist=trim($wgf, "{}"); // kommagetrennte(?) Liste der Schluesselwerte 276 //$wgfarr=explode(",", $wgflist); 277 //for each ... 278 $sqlw="SELECT wert, bezeichner FROM v_geb_weiterefkt WHERE wert in ( $1 ) ORDER BY wert;"; 279 $v = array($wgflist); 284 280 $resw = pg_prepare("", $sqlw); 285 281 $resw = pg_execute("", $v); 286 282 if (!$resw) { 287 283 echo "\n<p class='err'>Fehler bei Gebäude - weitere Funktion.</p>\n"; 288 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf ."'</p>";}284 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgflist."'</p>";} 289 285 } 290 286 $zw=0; 291 287 while($roww = pg_fetch_array($resw)) { // LOOP: w.Funktion 292 if ($zw > 0) {echo "<br>";} 293 if ($showkey) {echo "<span class='key'>".$roww["k"]."</span> ";} 294 echo "<span title='".$roww["d"]."'>".$roww["v"]."</span>"; 288 $wwert=$roww["wert"]; 289 $wbez=$roww["bezeichner"]; 290 if ($zw > 0) {echo ", ";} // Liste oder Zeile? echo "<br>"; 291 if ($showkey) {echo "<span class='key'>".$wwert."</span> ";} 292 echo $wbez; 295 293 $zw++; 296 294 } 297 295 } 298 echo "</td>" 299 ."\n\t<td class='erkl'>'Weitere Gebäudefunktion' ist die Funktion, die ein Gebäude neben der dominierenden Gebäudefunktion hat.</td>" 300 ."\n</tr>"; 301 } 302 303 // Dachform 304 // nichts dazu in alkis_wertearten.d 296 echo "</td>"; 297 echo "\n</tr>"; 298 } 299 305 300 if ($daf != "" OR $allefelder) { 306 echo "\n<tr>" 307 ."\n\t<td class='li'>Dachform</td>"308 ."\n\t<td class='fett'>";301 echo "\n<tr>"; 302 echo "\n\t<td title='\"Dachform\" beschreibt die charakteristische Form des Daches.'>Dachform</td>"; 303 echo "\n\t<td>"; 309 304 if ($showkey) {echo "<span class='key'>".$daf."</span> ";} 310 echo $dach."</td>" 311 ."\n\t<td class='erkl'>'Dachform' beschreibt die charakteristische Form des Daches.</td>" 312 ."\n</tr>"; 313 } 314 315 // Objekthöhe 305 echo $dach."</td>"; 306 echo "\n</tr>"; 307 } 308 316 309 if ($hho != "" OR $allefelder) { 317 echo "\n<tr>" 318 ."\n\t<td class='li'>Objekthöhe</td>" 319 ."\n\t<td class='fett'>".$hho."</td>" 320 ."\n\t<td class='erkl'>'Objekthöhe' ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten Geländeoberfläche des Gebäudes.</td>" 321 ."\n</tr>"; 322 } 323 324 // GeschossflÀche 310 echo "\n<tr>"; 311 echo "\n\t<td title='\"Objekthöhe\" ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten Geländeoberfläche des Gebäudes.'>Objekthöhe</td>"; 312 echo "\n\t<td>"; 313 echo $hho."</td>"; 314 echo "\n</tr>"; 315 } 316 325 317 if ($gfl != "" OR $allefelder) { 326 echo "\n<tr>" 327 ."\n\t<td class='li'>Geschossfläche</td>"328 ."\n\t<td class='fett'>";329 if ($gfl != "") { echo $gfl." m²";}330 echo "</td>"331 ."\n\t<td class='erkl'>'Geschossfläche' ist die Gebäudegeschossfläche in [qm].</td>"332 ."\n</tr>";333 }334 335 // GrundflÀche 318 echo "\n<tr>"; 319 echo "\n\t<td title='\"Geschossfläche\" ist die Gebäudegeschossfläche in [qm].'>Geschossfläche</td>"; 320 echo "\n\t<td>"; 321 if ($gfl != "") { 322 echo $gfl." m²"; 323 } 324 echo "</td>"; 325 echo "\n</tr>"; 326 } 327 336 328 if ($grf != "" OR $allefelder) { 337 echo "\n<tr>" 338 ."\n\t<td class='li'>Grundfläche</td>"339 ."\n\t<td class='fett'>";340 if ($grf != "") { echo $grf." m²";}341 echo "\n\t<td class='erkl'>'Grundfläche' ist die Gebäudegrundfläche in [qm].</td>"342 ."\n</tr>";343 }344 345 // Umbauter Raum 329 echo "\n<tr>"; 330 echo "\n\t<td title='\"Grundfläche\" ist die Gebäudegrundfläche in [qm].'>Grundfläche</td>"; 331 echo "\n\t<td>"; 332 if ($grf != "") { 333 echo $grf." m²"; 334 } 335 echo "\n</tr>"; 336 } 337 346 338 if ($ura != "" OR $allefelder) { 347 echo "\n<tr>" 348 ."\n\t<td class='li'>Umbauter Raum</td>" 349 ."\n\t<td class='fett'>".$ura."</td>" 350 ."\n\t<td class='erkl'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Gebäudes.</td>" 351 ."\n</tr>"; 352 } 353 354 // Baujahr 339 echo "\n<tr>"; 340 echo "\n\t<td title='\"Umbauter Raum\" ist der umbaute Raum [Kubikmeter] des Gebäudes.'>Umbauter Raum</td>"; 341 echo "\n\t<td>"; 342 echo $ura."</td>"; 343 echo "\n</tr>"; 344 } 345 355 346 if ($bja != "" OR $allefelder) { 356 echo "\n<tr>" 357 ."\n\t<td class='li'>Baujahr</td>" 358 ."\n\t<td class='fett'>".$bja."</td>" 359 ."\n\t<td class='erkl'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Veränderung des Gebäudes.</td>" 360 ."\n</tr>"; 361 } 362 363 // Dachart 347 echo "\n<tr>"; 348 echo "\n\t<td title='\"Baujahr\" ist das Jahr der Fertigstellung oder der baulichen Veränderung des Gebäudes.'>Baujahr</td>"; 349 echo "\n\t<td>"; 350 echo $bja."</td>"; 351 echo "\n</tr>"; 352 } 353 364 354 if ($daa != "" OR $allefelder) { 365 echo "\n<tr>" 366 ."\n\t<td class='li'>Dachart</td>" 367 ."\n\t<td class='fett'>".$daa."</td>" 368 ."\n\t<td class='erkl'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an.</td>" 369 ."\n</tr>"; 370 } 371 372 // QualitÀtsangaben 355 echo "\n<tr>"; 356 echo "\n\t<td title='\"Dachart\" gibt die Art der Dacheindeckung (z.B. Reetdach) an.'>Dachart</td>"; 357 echo "\n\t<td>"; 358 echo $daa."</td>"; 359 echo "\n</tr>"; 360 } 361 373 362 if ($qag != "" OR $allefelder) { 374 echo "\n<tr>" 375 ."\n\t<td class='li'>Qualitätsangaben</td>" 376 ."\n\t<td class='fett'>".$qag."</td>" 377 ."\n\t<td class='erkl'>Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu repräsentieren.</td>" 378 ."\n</tr>"; 379 } 363 echo "\n<tr>"; 364 echo "\n\t<td title='Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu repräsentieren.'>Qualitätsangaben</td>"; 365 echo "\n\t<td>"; 366 echo $qag."</td>"; 367 echo "\n</tr>"; 368 } 369 380 370 echo "\n</table>"; 381 371 } 382 372 if ($gebnr == 0) {echo "<p class='err'><br>Kein Gebäude gefunden<br> </p>";} 383 384 // ++ ToDo: Verschnitt mit FS? 373 // ++ ToDo: Verschnitt mit FS 385 374 386 375 ?> 387 376 388 <div class='buttonbereich noprint'> 389 <hr> 390 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 391 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 392 </div> 377 <form action=''> 378 <div class='buttonbereich noprint'> 379 <hr> 380 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 381 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 382 </div> 383 </form> 393 384 394 385 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisinlayausk.php
r376 r377 5 5 Dies Programm wird in einen iFrame im Mapserver-Template (FeatureInfo) geladen. 6 6 Parameter: &gkz, &gml_id 7 Dies Programm gibt einen kurzen Ueberblick zum Flurstueck, z.B. Eigentuemer ohne Adresse. 8 FÃŒr detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 7 Dies Programm gibt einen kurzen Ueberblick zum Flurstueck. 8 Eigentuemer ohne Adresse. 9 Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 9 10 Dies ist eine Variante von alkisausk.php welches als vollstaendige Seite aufgerufen wird. 10 11 11 12 Version: 12 2016-02-24 Version fuer norGIS-ALKIS-Import 13 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen (Berechtigung fÃŒr Gemeinde prÃŒfen) 13 2011-11-17 Link FS-Historie, Parameter der Functions geÀndert 14 2011-11-30 import_request_variables, $dbvers PostNAS 0.5 entfernt 15 2011-12-14 "window.open(..,width=680)" 16 2013-04-08 deprecated "import_request_variables" ersetzt 17 2013-05-06 Fehlende Leerstelle 18 2014-01-28 Link zu alkisstrasse.php 19 2014-02-06 pg_free_result 20 2014-09-04 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 21 2014-09-15 Bei Relationen den Timestamp abschneiden 22 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 23 2014-12-16 hr-Tag vor Eigentum entfernt 24 2015-12-09 Austausch .ico durch .png, Korrektur "zahler" nach "zaehler" 25 14 26 */ 15 27 session_start(); … … 20 32 $gmlid = isset($_GET["gmlid"]) ? $_GET["gmlid"] : 0; 21 33 echo <<<END 22 <! doctype html>23 <html lang="de">34 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 35 <html> 24 36 <head> 25 <meta charset="utf-8"> 37 <meta name="author" content="b600352" > 38 <meta http-equiv="cache-control" content="no-cache"> 39 <meta http-equiv="pragma" content="no-cache"> 40 <meta http-equiv="expires" content="0"> 41 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 26 42 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 27 43 <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico"> … … 36 52 <body> 37 53 END; 38 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisinlayausk.php'");54 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 39 55 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 40 56 41 57 // *** F L U R S T U E C K *** 42 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung , f.regierungsbezirk, f.kreis, f.gemeinde58 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 43 59 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 44 60 WHERE f.gml_id= $1 AND f.endet IS NULL ;"; … … 61 77 $flae=$row["amtlicheflaeche"]; 62 78 $flae=number_format($flae,0,",",".") . " m²"; 63 $fsreg=$row["regierungsbezirk"]; // Filter ZustÀndigkeit64 $fskrs=$row["kreis"];65 $fsgem=$row["gemeinde"];66 79 } else { 67 80 echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>"; … … 69 82 } 70 83 71 // PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)72 // FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.73 if ( ($filtkreis != '' and $filtkreis != $fskrs) or ($filtgem != '' and $filtgem != $fsgem) ) {74 // Einer der gesetzten Filter passt nicht75 if ($debug > 2) {76 echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>";77 echo "<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";78 }79 echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>80 \n<br><p class='stop2'>Dies Flurstück liegt ausserhalb der zuständigen Stadt oder Gemeinde.</p>\n</body>\n</html>";81 pg_free_result($res);82 exit;83 }84 85 84 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>"; 86 85 87 echo "\n<table class='outer'>\n<tr>\n<td>" 88 ."\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>"89 ."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"90 ."\n\t<tr>\n\t\t<td title='Gemarkung'>".$gemkname."</td>"91 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"92 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"93 ."\n\t</table>"94 ."\n</td>\n<td>" 95 ."\n\t<p class='nwlink'>weitere Auskunft:<br>";96 97 // Flurst ÃŒcksnachweis (mit EigentÃŒmer)98 echo "\n\t\t<a href='javascript:imFenster(\"alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j\")' " 99 ."title='Flurstücksnachweis'>Flurstück "100 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"101 ."</a><br>";86 echo "\n<table class='outer'>\n<tr>\n<td>"; 87 echo "\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>"; 88 echo "\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"; 89 echo "\n\t<tr>\n\t\t<td title='Gemarkung'>".$gemkname."</td>"; 90 echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"; 91 echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"; 92 echo "\n\t</table>"; 93 echo "\n</td>\n<td>"; 94 echo "\n\t<p class='nwlink'>weitere Auskunft:<br>"; 95 96 // Flurstuecksnachweis (mit EigentÃŒmer) 97 echo "\n\t\t<a href='javascript:imFenster(\"alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j\")' "; 98 echo "title='Flurstücksnachweis'>Flurstück "; 99 echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"; 100 echo "</a><br>"; 102 101 103 102 // FS-Historie 104 echo "\n\t\t<a href='javascript:imFenster(\"alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid."\")' " 105 ."title='Vorgänger des Flurstücks'>Historie "106 ."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"107 ."</a><br>";103 echo "\n\t\t<a href='javascript:imFenster(\"alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid."\")' "; 104 echo "title='Vorgänger des Flurstücks'>Historie "; 105 echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"; 106 echo "</a><br>"; 108 107 109 108 // Gebaeude-NW zum FS 110 echo "\n\t\t<a href='javascript:imFenster(\"alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid."\")' " 111 ."title='Gebäudenachweis'>Gebäude "112 ."<img src='ico/Haus.png' width='16' height='16' alt=''>"113 ."</a>";109 echo "\n\t\t<a href='javascript:imFenster(\"alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid."\")' "; 110 echo "title='Gebäudenachweis'>Gebäude "; 111 echo "<img src='ico/Haus.png' width='16' height='16' alt=''>"; 112 echo "</a>"; 114 113 115 114 echo "\n\t</p>\n</td>"; … … 134 133 while($row = pg_fetch_array($res)) { 135 134 $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name 136 echo "\n<tr>\n\t\n\t<td class='lr'>".$sname." ".$row["hausnummer"]."</td>" 137 ."\n\t<td>\n\t\t<p class='nwlink noprint'>";135 echo "\n<tr>\n\t\n\t<td class='lr'>".$sname." ".$row["hausnummer"]."</td>"; 136 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 138 137 $kgml=$row["kgml"]; // Wiederholung vermeiden 139 138 if ($kgml != $kgmlalt) { // NEUE Strasse vor Lage 140 139 $kgmlalt=$kgml; // Katalog GML-ID 141 echo "\n\t\t\t<a title='Flurstücke an der Straße' " 142 ."href='javascript:imFenster(\"alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"]."\")'>Straße "143 ."<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a>";144 } 145 echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' " 146 ."href='javascript:imFenster(\"alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]."\")'>Lage "147 ."<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt='HAUS'></a> "148 ."\n\t\t</p>\n\t</td>\n</tr>";140 echo "\n\t\t\t<a title='Flurstücke an der Straße' "; 141 echo "href='javascript:imFenster(\"alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"]."\")'>Straße "; 142 echo "<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a>"; 143 } 144 echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' "; 145 echo "href='javascript:imFenster(\"alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]."\")'>Lage "; 146 echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt='HAUS'></a> "; 147 echo "\n\t\t</p>\n\t</td>\n</tr>"; 149 148 $j++; 150 149 } … … 152 151 if ($j == 0) { // keine HsNr gefunden 153 152 // Lage OHNE HausNr 154 $sql ="SELECT DISTINCT s.gml_id AS kgml, l.gml_id, s.bezeichnung, l.unverschluesselt153 $sql ="SELECT DISTINCT s.gml_id AS kgml, l.gml_id, s.bezeichnung, l.unverschluesselt 155 154 FROM ax_flurstueck f JOIN ax_lagebezeichnungohnehausnummer l ON l.gml_id=ANY(f.zeigtauf) 156 155 LEFT JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 157 WHERE f.gml_id= $1 AND f.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL ORDER BY s.bezeichnung;"; 156 WHERE f.gml_id= $1 AND f.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL 157 ORDER BY s.bezeichnung;"; 158 158 159 159 $v=array($gmlid); … … 179 179 if ($kgml != $kgmlalt) { // NEUE Strasse vor Lage-O 180 180 $kgmlalt=$kgml; // Katalog GML-ID 181 echo "\n\t\t\t<a title='Flurstücke an der Straße' " 182 ."href='javascript:imFenster(\"alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"]."\")'>Straße "183 ."<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a>";184 } 185 echo "\n\t\t\t<a title='Lagebezeichnung ohne Hausnummer' " 186 ."href='javascript:imFenster(\"alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$row["gml_id"]."\")'>Lage "187 ."<img src='ico/".$ico."' width='16' height='16' alt='OHNE'></a> "188 ."\n\t\t</p>\n\t</td>\n</tr>";181 echo "\n\t\t\t<a title='Flurstücke an der Straße' "; 182 echo "href='javascript:imFenster(\"alkisstrasse.php?gkz=".$gkz."&gmlid=".$row["kgml"]."\")'>Straße "; 183 echo "<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a>"; 184 } 185 echo "\n\t\t\t<a title='Lagebezeichnung ohne Hausnummer' "; 186 echo "href='javascript:imFenster(\"alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$row["gml_id"]."\")'>Lage "; 187 echo "<img src='ico/".$ico."' width='16' height='16' alt='OHNE'></a> "; 188 echo "\n\t\t</p>\n\t</td>\n</tr>"; 189 189 } 190 190 pg_free_result($res); … … 200 200 // FS >istgebucht> GS >istbestandteilvon> GB. 201 201 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, 202 s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, wa.v AS blattartv, wb.v AS bart 203 FROM ax_flurstueck f 204 JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 202 s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, a.bezeichner AS bart 203 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 205 204 JOIN ax_buchungsblatt b ON s.istbestandteilvon=b.gml_id 206 205 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 207 LEFT JOIN alkis_wertearten wa ON cast(b.blattart AS character varying)=wa.k AND wa.element='ax_buchungsblatt' AND wa.bezeichnung='blattart' 208 LEFT JOIN alkis_wertearten wb ON cast(s.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' 206 LEFT JOIN v_bs_buchungsart a ON s.buchungsart=a.wert 209 207 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL 210 208 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;"; … … 220 218 $beznam=$rowg["bezeichnung"]; 221 219 echo "\n<hr>\n<table class='outer'>\n<tr>\n<td>"; 222 $blattkey=$rowg["blattart"]; // Key 223 $blattart=$rowg["blattartv"]; // Value 224 220 $blattkey=$rowg["blattart"]; 221 $blattart=blattart($blattkey); 225 222 if ($blattkey == 1000) { 226 223 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 228 225 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 229 226 } 230 echo "\n\t<tr>" 231 ."\n\t\t<td class='head'>Bezirk</td>" 232 ."\n\t\t<td class='head'>".$blattart."</td>" 233 ."\n\t\t<td class='head'>Lfd-Nr,</td>" 234 ."\n\t\t<td class='head'>Buchungsart</td>" 235 ."\n\t</tr>\n\t<tr>" 236 ."\n\t\t<td title='Grundbuchbezirk'>".$beznam."</td>" 237 ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>" 238 ."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowg["laufendenummer"]."</td>" 239 ."\n\t\t<td title='Buchungsart'>".$rowg["bart"]."</td>" 240 ."\n\t</tr>" 241 ."\n\t</table>"; 227 echo "\n\t<tr>"; 228 echo "\n\t\t<td class='head'>Bezirk</td>"; 229 echo "\n\t\t<td class='head'>".$blattart."</td>"; 230 echo "\n\t\t<td class='head'>Lfd-Nr,</td>"; 231 echo "\n\t\t<td class='head'>Buchungsart</td>"; 232 echo "\n\t</tr>"; 233 echo "\n\t<tr>"; 234 echo "\n\t\t<td title='Grundbuchbezirk'>"; 235 echo $beznam."</td>"; 236 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>"; 237 echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowg["laufendenummer"]."</td>"; 238 echo "\n\t\t<td title='Buchungsart'>".$rowg["bart"]."</td>"; 239 echo "\n\t</tr>"; 240 echo "\n\t</table>"; 242 241 243 242 if ($rowg["zaehler"] <> "") { 244 243 echo "\n<p class='ant'>".$rowg["zaehler"]."/".$rowg["nenner"]." Anteil am Flurstück</p>"; 245 244 } 246 echo "\n</td>\n<td>" 247 ."\n\t<p class='nwlink'>weitere Auskunft:<br>" 248 ."\n\t\t<a href='javascript:imFenster(\"alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0]."\")' " 249 ."title='Grundbuchnachweis'>".$blattart." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 250 ."</a>" 251 ."\n\t</p>" 252 ."\n</td>\n</tr>\n</table>"; 245 echo "\n</td>\n<td>"; 246 echo "\n\t<p class='nwlink'>weitere Auskunft:<br>"; 247 echo "\n\t\t<a href='javascript:imFenster(\"alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0]."\")' "; 248 echo "title='Grundbuchnachweis'>"; 249 echo $blattart; 250 echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"; 251 echo "</a>"; 252 echo "\n\t</p>"; 253 echo "\n</td>\n</tr>\n</table>"; 253 254 254 255 // E I G E N T U E M E R 255 256 if ($blattkey == 5000) { // Schluessel Blattart 256 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n" 257 ."\n<p>Siehe weitere Grundbuchblätter mit Rechten an dem fiktiven Blatt.</p>\n";257 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n"; 258 echo "\n<p>Siehe weitere Grundbuchblätter mit Rechten an dem fiktiven Blatt.</p>\n"; 258 259 } else {// kein Eigent. bei fiktiv. Blatt 259 260 echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; … … 263 264 264 265 if ($n == 0) { // keine NamensNr, kein Eigentuemer 265 echo "\n<p class='err'>Keine Eigentümer gefunden.</p>" 266 ."\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>"; 266 echo "\n<p class='err'>Keine Eigentümer gefunden.</p>"; 267 echo "\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>"; 268 linkgml($gkz, $gmlid, "Buchungsblatt", ""); 267 269 } 268 270 } -
trunk/info/info/alkis/alkisinlaybaurecht.php
r376 r377 2 2 /* alkisinlaybaurecht.php - Inlay fuer Template: Baurecht 3 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 Ähnlich alkisbaurecht, aber nur Basisdaten, kein Footer und keine Flurstücks-Verschneidung.5 4 6 5 Version: 7 2016-02-24 Version fuer norGIS-ALKIS-Import 8 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 6 2011-07-26 debug 7 2011-11-28 import_request_variables 8 2011-12-14 function imFenster 9 2013-04-08 deprecated "import_request_variables" ersetzt 10 2013-06-27 hiervon neue Variante alkisbaurecht (ohne "inlay"), 11 dafÃŒr hier die SchlÃŒssel ganz raus und FlurstÃŒcks-Verschneidung raus. 12 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 13 2014-09-10 Bei Relationen den Timestamp abschneiden 14 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix) 15 2015-12-09 Austausch .ico durch .png 9 16 */ 10 17 session_start(); … … 13 20 if ($auth == "mapbender") {require_once($mapbender);} 14 21 ?> 15 <! doctype html>16 <html lang="de">22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 23 <html> 17 24 <head> 18 <meta charset="utf-8"> 25 <meta name="author" content="b600352" > 26 <meta http-equiv="cache-control" content="no-cache"> 27 <meta http-equiv="pragma" content="no-cache"> 28 <meta http-equiv="expires" content="0"> 29 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 19 30 <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title> 20 31 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 31 42 32 43 <?php 33 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisinlaybaurecht.php'");44 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 34 45 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 35 46 36 // Keine Spalten, die eine Berechtigungsprüfung nach Gemeinde ermöglichen:37 $sql ="SELECT r.ogc_fid, r.name, r.stelle, r.bezeichnung AS rechtbez, a. vAS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae47 // wie View "baurecht" 48 $sql ="SELECT r.ogc_fid, r.name, r.stelle, r.bezeichnung AS rechtbez, a.bezeichner AS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae 38 49 FROM ax_bauraumoderbodenordnungsrecht r 39 LEFT JOIN alkis_wertearten a ON cast(r.artderfestlegung AS character varying)=a.k AND a.element='ax_bauraumoderbodenordnungsrecht' AND a.bezeichnung='artderfestlegung'50 LEFT JOIN v_baurecht_adf a ON r.artderfestlegung=a.wert 40 51 LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle WHERE r.gml_id= $1 ;"; 41 52 … … 50 61 echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>\n"; 51 62 63 // ToDo: ++++ Spalte anfÃŒgen, darin Link auf neue Variante alkisbaurecht.php 64 52 65 if ($row = pg_fetch_array($res)) { 53 echo "\n<table>" 54 ."\n<tr>" 55 ."\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>" 56 ."<span class='wichtig'>".$row["adfbez"]."</span></td>" 57 ."\n</tr>"; 66 echo "\n<table>"; 67 68 echo "\n<tr>"; 69 echo "\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>"; 70 echo "<span class='wichtig'>".$row["adfbez"]."</span></td>"; 71 echo "\n</tr>"; 72 58 73 $enam=$row["name"]; 59 74 if ($enam != "") { 60 echo "\n<tr>" 61 ."\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>"62 ."\n</tr>";75 echo "\n<tr>"; 76 echo "\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>"; 77 echo "\n</tr>"; 63 78 } 64 echo "\n<tr>" 65 ."\n\t<td class='li'>Verfahrensnummer:</td>\n\t<td>".$row["rechtbez"]."</td>" 66 ."\n</tr>"; 79 echo "\n<tr>"; 80 echo "\n\t<td class='li'>Verfahrensnummer:</td>"; 81 echo "\n\t<td>".$row["rechtbez"]."</td>"; 82 echo "\n</tr>"; 83 67 84 $stell=$row["stelle"]; 68 85 if ($stell != "") { 69 echo "\n<tr>" 70 ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>".$row["stellbez"]."</td>" 71 ."\n</tr>"; 86 echo "\n<tr>"; 87 echo "\n\t<td class='li'>Dienststelle:</td>\n\t<td>".$row["stellbez"]; 88 echo "</td>"; 89 echo "\n</tr>"; 72 90 } 73 echo "\n<tr>" 74 ."\n\t<td class='li'>Fläche:</td>"; 91 92 echo "\n<tr>"; 93 echo "\n\t<td class='li'>Fläche:</td>"; 75 94 $flae=number_format($row["flae"],0,",",".")." m²"; 76 echo "\n\t<td>".$flae."</td>" 77 ."\n</tr>" 78 ."\n</table>"; 95 echo "\n\t<td>".$flae."</td>"; 96 echo "\n</tr>"; 97 98 echo "\n</table>"; 79 99 } else { 80 100 echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>"; 81 101 } 82 102 83 echo "\n<p class='nwlink'>" 84 ."\n\t<a href='javascript:imFenster(\"alkisbaurecht.php?gkz=".$gkz."&gmlid=".$gmlid."\")' "85 ."' title='Bau-, Raum- oder Bodenordnungsrecht'>Weitere Auskunft <img src='ico/Gericht.png' width='16' height='16' alt=''></a>"86 ."\n</p>";103 echo "\n<p class='nwlink'>"; 104 echo "\n\t<a href='javascript:imFenster(\"alkisbaurecht.php?gkz=".$gkz."&gmlid=".$gmlid."\")' "; 105 echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Weitere Auskunft <img src='ico/Gericht.png' width='16' height='16' alt=''></a>"; 106 echo "\n</p>"; 87 107 88 108 ?> -
trunk/info/info/alkis/alkislage.php
r376 r377 6 6 7 7 Version: 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-03-14 Korrekturen 10 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 8 2013-03-06 Korrektur URL des Link im Abs. Lage bei eingeschalteten Test-Optionen 9 2013-04-08 deprecated "import_request_variables" ersetzt 10 2014-01-23 gml des Katalogs, Link auf Modul "strasse" 11 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 12 2014-09-15 Bei Relationen den Timestamp abschneiden 13 2014-09-30 Umbenennung SchlÃŒsseltabellen (Prefix), RÃŒckbau substring(gml_id) 14 2014-12-30 Fs-Nr. rechtbuendig (class) 15 2015-12-09 Austausch .ico durch .png 16 2015-12-16 area -> st_area 11 17 12 18 ToDo: 13 - Balken-Kennzeichen kompatibel machen mit der Eingabe der Navigation fÃŒr Adresse 14 - das Modul "alkisgebaeudenw" (alle Geb. auf einem FS) verschneidet die FlÀchen und findet damit auch 15 Grenz-Uberbauungen und angrenzende GebÀude. Diese fehlen hier, weil nur VerknÃŒpfungen verarbeitet werden. 16 Mit FlÀchen-Verschneidung auch weitere FS anzeigen? 19 - Das Balken-Kennzeichen noch kompatibel machen mit der Eingabe der Navigation fÃŒr Adresse 17 20 */ 18 21 session_start(); 19 22 $id="n"; 23 $ltyp=""; 20 24 $cntget = extract($_GET); 21 25 require_once("alkis_conf_location.php"); … … 24 28 25 29 switch ($ltyp) { 26 case "m": // "Mit HsNr" = Hauptgebaeude30 case "m": // "Mit HsNr" = Hauptgebaeude 27 31 $tnam = "ax_lagebezeichnungmithausnummer"; break; 28 32 case "p": // "mit PseudoNr" = Nebengebaeude 29 33 $tnam = "ax_lagebezeichnungmitpseudonummer"; break; 30 case "o": //"Ohne HsNr" = Gewanne oder Strasse34 case "o": //"Ohne HsNr" = Gewanne oder Strasse 31 35 $tnam = "ax_lagebezeichnungohnehausnummer"; break; 32 36 default: … … 35 39 } 36 40 41 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 37 42 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 38 43 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 39 44 ?> 40 <! doctype html>41 <html lang="de">45 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 46 <html> 42 47 <head> 43 <meta charset="utf-8"> 48 <meta name="author" content="b600352" > 49 <meta http-equiv="cache-control" content="no-cache"> 50 <meta http-equiv="pragma" content="no-cache"> 51 <meta http-equiv="expires" content="0"> 52 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 44 53 <title>ALKIS Lagebezeichnung</title> 45 54 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 51 60 <body> 52 61 <?php 53 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkislage.php'");62 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 54 63 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 55 64 … … 133 142 } 134 143 } else { 135 echo "<p class='err'>Fehler! Kein Treffer fuer Lagebezeichnung mit gml_id='".$gmlid."'</p>"; 136 if ($debug > 2) { 137 echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>"; 138 } 139 echo "</body></html>"; 140 exit; 144 echo "<p class='err'>Fehler! Kein Treffer fuer gml_id=".$gmlid."</p>"; 141 145 } 142 146 … … 147 151 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Tab. Kennz. 148 152 // ToDo: !! kleiner, wenn ltyp=0 und die Schluesselfelder leer sind 149 echo "\n\t<table class='kennzla' title='Lage'>" 150 ."\n\t<tr>";153 echo "\n\t<table class='kennzla' title='Lage'>"; 154 echo "\n\t<tr>"; 151 155 if ($osub != "g") { // nicht bei Gewanne 152 echo "\n\t\t<td class='head'>Land</td>" 153 ."\n\t\t<td class='head'>Reg.-Bez.</td>"154 ."\n\t\t<td class='head'>Kreis</td>"155 ."\n\t\t<td class='head'>Gemeinde</td>"156 ."\n\t\t<td class='head'>Straße</td>";156 echo "\n\t\t<td class='head'>Land</td>"; 157 echo "\n\t\t<td class='head'>Reg.-Bez.</td>"; 158 echo "\n\t\t<td class='head'>Kreis</td>"; 159 echo "\n\t\t<td class='head'>Gemeinde</td>"; 160 echo "\n\t\t<td class='head'>Straße</td>"; 157 161 } 158 162 switch ($ltyp) { … … 161 165 break; 162 166 case "p": // "mit PseudoNr" 163 echo "\n\t\t<td class='head'>Haus-Nr</td>" 164 ."\n\t\t<td class='head'>lfd.-Nr</td>";167 echo "\n\t\t<td class='head'>Haus-Nr</td>"; 168 echo "\n\t\t<td class='head'>lfd.-Nr</td>"; 165 169 break; 166 170 case "o": //"Ohne HsNr" … … 170 174 break; 171 175 } 172 echo "\n\t</tr>\n\t<tr>"; 176 echo "\n\t</tr>"; 177 echo "\n\t<tr>"; 173 178 if ($osub != "g") { // nicht bei Gewanne 174 179 … … 204 209 break; 205 210 case "p": 206 echo "\n\t\t<td title='Pseudonummer - Nebengebäude zu dieser Hausnummer'>".$pseu."</td>" 207 ."\n\t\t<td title='Laufende Nummer Nebengebäude'><span class='wichtig'>".$lfd."</span></td>";211 echo "\n\t\t<td title='Pseudonummer - Nebengebäude zu dieser Hausnummer'>".$pseu."</td>"; 212 echo "\n\t\t<td title='Laufende Nummer Nebengebäude'><span class='wichtig'>".$lfd."</span></td>"; 208 213 break; 209 214 case "o": … … 213 218 break; 214 219 } 215 echo "\n\t</tr>" 216 ."\n\t</table>";220 echo "\n\t</tr>"; 221 echo "\n\t</table>"; 217 222 218 223 echo "\n\t</td>\n\t<td>"; 219 224 220 225 // Kopf Rechts: weitere Daten? 226 if ($idanzeige) {linkgml($gkz, $gmlid, "Lage", ""); } 227 221 228 if ($osub != "g") { // Link zu Strasse 222 echo "\n\t\t<p class='nwlink noprint'>" 223 ."\n\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$strgml; 224 if ($showkey) {echo "&showkey=j";} 225 echo "' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>" 226 ."\n\t\t</p>"; 229 echo "\n\t\t<p class='nwlink noprint'>"; 230 echo "\n\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$strgml; 231 if ($idanzeige) {echo "&id=j";} 232 if ($showkey) {echo "&showkey=j";} 233 echo "' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>"; 234 echo "\n\t\t</p>"; 227 235 } 228 236 … … 233 241 // ax_Flurstueck >weistAuf> ax_LagebezeichnungMitHausnummer 234 242 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer 235 // ++ auch FlÀchenverschneidung?236 243 if ($ltyp <> "p") { // Pseudonummer linkt nur GebÀude 237 echo "\n\n<a id='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n"238 ."\n<p>mit dieser Lagebezeichnung.</p>";244 echo "\n\n<a name='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n"; 245 echo "\n<p>mit dieser Lagebezeichnung.</p>"; 239 246 switch ($ltyp) { 240 247 case "m": $bezart="weistauf"; break; … … 254 261 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 255 262 } 256 echo "\n<table class='fs'>" 257 ."\n<tr>" 258 ."\n\t<td class='heads'>Gemarkung<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>" 259 ."\n\t<td class='heads'>Flur<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>" 260 ."\n\t<td class='heads fsnr' title='Flurstücksnummer (Zähler / Nenner)'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Flurst.</td>" 261 ."\n\t<td class='head fla'>Fläche</td>" 262 ."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>" 263 ."\n</tr>"; 263 264 echo "\n<table class='fs'>"; 265 echo "\n<tr>"; // Kopfzeile der Tabelle 266 echo "\n\t<td class='head'>Gemarkung</td>"; 267 echo "\n\t<td class='head'>Flur</td>"; 268 echo "\n\t<td class='head fsnr' title='Flurstücksnummer (Zähler / Nenner)'>Flurst.</td>"; 269 echo "\n\t<td class='head fla'>Fläche</td>"; 270 echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; 271 echo "\n</tr>"; 264 272 $j=0; 265 273 while($rowf = pg_fetch_array($resf)) { … … 268 276 if ($rowf["nenner"] != "") {$fskenn.="/".$rowf["nenner"];} 269 277 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 270 echo "\n<tr>" 271 ."\n\t<td>";278 echo "\n<tr>"; 279 echo "\n\t<td>"; 272 280 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 273 echo $rowf["bezeichnung"]."</td>" 274 ."\n\t<td>".$flur."</td>" 275 ."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>" 276 ."\n\t<td class='fla'>".$flae."</td>" 277 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 278 ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 279 if ($showkey) {echo "&showkey=j";} 280 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 281 ."\n\t\t</p>\n\t</td>" 282 ."\n</tr>"; 281 echo $rowf["bezeichnung"]."</td>"; 282 echo "\n\t<td>".$flur."</td>"; 283 echo "\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span>"; 284 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück", "ax_flurstueck");} 285 echo "</td>"; 286 echo "\n\t<td class='fla'>".$flae."</td>"; 287 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 288 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 289 if ($idanzeige) {echo "&id=j";} 290 if ($showkey) {echo "&showkey=j";} 291 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 292 echo "\n\t\t</p>\n\t</td>"; 293 echo "\n</tr>"; 283 294 $j++; 284 295 } 285 296 echo "\n</table>"; 286 if ($j > 6) {echo "<p class='cnt'>".$j." Flurstücke</p>";} 297 if ($j > 6) { 298 echo "<p class='cnt'>".$j." Flurstücke</p>"; 299 } 287 300 } 288 301 … … 290 303 // andere Lage mit gleicher Hausnummer suchen 291 304 if ($ltyp <> "o") { // nicht bei Gewanne (Ohne HsNr) 292 echo "\n\n<a id='lage'></a><h3><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Lage</h3>\n"293 ."\n<p>andere Lagebezeichnungen zur gleichen Hausnummer.</p>";305 echo "\n\n<a name='lage'></a><h3><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Lage</h3>\n"; 306 echo "\n<p>andere Lagebezeichnungen zur gleichen Hausnummer.</p>"; 294 307 $whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 "; 295 308 296 309 $url=$_SERVER['PHP_SELF']."?gkz=".$gkz."&id=".$id; // Basis 310 if ($idanzeige) {$url.="&id=j";} 297 311 if ($showkey) {$url.="&showkey=j";} 298 312 $url.="&gmlid="; 299 313 300 314 switch ($ltyp) { 301 case "m": // aktuell :Hausnummer gefunden315 case "m": // aktuell Hausnummer gefunden 302 316 // dazu alle NebengebÀude suchen 303 echo "\n<p>Nebengebäude: ";304 $sql ="SELECT l.gml_id, l.laufendenummer FROM ax_lagebezeichnungmitpseudonummer l " 305 .$whereclaus."AND lage= $6 AND pseudonummer= $7 AND l.endet IS NULL ORDER BY laufendenummer;";317 echo "\n<p>Nebengebäude: "; 318 $sql ="SELECT l.gml_id, l.laufendenummer FROM ax_lagebezeichnungmitpseudonummer l "; 319 $sql.=$whereclaus."AND lage= $6 AND pseudonummer= $7 AND l.endet IS NULL ORDER BY laufendenummer;"; 306 320 307 321 $v = array($land,$regbez,$kreis,$gem,$lage,$lage,$hsnr); … … 312 326 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."</p>";} 313 327 } 314 $neb=0;315 328 while($row = pg_fetch_array($res)) { 316 329 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 317 $neb++; 318 } 319 if ($neb == 0) {echo "keine";} 330 } 320 331 echo "</p>"; 321 332 break; … … 330 341 $res = pg_execute("", $v); 331 342 332 if (!$res) {echo "<p class='err'>Fehler bei Hauptgebäude.<br>".$sql."</p>\n";} 333 $hg=0; 343 if (!$res) echo "<p class='err'>Fehler bei Hauptgebäude.<br>".$sql."</p>\n"; 334 344 while($row = pg_fetch_array($res)) { 335 345 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=m'>Haus-Nr ".$pseu."</a> "; 336 $hg++; 337 } 338 if ($hg == 0) {echo " Kein Hauptgebäude gefunden.";} 346 } 339 347 echo "</p>"; 340 348 341 echo "\n<p> Weitere Nebengebäude: ";342 $sql ="SELECT l.gml_id, l.laufendenummer FROM ax_lagebezeichnungmitpseudonummer l " 343 .$whereclaus."AND pseudonummer= $6 AND laufendenummer <> $7 AND l.endet IS NULL ORDER BY laufendenummer;";344 $v =array($land,$regbez,$kreis,$gem,$lage,$pseu,$lfd);349 echo "\n<p>weitere Nebengebäude: "; 350 $sql ="SELECT l.gml_id, l.laufendenummer FROM ax_lagebezeichnungmitpseudonummer l "; 351 $sql.=$whereclaus."AND pseudonummer= $6 AND laufendenummer <> $7 AND l.endet IS NULL ORDER BY laufendenummer;"; 352 $v = array($land,$regbez,$kreis,$gem,$lage,$pseu,$lfd); 345 353 $res = pg_prepare("", $sql); 346 354 $res = pg_execute("", $v); … … 349 357 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."</p>";} 350 358 } 351 $neb=0;352 359 while($row = pg_fetch_array($res)) { 353 360 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 354 $neb++; 355 } 356 if ($neb == 0) {echo "keine";} 361 } 357 362 echo "</p>"; 358 363 break; … … 362 367 // G E B A E U D E 363 368 if ($ltyp <> "o") { // OhneHsNr linkt nur Flurst. 364 echo "\n\n<a id='geb'></a><h3><img src='ico/Haus.png' width='16' height='16' alt=''> Gebäude</h3>"365 ."\n<p>mit dieser Lagebezeichnung.</p>";369 echo "\n\n<a name='geb'></a><h3><img src='ico/Haus.png' width='16' height='16' alt=''> Gebäude</h3>"; 370 echo "\n<p>mit dieser Lagebezeichnung.</p>"; 366 371 switch ($ltyp) { 367 372 case "p": $bezart="g.hat"; break; 368 373 case "m": $bezart="ANY(g.zeigtauf)"; break; // array 369 374 } 370 371 $sql ="SELECT g.gml_id, g.gebaeudefunktion, array_to_string(g.name, ',') AS name, g.bauweise, g.grundflaeche, g.zustand, round(st_area(g.wkb_geometry)::numeric,2) AS flaeche, 372 h.v AS hv, h.d AS hd, u.v AS uv, u.d AS ud, z.v AS zv, z.d AS zd FROM ax_gebaeude g 373 LEFT JOIN alkis_wertearten h ON cast(g.bauweise AS character varying)=h.k AND h.element='ax_gebaeude' AND h.bezeichnung='bauweise' 374 LEFT JOIN alkis_wertearten u ON cast(g.gebaeudefunktion AS character varying)=u.k AND u.element='ax_gebaeude' AND u.bezeichnung='gebaeudefunktion' 375 LEFT JOIN alkis_wertearten z ON cast(g.zustand AS character varying)=z.k AND z.element='ax_gebaeude' AND z.bezeichnung='zustand' 376 WHERE $1 = ".$bezart." AND g.endet IS NULL;"; 377 // Keine Sortierung (ORDER BY) notwendig weil i.d.R. nur ein (Haupt-)GebÀude diese Hausnummer hat. 378 // FÃŒr weiter "alkis_wertearten" (EnstschlÃŒsselungen) zum GebÀude dem Link "Haus" folgen. 375 $sql ="SELECT g.gml_id, g.gebaeudefunktion, g.name, g.bauweise, g.grundflaeche, g.zustand, round(st_area(g.wkb_geometry)::numeric,2) AS flaeche, h.bauweise_beschreibung, u.bezeichner 376 FROM ax_gebaeude g LEFT JOIN v_geb_bauweise h ON g.bauweise=h.bauweise_id 377 LEFT JOIN v_geb_funktion u ON g.gebaeudefunktion=u.wert WHERE $1 = ".$bezart." AND g.endet IS NULL;"; 379 378 380 379 $v = array($gmlid); … … 385 384 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 386 385 } 387 echo "\n<table class='geb'>" 388 ."\n<tr>" 389 ."\n\t<td class='head' title='Name ist der Eigenname oder die Bezeichnung des Gebäudes.'>Name</td>" 390 ."\n\t<td class='head fla' title='Fläche'>Fläche</td>" 391 ."\n\t<td class='head' title='Gebäudefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>" 392 ."\n\t<td class='head' title='Bauweise ist die Beschreibung der Art der Bauweise'>Bauweise</td>" 393 ."\n\t<td class='head' title='Zustand beschreibt die Beschaffenheit oder die Betriebsbereitschaft von Gebäude. Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.'>Zustand</td>" 394 ."\n\t<td class='head nwlink' title='Komplette Hausdaten'>Hausdaten</td>" 395 ."\n</tr>"; 386 echo "\n<table class='geb'>"; 387 echo "\n<tr>"; // T-Header 388 echo "\n\t<td class='head' title='Gebäudename'>Name</td>"; 389 echo "\n\t<td class='head fla' title='Fläche'>Fläche</td>"; 390 echo "\n\t<td class='head' title='Gebäudefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>"; 391 echo "\n\t<td class='head' title='Bauweise (Schlüssel und Beschreibung)'>Bauweise</td>"; 392 echo "\n\t<td class='head' title='Zustand (Schlüssel und Beschreibung)'>Zustand</td>"; 393 echo "\n\t<td class='head nwlink' title='Link zu kompletten Hausdaten'>Haus</td>"; 394 echo "\n</tr>"; 395 // T-Body 396 396 $i=0; 397 397 while($row = pg_fetch_array($res)) { 398 398 $ggml=$row["gml_id"]; 399 399 $gfla=$row["flaeche"]; 400 echo "\n\t<tr>" 401 ."<td>".$row["name"]."</td>" 402 ."<td class='fla'>".$gfla." m²</td>"; 403 404 echo "<td title='".$row["ud"]."'>"; 400 echo "\n\t<tr>"; 401 402 echo "<td>"; 403 if ($idanzeige) {linkgml($gkz, $ggml, "Gebäude", "ax_gebaeude");} 404 // +++ Hausnummer / Adresse ??? 405 echo $row["name"]."</td>"; 406 echo "<td class='fla'>".$gfla." m²</td>"; 407 echo "<td>"; 405 408 if ($showkey) {echo "<span class='key'>".$row["gebaeudefunktion"]."</span> ";} 406 echo $row["uv"]."</td>"; 407 408 echo "<td title='".$row["hd"]."'>"; 409 if ($showkey) {echo "<span class='key'>".$row["bauweise"]."</span> ";} 410 echo $row["hv"]."</td>"; 411 412 echo "<td title='".$row["zd"]."'>"; 413 if ($showkey) {echo "<span class='key'>".$row["zustand"]."</span> ";} 414 echo $row["zv"]."</td>"; 415 416 echo "\n\t<td class='nwlink noprint'>" 417 ."<a title='komplette Hausdaten' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml 418 ."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>" 419 ."</td>" 420 ."</tr>"; 409 echo $row["bezeichner"]."</td>"; 410 echo "<td>"; 411 if ($showkey) {echo "<span class='key'>".$row["bauweise"]."</span> ";} 412 echo $row["bauweise_beschreibung"]."</td>"; 413 414 echo "<td>".$row["zustand"]."</td>"; // +++ EntschlÃŒsseln 415 416 echo "\n\t<td class='nwlink noprint'>"; 417 echo "<a title='Hausdaten' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 418 if ($idanzeige) {echo "&id=j";} 419 echo "'><img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 420 echo "</td>"; 421 422 echo "</tr>"; 421 423 } 422 424 echo "\n</table>"; … … 425 427 ?> 426 428 427 <div class='buttonbereich noprint'> 428 <hr> 429 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 430 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 431 </div> 429 <form action=''> 430 <div class='buttonbereich noprint'> 431 <hr> 432 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 433 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 434 </div> 435 </form> 432 436 433 437 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", "&ltyp=".$ltyp); ?> -
trunk/info/info/alkis/alkisnamstruk.php
r376 r377 6 6 7 7 Version: 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 8 2013-04-08 deprecated "import_request_variables" ersetzt 9 2013-11-22 Namensbestandteil ("von") in Kompakt-Adresse vor den Namen setzen 10 2014-02-06 Redundante Adressen kommen vor. Nur eine davon anzeigen. 11 2014-09-04 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 12 2014-09-10 Bei Relationen den Timestamp abschneiden 13 2014-09-30 RÃŒckbau substring(gml_id) 14 2015-12-09 Austausch .ico durch .png 15 16 ToDo: Sortierung der GrundbÃŒcher zum Namen 10 17 */ 11 18 session_start(); … … 16 23 if ($auth == "mapbender") {require_once($mapbender);} 17 24 include("alkisfkt.php"); 25 if ($id == "j") { $idanzeige=true;} else {$idanzeige=false;} 18 26 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 19 27 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 20 28 21 29 ?> 22 <! doctype html>23 <html lang="de">30 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 31 <html> 24 32 <head> 25 <meta charset="utf-8"> 33 <meta name="author" content="b600352" > 34 <meta http-equiv="cache-control" content="no-cache"> 35 <meta http-equiv="pragma" content="no-cache"> 36 <meta http-equiv="expires" content="0"> 37 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 26 38 <title>ALKIS Person und Adresse</title> 27 39 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 39 51 40 52 <?php 41 53 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 42 54 // Balken 43 echo "<p class='nakennz'>ALKIS Name id=".$gmlid." </p>\n" 44 ."\n<h2><img src='ico/Eigentuemer.png' width='16' height='16' alt=''> Person</h2>\n"; 45 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisnamstruk.php'");55 echo "<p class='nakennz'>ALKIS Name id=".$gmlid." </p>\n"; 56 57 echo "\n<h2><img src='ico/Eigentuemer.png' width='16' height='16' alt=''> Person</h2>\n"; 46 58 if (!$con) "\n<p class='err'>Fehler beim Verbinden der DB</p>\n"; 47 59 48 $sql="SELECT p.nachnameoderfirma, p.anrede, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad, a.v AS anrv 49 FROM ax_person p LEFT JOIN alkis_wertearten a ON cast(p.anrede AS character varying)=a.k AND a.element='ax_person' AND a.bezeichnung='anrede' 50 WHERE gml_id= $1;"; 60 $sql="SELECT nachnameoderfirma, anrede, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad "; 61 $sql.="FROM ax_person WHERE gml_id= $1;"; 51 62 52 63 $v = array($gmlid); … … 54 65 $res = pg_execute("", $v); 55 66 56 if (!$res) { 57 echo "\n<p class='err'>Fehler bei Zugriff auf Namensnummer</p>\n"; 58 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 59 } 67 if (!$res) {echo "\n<p class='err'>Fehler bei Zugriff auf Namensnummer</p>\n";} 68 if ($idanzeige) { linkgml($gkz, $gmlid, "Person", "ax_person"); } 60 69 if ($row = pg_fetch_array($res)) { 61 70 $vor=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); 62 71 $nam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); 63 72 $geb=htmlentities($row["geburtsname"], ENT_QUOTES, "UTF-8"); 64 $anrk=$row["anrede"]; // Key65 $anr= $row["anrv"]; // Value73 $anrk=$row["anrede"]; 74 $anr=anrede($anrk); 66 75 $nbest=$row["namensbestandteil"]; 67 76 $aka=$row["akademischergrad"]; 68 77 69 echo "<table>\n" 70 ."\t<tr><td class='nhd'>Anrede:</td><td class='nam'>";78 echo "<table>\n"; 79 echo "\t<tr><td class='nhd'>Anrede:</td><td class='nam'>"; 71 80 if ($showkey) {echo "<span class='key' title='Anredekennung'>(".$anrk.")</span> ";} 72 echo $anr."</td></tr>\n" 73 ."\t<tr><td class='nhd'>Nachname oder Firma:</td><td class='nam'>".$nam."</td></tr>\n"74 ."\t<tr><td class='nhd'>Vorname:</td><td class='nam'>".$vor." </td></tr>\n"75 ."\t<tr><td class='nhd'>Geburtsname:</td><td class='nam'>".$geb." </td></tr>\n"76 ."\t<tr><td class='nhd'>Geburtsdatum:</td><td class='nam'>".$row["geburtsdatum"]." </td></tr>\n"77 ."\t<tr><td class='nhd'>Namensbestandteil:</td><td class='nam'>".$nbest." </td></tr>\n"78 ."\t<tr><td class='nhd'>akademischer Grad:</td><td class='nam'>".$aka." </td></tr>\n"79 ."\n</table>\n<hr>\n";81 echo $anr."</td></tr>\n"; 82 echo "\t<tr><td class='nhd'>Nachname oder Firma:</td><td class='nam'>".$nam."</td></tr>\n"; 83 echo "\t<tr><td class='nhd'>Vorname:</td><td class='nam'>".$vor." </td></tr>\n"; 84 echo "\t<tr><td class='nhd'>Geburtsname:</td><td class='nam'>".$geb." </td></tr>\n"; 85 echo "\t<tr><td class='nhd'>Geburtsdatum:</td><td class='nam'>".$row["geburtsdatum"]." </td></tr>\n"; 86 echo "\t<tr><td class='nhd'>Namensbestandteil:</td><td class='nam'>".$nbest." </td></tr>\n"; 87 echo "\t<tr><td class='nhd'>akademischer Grad:</td><td class='nam'>".$aka." </td></tr>\n"; 88 echo "\n</table>\n<hr>\n"; 80 89 81 90 // A d r e s s e … … 91 100 if (!$resa) { 92 101 echo "\n<p class='err'>Fehler bei Adressen</p>\n"; 93 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml(Person)= '".$gmlid."'</p>\n";} 102 if ($debug > 2) { 103 echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml(Person)= '".$gmlid."'</p>\n"; 104 } 94 105 } 95 106 … … 105 116 $hsnr=$rowa["hausnummer"]; 106 117 $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 107 echo "<table>\n" 108 ."\t<tr><td class='nhd'>PLZ:</td><td class='nam'>".$plz."</td></tr>\n" 109 ."\t<tr><td class='nhd'>Ort:</td><td class='nam'>".$ort."</td></tr>\n" 110 ."\t<tr><td class='nhd'>Strasse:</td><td class='nam'>".$str."</td></tr>\n" 111 ."\t<tr><td class='nhd'>Hausnummer:</td><td class='nam'>".$hsnr."</td></tr>\n" 112 ."\t<tr><td class='nhd'>Land:</td><td class='nam'>".$land."</td></tr>\n" 113 ."\n</table>\n<br>\n"; 118 if ($idanzeige) { linkgml($gkz, $gmla, "Adresse", "ax_adresse"); } 119 120 echo "<table>\n"; 121 echo "\t<tr><td class='nhd'>PLZ:</td><td class='nam'>".$plz."</td></tr>\n"; 122 echo "\t<tr><td class='nhd'>Ort:</td><td class='nam'>".$ort."</td></tr>\n"; 123 echo "\t<tr><td class='nhd'>Strasse:</td><td class='nam'>".$str."</td></tr>\n"; 124 echo "\t<tr><td class='nhd'>Hausnummer:</td><td class='nam'>".$hsnr."</td></tr>\n"; 125 echo "\t<tr><td class='nhd'>Land:</td><td class='nam'>".$land."</td></tr>\n"; 126 echo "\n</table>\n<br>\n"; 114 127 115 128 // Name und Adresse Kompakt (im Rahmen) - Alles was man fuer ein Anschreiben braucht 116 echo "<img src='ico/Namen.png' width='16' height='16' alt='Brief' title='Anschrift'>" 117 ."\n<div class='adr' title='Anschrift'>".$anr." ".$aka." ".$vor." ".$nbest." ".$nam."<br>"118 ."\n".$str." ".$hsnr."<br>"119 ."\n".$plz." ".$ort."</div>";129 echo "<img src='ico/Namen.png' width='16' height='16' alt='Brief' title='Anschrift'>"; // Symbol "Brief" 130 echo "\n<div class='adr' title='Anschrift'>".$anr." ".$aka." ".$vor." ".$nbest." ".$nam."<br>"; 131 echo "\n".$str." ".$hsnr."<br>"; 132 echo "\n".$plz." ".$ort."</div>"; 120 133 } 121 134 } … … 124 137 echo "\n<p class='err'>Keine Adressen.</p>\n"; 125 138 } elseif ($j > 1) { 126 echo "\n\t\t<p class='nwlink noprint'>" 127 ."\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&gmlid=".$gmlid; 139 echo "\n\t\t<p class='nwlink noprint'>"; 140 echo "\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&gmlid=".$gmlid; 141 if ($idanzeige) {echo "&id=j";} 128 142 if ($showkey) {echo "&showkey=j";} 129 143 if ($multiadress == "j") { … … 132 146 echo "&multiadress=j' title='Adressen ggf. mehrfach vorhanden'>alle Adressen "; 133 147 } 134 echo "\n\t\t\t</a>" 135 ."\n\t\t</p>";148 echo "\n\t\t\t</a>"; 149 echo "\n\t\t</p>"; 136 150 } 137 151 … … 141 155 // >bestehtAusRechtsverhaeltnissenZu> namensnummer (Nebenzweig/SonderfÀlle?) 142 156 143 $sqlg ="SELECT n.gml_id AS gml_n, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, g.gml_id AS gml_g, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung as nr, g.blattart, wb.v AS blattartv, b.bezeichnung AS beznam 144 FROM ax_person p JOIN ax_namensnummer n ON p.gml_id=n.benennt 145 JOIN ax_buchungsblatt g ON g.gml_id=n.istbestandteilvon 157 $sqlg ="SELECT n.gml_id AS gml_n, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, g.gml_id AS gml_g, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung as nr, g.blattart, b.bezeichnung AS beznam 158 FROM ax_person p JOIN ax_namensnummer n ON p.gml_id=n.benennt JOIN ax_buchungsblatt g ON g.gml_id=n.istbestandteilvon 146 159 LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk 147 LEFT JOIN alkis_wertearten wb ON cast(g.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart' 148 WHERE p.gml_id= $1 149 ORDER BY b.bezeichnung, g.buchungsblattnummermitbuchstabenerweiterung, n.laufendenummernachdin1421;"; 160 WHERE p.gml_id= $1 ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;"; 150 161 // buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander 151 162 … … 156 167 if (!$resg) { 157 168 echo "\n<p class='err'>Fehler bei Grundbuch</p>\n"; 158 if ($debug > 2) {echo "\n<p class='err'>SQL=".$sqlg."</p>\n";} 159 } 160 echo "<table class='eig'>" 161 ."\n<tr>" 162 ."\n\t<td class='heads'>Bezirk<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>" 163 ."\n\t<td class='head'>Blattart</td>" 164 ."\n\t<td class='heads'>Blatt<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>" 165 ."\n\t<td class='heads'>Namensnummer<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>" 166 ."\n\t<td class='head'>Anteil</td>" 167 ."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>" 168 ."\n</tr>"; 169 if ($debug > 2) { 170 echo "\n<p class='err'>SQL=".$sqlg."</p>\n"; 171 } 172 } 173 echo "<table class='eig'>"; 174 echo "\n<tr>"; 175 echo "\n\t<td class='head'>Bezirk</td>"; 176 echo "\n\t<td class='head'>Blattart</td>"; 177 echo "\n\t<td class='head'>Blatt</td>"; 178 echo "\n\t<td class='head'>Namensnummer</td>"; 179 echo "\n\t<td class='head'>Anteil</td>"; 180 echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; 181 echo "\n</tr>"; 169 182 170 183 $i=0; … … 174 187 $namnum=kurz_namnr($rowg["lfd"]); 175 188 $zae=$rowg["zaehler"]; 176 $blattkey=$rowg["blattart"]; // Key 177 $blattart=$rowg["blattartv"]; // Value 178 179 echo "\n<tr>" 180 ."\n\t<td class='gbl'>"; // GB-Bezirk" 181 if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span> ";} 182 echo $rowg["beznam"] 183 ."</td>"; 189 $blattkey=$rowg["blattart"]; 190 $blattart=blattart($blattkey); 191 192 echo "\n<tr>"; 193 194 echo "\n\t<td class='gbl'>"; // GB-Bezirk" 195 if ($showkey) { 196 echo "<span class='key'>".$rowg["bezirk"]."</span> "; 197 } 198 echo $rowg["beznam"]; 199 echo "</td>"; 184 200 185 201 echo "\n\t<td class='gbl'>"; // Blattart 186 if ($showkey) {echo "<span class='key'>".$blattkey."</span> ";} 187 echo $blattart 188 ."</td>"; 202 if ($showkey) { 203 echo "<span class='key'>".$blattkey."</span> "; 204 } 205 echo $blattart; 206 echo "</td>"; 189 207 190 208 echo "\n\t<td class='gbl'>"; // Blatt 191 echo "<span class='wichtig'>".$rowg["nr"]."</span>" 192 ."</td>"; 209 echo "<span class='wichtig'>".$rowg["nr"]."</span>"; 210 if ($idanzeige) { 211 linkgml($gkz, $gmlg, "Grundbuchblatt", ""); 212 } 213 echo "</td>"; 193 214 194 215 echo "\n\t<td class='gbl'>"; // Namensnummer … … 197 218 } else { 198 219 echo $namnum; 220 } 221 if ($idanzeige) { 222 linkgml($gkz, $gmln, "Namensnummer", "ax_namensnummer"); 199 223 } 200 224 echo "</td>"; … … 206 230 echo $zae."/".$rowg["nenner"]." Anteil"; 207 231 } 208 echo "</td>" 209 ."\n\t<td class='gbl'>" 210 ."\n\t\t<p class='nwlink noprint'>" 211 ."\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg; 212 if ($showkey) {echo "&showkey=j";} 213 echo "' title='Bestandsnachweis'>".$blattart 214 ."\n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 215 ."\n\t\t</p>" 216 ."\n\t</td>" 217 ."\n</tr>"; 232 echo "</td>"; 233 234 echo "\n\t<td class='gbl'>"; 235 echo "\n\t\t<p class='nwlink noprint'>"; 236 echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg; 237 if ($idanzeige) {echo "&id=j";} 238 if ($showkey) {echo "&showkey=j";} 239 echo "' title='Bestandsnachweis'>"; 240 echo $blattart; 241 echo "\n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 242 echo "\n\t\t</p>"; 243 echo "\n\t</td>"; 244 245 echo "\n</tr>"; 218 246 // +++ >bestehtAusRechtsverhaeltnissenZu> namensnummer ? 219 247 // z.B. eine Namennummer "Erbengemeinschaft" zeigt auf Namensnummern mit EigentÃŒmern … … 228 256 ?> 229 257 230 <div class='buttonbereich noprint'> 231 <hr> 232 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 233 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 234 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a> 235 </div> 258 <form action=''> 259 <div class='buttonbereich noprint'> 260 <hr> 261 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 262 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 263 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="32" height="16" alt="Export"></a> 264 </div> 265 </form> 236 266 237 267 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisstrasse.php
r376 r377 7 7 8 8 Version: 9 2016-02-24 Version fuer norGIS-ALKIS-Import 10 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen, SQL optimiert (FS-Liste jetzt schneller) 9 2014-01-23 Neu 10 2014-01-24 CSV-Export 11 2014-01-30 pg_free_result 12 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 13 2014-09-15 Bei Relationen den Timestamp abschneiden 14 2014-09-16 Wechsel Gem./Flur durch <b> hervorheben 15 2014-09-30 RÃŒckbau substring(gml_id) 16 2015-12-09 Austausch .ico durch .png 11 17 */ 12 18 session_start(); … … 17 23 include("alkisfkt.php"); 18 24 25 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 19 26 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 20 27 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 21 28 ?> 22 <! doctype html>23 <html lang="de">29 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 30 <html> 24 31 <head> 25 <meta charset="utf-8"> 32 <meta name="author" content="b600352" > 33 <meta http-equiv="cache-control" content="no-cache"> 34 <meta http-equiv="pragma" content="no-cache"> 35 <meta http-equiv="expires" content="0"> 36 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 26 37 <title>ALKIS Straße</title> 27 38 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 38 49 <body> 39 50 <?php 40 $con = pg_connect( $dbconn." options='--application_name=ALKIS-Auskunft_alkisstrasse.php'");51 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 41 52 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 42 53 … … 57 68 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 58 69 } 70 59 71 if ($row = pg_fetch_array($res)) { 60 72 $lage=$row["lage"]; // Strassenschluessel … … 70 82 echo "\n<h2><img src='ico/Strassen.png' width='16' height='16' alt=''> Straße</h2>\n"; 71 83 72 // Tabelle Kennzeichen73 echo "\n <table class='outer'>\n<tr>\n\t<td>"74 ."\n\t<table class='kennzstra' title='Lage'>" 75 ."\n\t<tr>"76 ."\n\t\t<td class='head'>Land</td>"77 ."\n\t\t<td class='head'>Reg.-Bez.</td>"78 ."\n\t\t<td class='head'>Kreis</td>"79 ."\n\t\t<td class='head'>Gemeinde</td>"80 ."\n\t\t<td class='head'>Straße</td>"81 ."\n\t</tr>"82 ."\n\t<tr>"; 84 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Tabelle Kennzeichen 85 echo "\n\t<table class='kennzstra' title='Lage'>"; 86 echo "\n\t<tr>"; 87 echo "\n\t\t<td class='head'>Land</td>"; 88 echo "\n\t\t<td class='head'>Reg.-Bez.</td>"; 89 echo "\n\t\t<td class='head'>Kreis</td>"; 90 echo "\n\t\t<td class='head'>Gemeinde</td>"; 91 echo "\n\t\t<td class='head'>Straße</td>"; 92 echo "\n\t</tr>"; 93 echo "\n\t<tr>"; 94 83 95 echo "\n\t\t<td title='Bundesland'>"; 84 96 if ($showkey) {echo "<span class='key'>".$row["land"]."</span><br>";} 85 echo $row["bnam"]." </td>" 86 ."\n\t\t<td title='Regierungsbezirk'>"; 97 echo $row["bnam"]." </td>"; 98 99 echo "\n\t\t<td title='Regierungsbezirk'>"; 87 100 if ($showkey) {echo "<span class='key'>".$row["regierungsbezirk"]."</span><br>";} 88 echo $row["rnam"]." </td>" 89 ."\n\t\t<td title='Kreis'>"; 101 echo $row["rnam"]." </td>"; 102 103 echo "\n\t\t<td title='Kreis'>"; 90 104 if ($showkey) {echo "<span class='key'>".$row["kreis"]."</span><br>";} 91 echo $row["knam"]." </td>" 92 ."\n\t\t<td title='Gemeinde'>"; 105 echo $row["knam"]." </td>"; 106 107 echo "\n\t\t<td title='Gemeinde'>"; 93 108 if ($showkey) {echo "<span class='key'>".$gem."</span><br>";} 94 echo $row["gnam"]." </td>" 95 . "\n\t\t<td title='Straße'>"; 109 echo $row["gnam"]." </td>"; 110 111 echo "\n\t\t<td title='Straße'>"; 96 112 if ($showkey) {echo "<span class='key'>".$lage."</span><br>";} 97 echo "<span class='wichtig'>".$snam."</span>" 98 . " </td>" 99 ."\n\t</tr>" 100 ."\n\t</table>"; 113 echo "<span class='wichtig'>".$snam."</span>"; 114 115 echo " </td>"; 116 echo "\n\t</tr>"; 117 echo "\n\t</table>"; 101 118 102 119 echo "\n\t</td>\n\t<td>"; … … 105 122 $ogml=$row["ogml"]; // ID von "Lage Ohne HsNr" 106 123 if ($ogml != "") { 107 echo "\n\t\t<p class='nwlink noprint'>" 108 ."\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$ogml; 109 if ($showkey) {echo "&showkey=j";} 110 echo "' title='Lage Ohne Hausnummer'>Lage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''></a>" 111 ."\n\t\t</p>"; 124 echo "\n\t\t<p class='nwlink noprint'>"; 125 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$ogml; 126 if ($idanzeige) {echo "&id=j";} 127 if ($showkey) {echo "&showkey=j";} 128 echo "' title='Lage Ohne Hausnummer'>Lage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''></a>"; 129 echo "\n\t\t</p>"; 112 130 } 113 131 … … 117 135 118 136 // F L U R S T U E C K E 119 echo "\n\n<a id='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n";137 echo "\n\n<a name='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n"; 120 138 echo "\n<p>Zusammenfassung von 'Lage mit Hausnummer' und 'Lage ohne Hausnummer' an dieser StraÃe</p>"; 121 139 … … 123 141 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer > = Strasse 124 142 // Suchkriterium: gml_id aus Katalog 125 $sql="SELECT f.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, l.gml_id AS lgml, l.hausnummer, 'm' AS ltyp 126 FROM ax_flurstueck f JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(f.weistAuf) 143 $subquery = "SELECT f1.gml_id AS fsgml, lm.gml_id AS lgml, lm.land, lm.regierungsbezirk, lm.kreis, lm.gemeinde, lm.lage, lm.hausnummer 144 FROM ax_flurstueck f1 JOIN ax_lagebezeichnungmithausnummer lm ON lm.gml_id=ANY(f1.weistAuf) 145 WHERE f1.endet IS NULL AND lm.endet IS NULL 146 UNION SELECT f2.gml_id AS fsgml, '' AS lgml, lo.land, lo.regierungsbezirk, lo.kreis, lo.gemeinde, lo.lage, '' AS hausnummer 147 FROM ax_flurstueck f2 JOIN ax_lagebezeichnungohnehausnummer lo ON lo.gml_id=ANY(f2.zeigtauf) 148 WHERE f2.endet IS NULL AND lo.endet IS NULL"; 149 150 $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, duett.lgml, duett.hausnummer 151 FROM ax_flurstueck f JOIN ( ".$subquery." ) AS duett ON f.gml_id=duett.fsgml 127 152 JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 128 JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 129 WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL AND l.endet IS NULL 130 UNION SELECT f.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, l.gml_id AS lgml, '' AS hausnummer, 'o' AS ltyp 131 FROM ax_flurstueck f JOIN ax_lagebezeichnungohnehausnummer l ON l.gml_id=ANY(f.zeigtauf) 132 JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 133 JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 134 WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL AND l.endet IS NULL 135 ORDER BY gemarkungsnummer, flurnummer, zaehler, nenner;"; 153 JOIN ax_lagebezeichnungkatalogeintrag s ON duett.land=s.land AND duett.regierungsbezirk=s.regierungsbezirk AND duett.kreis=s.kreis AND duett.gemeinde=s.gemeinde AND duett.lage=s.lage 154 WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL 155 ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 136 156 137 157 $v=array($gmlid); … … 143 163 } 144 164 145 echo "\n<table class='fs'>" 146 ."\n<tr>" 147 ."\n\t<td class='heads' title='Name der Gemarkung (Ortsteil)'>Gemarkung<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"148 ."\n\t<td class='heads' title='Flur-Nummer'>Flur<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"149 ."\n\t<td class='heads' title='Flurstücksnummer (Zähler / Nenner)'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Flurst.</td>"150 ."\n\t<td class='head fla' title='amtliche Fläche in Quadratmeter'>Fläche</td>"151 ."\n\t<td class='head hsnr' title='Hausnummer aus der Lagebezeichnung des Flurstücks'>HsNr.</td>"152 ."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"153 ."\n</tr>";165 echo "\n<table class='fs'>"; 166 echo "\n<tr>"; // Kopfzeile der Tabelle 167 echo "\n\t<td class='head' title='Name der Gemarkung (Ortsteil)'>Gemarkung</td>"; 168 echo "\n\t<td class='head' title='Flur-Nummer'>Flur</td>"; 169 echo "\n\t<td class='head' title='Flurstücksnummer (Zähler / Nenner)'>Flurst.</td>"; 170 echo "\n\t<td class='head fla' title='amtliche Fläche in Quadratmeter'>Fläche</td>"; 171 echo "\n\t<td class='head hsnr' title='Hausnummer aus der Lagebezeichnung des Flurstücks'>HsNr.</td>"; 172 echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; 173 echo "\n</tr>"; 154 174 $j=0; 155 175 $cnths=0; // Count Haus … … 164 184 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 165 185 $lgml=$rowf["lgml"]; // ID von "Lage Mit" oder leer 166 $ltyp=$rowf["ltyp"]; // mit/ohne HsNr 167 168 echo "\n<tr>" 169 ."\n\t<td>";186 187 echo "\n<tr>"; 188 189 echo "\n\t<td>"; 170 190 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 171 191 if ($gwgmkg != $gmkg) { … … 184 204 } 185 205 186 echo "\n\t<td><span class='wichtig'>".$fskenn."</span> </td>"187 ."\n\t<td class='fla'>".$flae."</td>"188 ."\n\t<td class='hsnr'>".$rowf["hausnummer"]."</td>"189 ."\n\t<td>\n\t\t<p class='nwlink noprint'>";190 191 // Link "Lage"192 // ++++ FEHLER kann auch Typ "o" sein 206 echo "\n\t<td><span class='wichtig'>".$fskenn."</span>"; 207 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück", "ax_flurstueck");} 208 echo "</td>"; 209 echo "\n\t<td class='fla'>".$flae."</td>"; 210 echo "\n\t<td class='hsnr'>".$rowf["hausnummer"]."</td>"; 211 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 212 193 213 if ($lgml != '') { 194 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=".$ltyp."&gmlid=".$lgml; 195 if ($showkey) {echo "&showkey=j";} 214 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$lgml; 215 if ($idanzeige) {echo "&id=j";} 216 if ($showkey) {echo "&showkey=j";} 196 217 echo "' title='Lage Mit Hausnummer'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 197 218 $cnths++; 198 219 } 199 220 200 // Link FlurstÃŒcksnachweis201 221 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 202 if ($showkey) {echo "&showkey=j";} 222 if ($idanzeige) {echo "&id=j";} 223 if ($showkey) {echo "&showkey=j";} 203 224 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 204 echo "\n\t\t</p>\n\t</td>" 205 ."\n</tr>"; 225 226 echo "\n\t\t</p>\n\t</td>"; 227 echo "\n</tr>"; 206 228 $j++; 207 229 } … … 209 231 if ($j > 6) { 210 232 echo "<p class='cnt'>".$j." Flurstücke"; 211 if ($cnths > 4) {echo ", ".$cnths." Häuser";} 233 if ($cnths > 4) { 234 echo ", ".$cnths." Häuser"; 235 } 212 236 echo "</p>"; 213 237 } … … 215 239 ?> 216 240 217 <div class='buttonbereich noprint'> 218 <hr> 219 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 220 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 221 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a> 222 </div> 241 <form action=''> 242 <div class='buttonbereich noprint'> 243 <hr> 244 <a title="zurück" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zurück"></a> 245 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 246 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a> 247 </div> 248 </form> 223 249 224 250 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Note: See TracChangeset
for help on using the changeset viewer.