Changeset 376 for trunk/info/info
- Timestamp:
- 12/01/16 12:43:03 (7 years ago)
- Location:
- trunk/info/info/alkis
- Files:
-
- 2 added
- 50 deleted
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/info/info/alkis/alkis_conf_location.php
r123 r376 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 ÃŒnden nicht unterhalb des Web-Root-Verzeichnisses liegen.4 Die Conf-Datei sollte aus Sicherheitsgruenden nicht unterhalb des Web-Root-Verzeichnisses liegen. 5 5 6 6 Version: 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 7 2016-02-23 Version fuer norGIS-ALKIS-Import, keine PostNAS-Versionsnummer im DB-Namen 10 8 */ 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 9 require_once("/opt/gdi/conf/alkisn_conf.php"); // Nicht unter Web-Root speichern 19 10 ?> -
trunk/info/info/alkis/alkisausk.php
r372 r376 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 Ueberblick zum Flurstueck. 8 Eigentuemer ohne Adresse. 9 Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 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. 10 9 Siehe auch alkisinlayausk.php - eine Variante fÃŒr den Einbau in einen iFrame 11 10 12 11 Version: 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 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. 20 17 */ 21 18 session_start(); … … 24 21 if ($auth == "mapbender") {require_once($mapbender);} 25 22 include("alkisfkt.php"); 26 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}27 23 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 28 24 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 29 25 echo <<<END 30 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">31 <html >26 <!doctype html> 27 <html lang="de"> 32 28 <head> 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"> 29 <meta charset="utf-8"> 38 30 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 39 31 <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico"> … … 45 37 <body> 46 38 END; 47 $con = pg_connect( "host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);39 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisausk.php'"); 48 40 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 49 41 50 42 // *** F L U R S T U E C K *** 51 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 43 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.regierungsbezirk, f.kreis, f.gemeinde 52 44 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 53 45 WHERE f.gml_id= $1 AND f.endet IS NULL;"; … … 70 62 $flae=$row["amtlicheflaeche"]; 71 63 $flae=number_format($flae,0,",",".") . " m²"; 64 $fsreg=$row["regierungsbezirk"]; // Filter ZustÀndigkeit 65 $fskrs=$row["kreis"]; 66 $fsgem=$row["gemeinde"]; 72 67 } else { 73 68 echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>"; … … 77 72 echo "\n<p class='fsausk'>ALKIS-Auskunft Flurstück-Übersicht ".$gmkgnr."-".$flurnummer."-".$flstnummer."</p>"; 78 73 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 nicht 78 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 79 88 echo "\n<table class='outer'>\n<tr><td>"; 80 89 // linke Seite 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>";90 echo "\n<h1>ALKIS-Auskunft</h1>" 91 ."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>"; 83 92 echo "</td><td align='right'>"; 84 93 // rechte Seite 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>"; 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>"; 102 108 103 109 // Flurstuecksnachweis (o. Eigent.) 104 110 echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 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>"; 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>"; 110 115 111 116 // FS- u. Eigent.-NW 112 117 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j"; 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>"; 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>"; 118 122 119 123 // FS-Historie 120 124 echo "\n\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 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>"; 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>"; 126 129 127 130 // Gebaeude-NW 128 131 echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 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>"; 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>"; 136 137 137 138 // Lagebezeichnung MIT Hausnummer (Adresse) … … 151 152 while($row = pg_fetch_array($res)) { 152 153 $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name 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>"; 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>"; 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, 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 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 176 177 JOIN ax_buchungsblatt b ON s.istbestandteilvon=b.gml_id 177 178 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 178 LEFT JOIN v_bs_buchungsart a ON s.buchungsart = a.wert 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' 179 181 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND b.endet IS NULL 180 182 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;"; … … 191 193 while($rowg = pg_fetch_array($resg)) { 192 194 $beznam=$rowg["bezeichnung"]; 193 echo "\n<hr>\n<table class='outer'>"; 194 echo "\n<tr>"; 195 echo "\n<td>"; 196 195 echo "\n<table class='outer'>\n<tr>\n<td>"; 197 196 $blattkey=$rowg["blattart"]; 198 $blattart= blattart($blattkey);197 $blattart=$rowg["blattartv"]; 199 198 if ($blattkey == 1000) { 200 199 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 202 201 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 203 202 } 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>"; 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>"; 226 221 227 222 if ($rowg["zaehler"] <> "") { 228 223 echo "\n<p class='ant'>".$rowg["zaehler"]."/".$rowg["nenner"]." Anteil am Flurstück</p>"; 229 224 } 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>"; 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>"; 244 233 245 234 // E I G E N T U E M E R 246 if ($blattkey == 5000) { // Schl uessel Blattart247 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. Blatt250 echo "\n<h r>\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";235 if ($blattkey == 5000) { // SchlÃŒssel Blatt-Art 236 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 { // kein Eigent. bei fiktiv. Blatt 239 echo "\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 251 240 252 241 // Ausgabe Name in Function 253 $n = eigentuemer($con, $rowg["gml_id"], false ); // ohne Adr.242 $n = eigentuemer($con, $rowg["gml_id"], false, "imFenster"); // ohne Adressen 254 243 255 244 if ($n == 0) { // keine NamNum, kein Eigent. 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", ""); 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>"; 259 247 } 260 248 } 261 249 $j++; 262 250 } 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 } 251 if ($j == 0) {echo "\n<p class='err'>Keine Buchungen gefunden.</p>";} 268 252 echo "\n<hr>"; 269 253 -
trunk/info/info/alkis/alkisauszug.css
r350 r376 1 1 /* Modul: alkisauszug.css 2 S t y l e s zur ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).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-Struktur 16 2016-12-01 Stop-Meldung bei BerechtigungsprÃŒfung, Sortierspalten 15 17 */ 16 18 body {background-color: #FDFFFD;} … … 22 24 p.fsausk {background-color: teal; color: silver;} /* Uebersichts-Seite Flurstuecks-Auskunft */ 23 25 p.fskennz,p.fsei{background-color: navy; color: silver;} /* Flurstuecks-Nachweis */ 24 /* p.fsei {background-color: olive; color: silver;}*/ /* Flurstuecks- und Eigentuemer-Nachweis */25 26 p.fshis {background-color: gray; color: white;} /* Flurstuecks-Historie */ 26 27 p.gbkennz {background-color: green; color: silver;} /* Bestandsnachweis */ … … 32 33 33 34 /* Format nach Inhalt */ 34 p.bezieh {text-align: right; background: olive; color: silver;}/* Beziehungen */35 /* p.bezieh {text-align: right; background: olive; color: silver;} */ /* Beziehungen */ 35 36 p.fsd {margin-left: 170px;} /* Flst-Flaeche */ 36 37 p.gbl {position: relative; left: 60px;} /* Nam: Buchungsstelle*/ … … 89 90 td.lr {color: black;} /* Liste Rechts */ 90 91 td.ph {color: gray;} /* Platzhalter, vorlaeufig, spaeter loschen */ 92 td.erkl {color: silver; font-size: 8pt;} /* ErklÀrungen, nur klein (Haus) */ 91 93 92 94 td.fla {width: 110px; padding-right: 4px; text-align: right;} /* Flaechen rechtsbuendig (stellengerecht) */ … … 99 101 td.sond, p.sond {font-size: 9pt; font-style: italic; background-color: white; 100 102 border: 1px dotted silver; padding: 6px;} /* Sondereigentumsbeschreibung */ 103 td.nrap, p.nrap {font-size: 9pt; font-style: italic; background-color: white;} /* Nummer im Aufteilungsplan */ 104 td.fett {font-weight: bold;} 105 td.nwlink {width: 80px;} /* Link zum Nachweis */ 101 106 102 td.nrap, p.nrap {font-size: 9pt; font-style: italic; background-color: white;} /* Nummer im Aufteilungsplan */ 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) */ 103 111 104 td.fett {font-weight: bold;}105 td.head {border-bottom: 1px solid gray; font-style: italic; padding-top: 2px;} /* Kopfzeile, Spaltenueberschrift */106 112 td.sum {border-top: 2px dotted maroon; border-bottom:3px solid maroon; 107 113 border-left:0px dotted maroon; border-right:0px dotted maroon; font-weight: bold;} /* unter dem Strich = Summenzeile */ … … 110 116 td.nam {font-weight: bold;} 111 117 td.gbl {border-bottom: 1px dotted green;} /* Name: GB-Liste */ 112 /* Inlay analog Template: linke Tabellenspalte - Feldname */118 /* Inlay analog WMS-Feature-Info Template: linke Tabellenspalte - Feldname */ 113 119 td.li, td.gr {color:gray; padding-left: 8px; padding-right:8px; border-bottom: 0px; vertical-align:top;} 114 120 /* dienendes GB in FS-Tab im Best-NW */ 115 121 td.dien {font-size: 9pt; font-style: italic; color: purple; border-bottom: 1px solid silver;} 116 122 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*/ 117 128 118 129 /* Ueberschriften */ … … 123 134 h4 { color: black; font-size: 11pt;} 124 135 h5 { color: black; font-size: 10pt;} 125 h6 { color: black; font-size: 9pt; margin-top: 2pt; margin: 0pt } /* FS in Best-NW */136 h6 { color: black; font-size: 9pt; margin-top: 2pt; margin: 0pt;} /* FS in Best-NW */ 126 137 127 138 img {border: 0px; margin: 0px;} /* Icons */ 128 139 129 140 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;} 130 146 131 147 /* Seitenfuss */ -
trunk/info/info/alkis/alkisbaurecht.php
r355 r376 4 4 5 5 Version: 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 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 11 8 */ 12 9 session_start(); … … 15 12 if ($auth == "mapbender") {require_once($mapbender);} 16 13 include("alkisfkt.php"); // f. Footer 17 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}18 14 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 19 15 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 20 21 ?> 22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 23 <html> 16 echo <<<END 17 <!doctype html> 18 <html lang="de"> 24 19 <head> 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"> 20 <meta charset="utf-8"> 30 21 <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title> 31 22 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 33 24 </head> 34 25 <body> 26 END; 35 27 36 <?php 37 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);28 29 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbaurecht.php'"); 38 30 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 39 31 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 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 42 35 FROM ax_bauraumoderbodenordnungsrecht r 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;"; 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;"; 45 40 46 41 $v = array($gmlid); 47 42 $res = pg_prepare("", $sql); 48 43 $res = pg_execute("", $v); 49 50 44 if (!$res) { 51 45 echo "\n<p class='err'>Fehler bei Baurecht.</p>\n"; 52 if ($debug > 2) {echo " <p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}46 if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";} 53 47 } 54 55 48 if ($row = pg_fetch_array($res)) { 56 49 $artfest=$row["adfkey"]; // Art der Festlegung, Key 57 50 $verfnr=$row["rechtbez"]; // Verfahrens-Nummer 58 51 $enam=$row["name"]; 59 $stellk=$row["stelle"]; // LEFT JOIN !60 52 $stellb=$row["stellbez"]; 61 53 $stella=$row["stellenart"]; … … 66 58 echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>\n"; 67 59 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 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>"; 78 66 if ($enam != "") { 79 echo "\n<tr>"; 80 echo "\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>"; 81 echo "\n</tr>"; 67 echo "\n<tr>" 68 ."\n\t<td class='li'>Eigenname des Gebietes:</td>" 69 ."\n\t<td>".$enam."</td>" 70 . "\n</tr>"; 82 71 } 83 84 72 if ($verfnr != "") { 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>"; 73 echo "\n<tr>" 74 ."\n\t<td class='li'>Verfahrensnummer:</td>" 75 ."\n\t<td>".$verfnr."</td>" 76 ."\n</tr>"; 90 77 } 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>"; 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>"; 99 85 if ($stella != "") { 100 echo "\n<tr>" ;101 echo "\n\t<td class='li'>Art der Dienststelle:</td>";102 echo"\n\t<td>";86 echo "\n<tr>" 87 ."\n\t<td class='li'>Art der Dienststelle:</td>" 88 ."\n\t<td>"; 103 89 if ($showkey) {echo " <span class='key'>(".$stella.")</span>";} 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>"; 90 echo "<span title='".$row["d"]."'>".$row["v"]."</span>"; 91 echo "</td>" 92 ."\n</tr>"; 109 93 } 110 94 } 111 112 echo "\n<tr>"; 113 echo "\n\t<td class='li'>Fläche:</td>"; 95 echo "\n<tr>" 96 ."\n\t<td class='li'>Fläche:</td>"; 114 97 $flae=number_format($row["flae"],0,",",".")." m²"; 115 echo "\n\t<td>".$flae."</td>"; 116 echo "\n</tr>"; 117 118 echo "\n</table>"; 98 echo "\n\t<td>".$flae."</td>" 99 ."\n</tr>" 100 . "\n</table>"; 119 101 } else { 120 102 echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>"; 121 103 } 122 104 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>";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>"; 125 107 126 108 $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 127 109 FROM ax_flurstueck f, ax_bauraumoderbodenordnungsrecht r 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 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 130 118 AND st_area(st_intersection(r.wkb_geometry,f.wkb_geometry)) > 0.05 131 ORDER BY schnittflae DESC LIMIT 40;";119 ORDER BY schnittflae DESC LIMIT 50;"; 132 120 // > 0.0 ist gemeint, Ungenauigkeit durch st_simplify 133 121 // Limit: Flurbereinig. kann gross werden! 134 122 // Trotz Limit lange Antwortzeit, wegen OrderBy -> intersection 135 $v = array($gmlid);136 $res = pg_prepare("", $sql);137 $res = pg_execute("", $v);138 123 124 $res=pg_prepare("", $sql); 125 $res=pg_execute("", $v); 139 126 if (!$res) { 140 127 echo "\n<p class='err'>Keine Flurstücke ermittelt.<br>\nSQL=<br></p>\n"; 141 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}128 // if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";} 142 129 } 143 130 144 echo "\n<table class='fs'>" ;145 echo "\n<tr>"; // Header146 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>";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>"; 151 138 152 139 $fscnt=0; 153 140 while($row = pg_fetch_array($res)) { 154 141 $fscnt++; 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>"; 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>"; 171 156 } 172 157 echo "\n</table>"; 173 158 174 if ($fscnt == 40) { 175 echo "<p>... und weitere Flurstücke (Limit 40 erreicht).</p>"; 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>"; 176 168 } 177 169 … … 179 171 echo <<<END 180 172 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> 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> 188 178 END; 189 179 -
trunk/info/info/alkis/alkisbestnw.php
r372 r376 6 6 7 7 Version: 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 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen, Markierung der Sortierung 18 10 */ 19 11 session_start(); … … 23 15 if ($auth == "mapbender") {require_once($mapbender);} 24 16 include("alkisfkt.php"); 25 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}26 17 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 27 18 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 28 29 19 ?> 30 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">31 <html >20 <!doctype html> 21 <html lang="de"> 32 22 <head> 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"> 23 <meta charset="utf-8"> 38 24 <title>ALKIS Bestandsnachweis</title> 39 25 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 50 36 <body> 51 37 <?php 52 $con = pg_connect( "host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);38 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbestnw.php'"); 53 39 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 54 40 55 41 // G R U N D B U C H 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;"; 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 61 51 62 52 $v = array($gmlid); 63 53 $res = pg_prepare("", $sql); 64 54 $res = pg_execute("", $v); 65 66 55 if (!$res) { 67 56 echo "<p class='err'>Fehler bei Grundbuchdaten.</p>"; … … 70 59 if ($row = pg_fetch_array($res)) { 71 60 $blattkey=$row["blattart"]; 72 $blattart=blattart($blattkey); 61 $blattart=$row["blattartv"]; 62 73 63 echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]." </p>\n"; // Balken 74 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 Rahmen64 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 Rahmen 76 66 if ($blattkey == 1000) { 77 67 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 79 69 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 80 70 } 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>"; 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>"; 103 91 } 104 92 … … 107 95 } else { 108 96 // E I G E N T U E M E R 109 echo "\n <h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";97 echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>"; 110 98 $n = eigentuemer($con, $gmlid, true, ""); // MIT Adressen. 111 99 if ($n == 0) { // keine NamensNr, kein Eigentuemer 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", ""); 100 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>" 101 ."\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>"; 115 102 } 116 103 } … … 133 120 } 134 121 if ($anz > 0) { 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 Kopfzeile138 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>";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>"; 147 134 } else { 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>"; 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>"; 162 148 163 149 // Blatt -> B u c h u n g s s t e l l e 164 150 // aktuelles ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle 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 bart166 FROM ax_buchungsstelle s LEFT JOIN v_bs_buchungsart b ON s.buchungsart=b.wert151 $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.d 152 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' 167 153 WHERE s.istbestandteilvon= $1 AND s.endet IS NULL ORDER BY cast(s.laufendenummer AS integer);"; 168 154 … … 181 167 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 182 168 $gml_bs= $row["gml_id"]; // id der buchungsstelle 183 $ba=$row["bart"]; // Buchungsart aus Schluesseltabelle 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 184 172 185 173 if ($row["zaehler"] == "") { … … 189 177 } 190 178 // F l u r s t u e c k s d a t e n zur direkten Buchungsstelle 191 $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $ba , $anteil, true); // return=Anzahl der FS179 $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $bart, $anteil, true, $bartkey, $bartstory); // return=Anzahl der FS 192 180 $fscnt=$fscnt + $j; 193 181 if ($j == 0) { // k e i n e Flurstuecke gefunden (Miteigentumsnteil usw.) … … 200 188 // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) 201 189 // sh=herrschend sd=dienend 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 bart203 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.wert205 WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL ORDER BY sd.laufendenummer;";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;"; 206 194 207 195 $v=array($gml_bs); … … 210 198 if (!$resan) { 211 199 echo "<p class='err'>Fehler bei 'andere Buchungsstelle'.</p>\n"; 212 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}200 //if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 213 201 } 214 202 $a=0; // count 215 203 $altbvnr=""; // Gruppenwechsel 216 while($rowan 217 $lfdnran =$rowan["lfd"]; // BVNR an218 $gml_bsan= 219 $baan= 204 while($rowan= pg_fetch_array($resan)) { 205 $lfdnran=$rowan["lfd"]; // BVNR an 206 $gml_bsan=$rowan["gml_id"]; // id der buchungsstelle an 207 $baan=$rowan["bart"]; // Buchungsart an, entschluesselt 220 208 221 209 // a n d e r e s B l a t t (an dem das aktuelle Blatt Rechte hat) 222 210 // dienendes Grundbuch 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;"; 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;"; 227 216 $v=array($gml_bsan); 228 217 $fbres=pg_prepare("", $sql); … … 234 223 $b=0; 235 224 while($fbrow = pg_fetch_array($fbres)) { // genau 1 236 $fbgml =$fbrow["gml_id"];237 $fbland =$fbrow["land"];238 $fbbez =$fbrow["bezirk"];239 $ fbblatt = $fbrow["blatt"];240 $fbb art = blattart($fbrow["blattart"]);241 $ beznam = $fbrow["beznam"];225 $fbgml=$fbrow["gml_id"]; 226 $fbland=$fbrow["land"]; 227 $fbbez=$fbrow["bezirk"]; 228 $beznam=$fbrow["beznam"]; 229 $fbblatt=$fbrow["blatt"]; // Key 230 $fbbart=$fbrow["blattartv"]; // Value 242 231 $b++; 243 232 } 244 if ($b != 1) { 233 if ($b != 1) { // Ãberwachen: genau 1? 245 234 echo "<p class='err'>Anzahl fiktive Blätter zu anderer Buchungstelle = ".$b."</p>"; 246 235 } 247 236 248 237 // G r u n d b u c h d a t e n zur a n d e r e n Buchungsstelle 249 echo "\n<tr>" ;250 echo"\n\t<td>";238 echo "\n<tr>" 239 ."\n\t<td>"; // Sp.1 Erbbau BVNR 251 240 if($bvnr == $altbvnr) { // gleiches Grundstueck 252 echo " "; // Anzeige unterdruecken241 echo " "; // dann Anzeige unterdruecken 253 242 } else { 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");} 243 echo "<a id='bvnr".$lfdnr."'></a>" // Sprungmarke 244 ."<span class='wichtig'>".$bvnr."</span>"; 257 245 $altbvnr = $bvnr; // Gruppenwechsel merken 258 246 } 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>"; 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>"; 302 273 303 274 // 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 304 275 // Buchungsart wird nur in erster Zeile ausgegeben, hier leer 305 $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false ); // return=Anz.FS276 $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false, "", ""); // return=Anz.FS 306 277 $fscnt=$fscnt + $aj; 307 278 // +++ Gibt es Sondereigentum beim fiktiven Blatt? 308 279 if ($rowan["nrap"] != "") { 309 echo "\n<tr>" ;310 echo "\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>";311 echo"\n</tr>";280 echo "\n<tr>" 281 ."\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>" 282 ."\n</tr>"; 312 283 } 313 284 if ($rowan["sond"] != "") { 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>";285 echo "\n<tr>" 286 ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>" 287 ."\n</tr>"; 317 288 } 318 289 $a++; 319 290 } 320 291 if ($a == 0) { 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>"; 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>"; 331 298 } 332 299 } 333 300 $i++; 334 301 if ($row["nrap"] != "") { // Nr im Auft.Plan 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>";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>"; 338 305 } 339 306 if ($row["sond"] != "") { // Sondereigentumsbeschreibung 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>";307 echo "\n<tr>" 308 ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>" 309 ."\n</tr>"; 343 310 } // Ende Buchungsstelle/BVNR 344 311 } // Ende Loop … … 347 314 if ($i == 0) { 348 315 echo "\n<p class='err'>Keine Buchung gefunden.</p>\n"; 349 linkgml($gkz, $gmlid, "Buchungsblatt", "");350 316 } else { 351 317 if ($i > 5 and $fscnt > 5) { // nur wenn nicht auf einen Blick zu erkennen … … 359 325 // Blatt <istBestandteilVon< Stelle <an< Stelle >istBestandteilVon> Blatt 360 326 // Fiktiv Fiktiv <zu< Berechtigt Berechtigt 361 $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.stellenart327 $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 stellev 363 329 FROM ax_buchungsstelle sf JOIN ax_buchungsstelle sb ON (sf.gml_id=ANY(sb.an) OR sf.gml_id=ANY(sb.zu)) 364 330 JOIN ax_buchungsblatt bb ON bb.gml_id=sb.istbestandteilvon 365 331 LEFT JOIN ax_buchungsblattbezirk bz ON bb.land=bz.land AND bb.bezirk=bz.bezirk 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 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' 368 336 WHERE sf.istbestandteilvon = $1 AND sf.endet IS NULL AND sb.endet IS NULL AND bb.endet IS NULL 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 337 ORDER BY cast(sf.laufendenummer AS integer), bz.bezeichnung, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);"; 371 338 372 339 $v = array($gmlid); … … 380 347 while($rowb = pg_fetch_array($resb)) { 381 348 if ($b == 0) { // Ueberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde 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 Kopf385 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 oben386 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>";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>"; 394 361 } 395 362 … … 399 366 $gml_s=$rowb["gml_s"]; // id der ber. B-Stelle 400 367 $blart=$rowb["blattart"]; 368 401 369 $buch=$rowb["buchungsart"]; // Buchungsart Stelle berechtigt 402 370 $bart=$rowb["bart"]; // BA entschl. … … 404 372 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 405 373 406 echo "\n<tr>"; 407 // Teil berechtigte GrundbÃŒcher ist sortiert wie oberer Teil "FlurstÃŒcke" 374 echo "\n<tr>"; // Der Teil "berechtigte GrundbÃŒcher" ist sortiert wie oberer Teil "FlurstÃŒcke" 408 375 echo "\n\t<td><span class='wichtig'>".$anlfdnr0."</span>"; 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>"; 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>"; 456 403 $b++; 457 404 } … … 468 415 ?> 469 416 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 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> 479 423 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> 480 481 424 </body> 482 425 </html> -
trunk/info/info/alkis/alkisexport.php
r355 r376 6 6 Der View verkettet Flurstueck - Buchungsstelle - Grundbuch - Eigentuemer 7 7 Die Lagebezeichnung des FlurstÃŒcks wird in ein Feld komprimiert. 8 Parameter: gkz=mandant&gmlid=DE...&tabtyp=flurstueck/grundbuch/person 9 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 '' 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 17 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 19 24 */ 20 25 … … 31 36 $res=pg_prepare("", $sql); 32 37 $res=pg_execute("", $v); 33 if (!$res) { 34 return "** Fehler bei Lagebezeichnung **"; //.$sql; 35 } 38 if (!$res) {return "** Fehler bei Lagebezeichnung **";} 36 39 $j=0; 37 40 $lagehsnr=""; … … 54 57 // HIER START // 55 58 56 $cntget = extract($_GET); // Parameter aus URL lesen 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) 57 89 header('Content-type: application/octet-stream'); 58 header('Content-Disposition: attachment; filename="alkis_'.$tabtyp.'_'.$gmlid.'.csv"'); 59 require_once("alkis_conf_location.php"); 60 include("alkisfkt.php"); 90 header('Content-Disposition: attachment; filename="'.$filename.'"'); 61 91 62 92 // CSV-Ausgabe: Kopfzeile mit Feldnamen … … 64 94 65 95 // Datenbank-Verbindung 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 } 96 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisexport.php'"); 97 if (!$con) {exit("Fehler beim Verbinden der DB");} 70 98 pg_set_client_encoding($con, 'LATIN1'); // FÃŒr Excel kein UTF8 ausgeben 99 100 $viewname="exp_csv"; // Standard-View, ist in der Datenbank gespeichert 101 $v=array($gmlid); // Standard-Filter-Feld 71 102 72 103 // Der Parameter "Tabellentyp" bestimmt den Namen des Filter-Feldes aus dem View "exp_csv". 73 104 switch ($tabtyp) { // zulaessige Werte fuer &tabtyp= 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; 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; 79 125 } 80 126 81 127 // Daten aus gespeichertem View, zusaetzlich Filter: "feld"='wert' mitgeben 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 } 87 88 $v=array($gmlid); 128 $sql="SELECT * FROM ".$viewname." WHERE ".$filter." = $1 "; 129 89 130 $res=pg_prepare("", $sql); 90 131 $res=pg_execute("", $v); … … 106 147 $flstnummer=$row["zaehler"]; 107 148 $nenner=$row["nenner"]; 108 if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 149 // Bruchnummer kann in Excel als Datum interpretiert werden. In '' setzen. 150 if ($nenner > 0) {$flstnummer="'".$flstnummer."/".$nenner."'";} // BruchNr 109 151 $fs_flae=$row["fs_flae"]; // amtliche Fl. aus DB-Feld 110 152 … … 140 182 $rechtsg=$row["nam_bes"]; // Beschrieb der Rechtsgemeinschaft 141 183 } else { 142 $rechtsg=rechtsgemeinschaft($nam_adr); // EntschlÃŒsseln 184 // $rechtsg=rechtsgemeinschaft($nam_adr); // EntschlÃŒsseln 185 $rechtsg=$row["nam_adrv"]; // Art der Rechtsgemeischaft (Value zum Key) 143 186 } 144 187 } … … 148 191 $nana=$row["nachnameoderfirma"]; 149 192 $namteil=$row["namensbestandteil"]; 150 $name=anrede($row["anrede"]); 193 //$name=anrede($row["anrede"]); 194 $name=$row["anrv"]; // Anrede (Value zum Key) 151 195 if ($name != "") {$name.=" ";} // Trenner 152 196 if ($namteil != "") {$name.=$namteil." ";} // von und zu -
trunk/info/info/alkis/alkisfkt.php
r372 r376 1 1 <?php 2 2 /* Modul: alkisfkt.php 3 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 5 Functions 5 6 6 7 Version: 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 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) 18 12 */ 19 13 20 14 function footer($gmlid, $link, $append) { 21 15 // Einen Seitenfuss ausgeben. 22 // Den URL-Parameter "&id=j/n" und "&showkey=j/n" in allen Kombinationen umschalten lassen.23 16 // Die Parameter &gkz= und &gmlid= kommen in allen Modulen einheitlich vor 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>"; 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>"; 32 23 33 24 // Spalte 1: Info Benutzerkennung 34 echo "\n\t<td title='Info'><i>Benutzer: ".$customer."</i></td>"; 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 } 35 31 36 32 // Spalte 2: Umschalter 37 33 echo "\n\t<td title='Konfiguration'>"; 38 34 $mylink ="\n\t\t<a class='gmlid' href='".$link."gkz=".$gkz."&gmlid=".$gmlid.$append; 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>"; 35 36 if ($showkey) { // Umschalten SchlÃŒssel ein/aus 37 echo $mylink."&showkey=n' title='Verschlüsselungen ausblenden'>Schlüssel aus</a>"; 58 38 } else { 59 echo $mylink. $myid."&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein</a>";39 echo $mylink."&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein</a>"; 60 40 } 61 41 echo "\n\t</td>"; 62 42 63 43 // Spalte 3 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";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"; 67 47 return 0; 68 48 } 69 49 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; 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); 79 84 } 80 85 … … 85 90 $kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang 86 91 $kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe 92 $kurz=rtrim($kurz); // Leerzeichen hinten 93 // echo "/n<p class='dbg'> lang='".$lang."'</p>/n<p class='dbg'> kurz='".$kurz."'</p>"; 87 94 return $kurz; 88 95 } 89 96 90 function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus ) {97 function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus, $bartkey, $bartstory) { 91 98 /* Bestandsnachweis - Flurstuecksdaten 92 99 Die Tabellenzeilen mit den Flurstuecksdaten zu einer Buchungsstelle im Bestandsnachweis ausgeben. 93 100 Die Funktion wird je einmal aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall). 94 101 Weiterere Aufrufe ggf. bei Erbbaurecht fÃŒr die mit "an" verknuepften Buchungsstellen. 95 Table-Tag und Kopfzeile im aufrufenden Programm. */96 global $debug, $gkz, $ idanzeige, $showkey;102 Table-Tag und Tabellenkopf werden im aufrufenden Programm ausgegeben. */ 103 global $debug, $gkz, $showkey, $filtkreis, $filtgem; 97 104 98 105 // F L U R S T U E C K … … 100 107 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 101 108 LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 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); 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;"; 105 117 $resf = pg_prepare("", $sql); 106 118 $resf = pg_execute("", $v); … … 109 121 if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben 110 122 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 123 } else { 124 $bvnr=""; 111 125 } 112 126 $altlfdnr=""; … … 123 137 echo "\n<tr>"; // eine Zeile je Flurstueck 124 138 // Sp. 1-3 der Tab. aus Buchungsstelle, nicht aus FS 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 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 138 150 echo $ba; // entschluesselt 139 echo "</td>" ;140 echo"\n\t<td> </td>"; // Anteil151 echo "</td>" 152 ."\n\t<td> </td>"; // Anteil 141 153 $altlfdnr=$lfdnr; 142 154 } 143 155 //Sp. 4-7 aus Flurstueck 144 156 echo "\n\t<td>"; 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";} 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"; 158 166 if ($showkey) {echo "&showkey=j";} 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>";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>"; 164 172 165 173 $j++; … … 170 178 if ($debug > 2) {echo "<p class='dbg'>SQL='".$sql."'<br>$1 = '".$gml_bs."'</p>";} 171 179 } */ 172 173 180 pg_free_result($resf); 174 181 return $j; … … 185 192 // Schleife 1: N a m e n s n u m m e r 186 193 // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt 187 global $debug, $gkz, $ idanzeige, $showkey;194 global $debug, $gkz, $showkey; 188 195 189 196 // Link ÃŒber Java-Class? (Ja in alkisinlayausk.php, sonst normal) … … 196 203 } // Beispiel-Link href='javascript:imFenster(\"alkislage.php?gkz= ... ."\")'>xxx "; 197 204 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;"; 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;"; 200 210 201 211 $v = array($gmlid); // 16 Stellen bei Relationen … … 204 214 205 215 if (!$resn) { 206 echo " <p class='err'>Fehler bei Eigentümer</p>\n";216 echo "\n<p class='err'>Fehler bei Eigentümer</p>\n"; 207 217 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";} 208 218 } 209 219 210 echo "\n \n<table class='eig'>";220 echo "\n<table class='eig'>"; 211 221 $n=0; // Z.NamNum. 212 222 213 223 while($rown = pg_fetch_array($resn)) { 214 224 $gmlnn=$rown["gml_id"]; 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"]; 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 225 232 if ($rechtsg != "" ) { 226 233 if ($rechtsg == 9999) { // sonstiges 227 234 echo "\n\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; 228 235 } else { 229 echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities( rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>";236 echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities($rown["adrv"], ENT_QUOTES, "UTF-8")."</p>"; 230 237 } 231 238 } … … 240 247 // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 241 248 242 243 249 // Schleife 2: P e r s o n 244 250 // Beziehung: ax_person <benennt< ax_namensnummer 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); 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 249 261 $resp = pg_prepare("", $sqlp); 250 262 $resp = pg_execute("", $v); 251 252 263 if (!$resp) { 253 264 echo "\n\t<p class='err'>Fehler bei Person</p>\n"; 254 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gml nn."'</p>";}265 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gmlpers."'</p>";} 255 266 } 256 267 257 268 $i=0; // cnt Person 258 while($rowp = pg_fetch_array($resp)) { // ++ Schleife? nn >benennt> Person ist keinArray!259 $diePerson=""; 269 while($rowp = pg_fetch_array($resp)) { // Schleife weglassen? nn >benennt> Person ist KEIN Array! 270 $diePerson=""; //++ Anrede? 260 271 if ($rowp["akademischergrad"] <> "") {$diePerson=$rowp["akademischergrad"]." ";} 261 272 $diePerson.=$rowp["nachnameoderfirma"]; … … 266 277 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute 267 278 268 // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0 269 if ($i > 0) { 279 if ($i > 0) { // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0 270 280 echo "\n<tr>\n\t<td> </td>\n\t<td>"; 271 281 } 272 282 // Spalte 2 = Angaben 273 $eiartkey=$rown["eigentuemerart"]; 274 $eiart= eigentuemerart($eiartkey);283 $eiartkey=$rown["eigentuemerart"]; // Key 284 $eiart=$rown["eiartv"]; // Value 275 285 echo "\n\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t</td>"; 276 286 277 287 // Spalte 3 = Link 278 288 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 279 if ($idanzeige) {linkgml($gkz, $rowp["gml_id"], "Person", "ax_person"); echo " ";}280 289 if ($showkey AND $eiartkey != '') { // oft leer 281 290 echo "<span class='key'>(".$eiartkey.")</span> "; 282 291 } 283 echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp["gml_id"]; 284 if ($idanzeige) {echo "&id=j";} 292 echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp[0]; 285 293 if ($showkey) {echo "&showkey=j";} 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>";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>"; 289 297 290 298 if ($mitadresse) { 291 299 // Schleife 3: A d r e s s e (OPTIONAL) 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;";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;"; 294 302 $gmlp=$rowp["gml_id"]; // Person 295 303 $v = array($gmlp); … … 319 327 echo "\n<tr>\n\t<td> </td>"; //Sp. 1 320 328 echo "\n\t<td><p class='gadr'>"; //Sp. 2 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>"; 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>"; 340 334 } else { // manchmal dopplete Angaben (_straÃe / _str.) 341 335 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>"; … … 354 348 $nenner=str_replace(".", ",", $rown["nenner"]); 355 349 $comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundstück oder Recht)."; 356 echo "\n<tr>\n\t<td> </td>" ;// Sp. 1357 echo "\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>";358 echo"\n\t<td> </td>\n</tr>"; // Sp. 3350 echo "\n<tr>\n\t<td> </td>" // Sp. 1 351 ."\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>" 352 ."\n\t<td> </td>\n</tr>"; // Sp. 3 359 353 } 360 354 } // End Loop Person 361 if ($i == 0) { // kommt vor hinter Zeile Erbengemeinschaft, ist dann KEIN Fehler362 if ($ debug > 1) { // nur bei Entwicklung363 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>";}367 } 368 } 369 echo "</td>\n\t<td> </td>\n< tr>";355 if ($i == 0) { // Kine Parson. Kommt vor hinter Zeile "Erbengemeinschaft", ist dann KEIN Fehler 356 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 Entwicklung 360 echo "\n\t\t<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>"; 361 } 362 } 363 echo "</td>\n\t<td> </td>\n</tr>"; 370 364 } 371 365 $n++; // cnt NamNum 372 366 } // End Loop NamNum 373 echo "\n</table> \n";367 echo "\n</table>"; 374 368 if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler 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>";} 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 } 377 373 } 378 374 pg_free_result($resn); 379 375 return $n; 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 } 376 } // End function eigentuemer 377 485 378 ?> -
trunk/info/info/alkis/alkisfshist.php
r372 r376 5 5 Flurstuecks-Historie fuer ein Flurstueckskennzeichen aus ALKIS PostNAS 6 6 Version: 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 7 2016-02-24 Version fuer norGIS-ALKIS-Import 8 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen (Filter Gemeinde) 14 9 */ 15 10 … … 31 26 function vornach($dbarr) { 32 27 // Datenbank-Array-Feld zeilenweise ausgeben als Selbst-Link 33 global $gkz, $ idanzeige, $showkey;28 global $gkz, $showkey; 34 29 if ($dbarr == "") { 35 30 echo "(keine)"; 36 31 } else { 37 32 $stri=trim($dbarr, "{}"); 38 //$arr = split(",",$stri);39 33 $arr = explode(",",$stri); 40 34 foreach($arr AS $val){ 41 35 echo "Flurstück <a title=' zur Flurstück Historie' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&fskennz=".$val; 42 if ($idanzeige) {echo "&id=j";}43 36 if ($showkey) {echo "&showkey=j";} 44 37 echo "'>".fzerleg($val)."</a><br>"; … … 49 42 50 43 function gemkg_name($gkey) { 51 // Schluessel wird uebergeben, Name inDB nachschlagen44 // Schluessel wird ÃŒbergeben, Name dazu in der DB nachschlagen 52 45 global $con; 53 $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;";46 $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 AND g.endet IS NULL LIMIT 1;"; 54 47 $v=array($gkey); 55 48 $res=pg_prepare("", $sql); … … 72 65 // Akt. FS hat keine Verweise auf Vorgaenger. Darum in den Nachfolger-Verweisen von Hist.-FS suchen. 73 66 // Problem: Dies sind Arrays, die nicht performant durchsucht werden koennen. 74 global $gkz, $con, $debug ;67 global $gkz, $con, $debug, $showkey, $filtkreis, $filtgem; 75 68 76 69 $wherecl="WHERE $1 = ANY (nachfolgerflurstueckskennzeichen) "; … … 100 93 $vfsk=$rowv["flurstueckskennzeichen"]; 101 94 echo "Flurstück <a title='Historie des Vorgängerflurstücks' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&fskennz=".$vfsk."&gmlid=".$gmlv; 102 if ($idanzeige) {echo "&id=j";} 103 if ($showkey) {echo "&showkey=j";} 95 if ($showkey) {echo "&showkey=j";} 104 96 echo "'>".fzerleg($vfsk)."</a><br>"; 105 97 $zv++; … … 116 108 if ($auth == "mapbender") {require_once($mapbender);} 117 109 include("alkisfkt.php"); 118 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}119 110 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 120 111 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 121 112 ?> 122 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">123 <html >113 <!doctype html> 114 <html lang="de"> 124 115 <head> 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"> 116 <meta charset="utf-8"> 130 117 <title>ALKIS Flurstücks-Historie</title> 131 118 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 137 124 <body> 138 125 <?php 139 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);126 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisfshist.php'"); 140 127 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>";}142 128 143 129 // Such-Parameter bekommen? Welche? … … 147 133 $whereclause="WHERE gml_id= $1 "; 148 134 $v = array($gmlid); 149 } else { // Alternativ: Flurst.-Kennz. uebergeben 150 if ($fskennz != "") { 135 } elseif ($fskennz != "") { // Alternativ: Flurst.-Kennz. uebergeben 151 136 $parmtyp="Flurstückskennzeichen"; 152 137 $parmval=$fskennz; 153 138 $whereclause="WHERE flurstueckskennzeichen= $1 "; // hinten auffuellen mit _ auf 20 Stellen 154 139 $v = array($fskennz); 155 140 } else { // Pfui! 156 141 $parmtyp=""; 157 142 echo "<p class='err'>Parameter 'gmlid' oder 'fskennz' fehlt.</p>"; 158 }159 143 } 160 144 161 145 if ($parmtyp != "") { // einer der beiden erlaubten FÀlle 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;"; 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;"; 169 164 170 165 $resu = pg_prepare("", $sqlu); … … 188 183 if ($gmlid == "") {$gmlid=$rowu["gml_id"];} // fuer selbst-link-Umschalter ueber footer 189 184 } else { 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>";} 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 } 192 191 } 193 192 } … … 222 221 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite 223 222 // darin Tabelle Kennzeichen 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'>";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'>"; 227 226 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 228 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 Seite227 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 Seite 233 232 // FS-Daten 2 Spalten 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'>"; 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'>"; 241 239 foreach($arrn AS $val) { // Zeile f. jedes Element 242 240 echo trim($val, '"')."<br>"; 243 241 } 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>"; 242 echo "</td>" 243 ."\n\t</tr>" 244 ."\n\t</table>" 245 ."\n\t</td>\n</tr>\n</table>"; 249 246 250 247 if ($ftyp == "a") { // Aktuell -> Historie 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";} 248 echo "\n<p class='nwlink noprint'>weitere Auskunft: " 249 ."<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 254 250 if ($showkey) {echo "&showkey=j";} 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> 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> 263 258 <td class='head'>Flurstück</td> 264 259 <td class='head'>Vorgänger</td> … … 267 262 268 263 // Spalte 1: F l u r s t ÃŒ c k 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>";264 echo "\n<tr>\n\t<td>" 265 ."<img src='ico/".$ico."' width='16' height='16' alt=''> ".$wert 266 ."<br>Fläche <span class='flae'>".$flae."</span>" 267 ."</td>"; 273 268 274 269 // Spalte 2: V o r g À n g e r … … 294 289 echo "\n\t<td>"; 295 290 vornach($nach); 296 echo "</td>\n</tr>" ;297 echo"\n</table>";291 echo "</td>\n</tr>" 292 ."\n</table>"; 298 293 299 294 if ($debug > 1) { … … 307 302 ?> 308 303 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> 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> 316 309 317 310 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisfsnw.php
r355 r376 6 6 7 7 Version: 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 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-03-14 Korrekturen 10 2016-12-01 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 28 11 29 12 ToDo: 30 13 - BodenschÀtzung anzeigen 31 - EntschlÃŒsseln "Bahnkategorie" bei Bahnverkehr, "OberflÀchenmaterial" bei Unland 32 Dazu evtl. diese Felder ins Classfld verschieben (Meta-Tabellen!) 14 - Bessere Differenzierung bei den Nutzungsarten (Tabelle dafÃŒr aufbauen) 33 15 */ 34 16 session_start(); 35 17 $id="n"; 18 $eig="n"; 36 19 $cntget = extract($_GET); 37 20 require_once("alkis_conf_location.php"); 38 21 if ($auth == "mapbender") {require_once($mapbender);} 39 22 include("alkisfkt.php"); 40 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}41 23 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 42 24 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 43 25 ?> 44 45 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 46 <html> 26 <!doctype html> 27 <html lang="de"> 47 28 <head> 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"> 29 <meta charset="utf-8"> 53 30 <title>ALKIS Flurstücksnachweis</title> 54 31 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 64 41 </head> 65 42 <body> 66 67 43 <?php 68 69 function ber_bs_hinw($gmls) {70 // Unter einem Grundbuch-Link den Hinweis auf "berechtigte Buchungssstellen" anzeigen71 // 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.bezeichner77 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.wert79 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 BS82 $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 106 44 // S t a r t 107 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);45 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisfsnw.php'"); 108 46 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 109 47 … … 121 59 $zgemkg=substr($zgemkg, 2, 4); 122 60 } else { // kein schöner Land .. 123 $land= '05'; // NRW, ToDo:Default-Land aus config61 $land=$defland; // Default-Land aus config 124 62 } 125 63 $zflur=str_pad($arr[1], 3 , "0", STR_PAD_LEFT); // Flur-Nr … … 137 75 $fskzdb=$land.$zgemkg.$zflur.$zzaehler.$znenner.'__'; // FS-Kennz. Format Datenbank 138 76 } 139 // Feld flurstueckskennzeichenist in DB indiziert77 // Spalte "flurstueckskennzeichen" ist in DB indiziert 140 78 // Format z.B.'052647002001910013__' oder '05264700200012______' 141 79 $sql ="SELECT gml_id FROM ax_flurstueck WHERE flurstueckskennzeichen= $1 AND endet IS NULL ;"; … … 172 110 $gemeinde=$row["gemeinde"]; 173 111 $flurnummer=$row["flurnummer"]; 174 $ flstnummer=$row["zaehler"];112 $zaehler=$row["zaehler"]; 175 113 $nenner=$row["nenner"]; 114 $flstnummer=$zaehler; 176 115 if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 177 116 $fsbuchflae=$row["amtlicheflaeche"]; // amtliche Fl. aus DB-Feld … … 189 128 } 190 129 pg_free_result($res); 130 191 131 // Balken 192 132 if ($eig=="j") { 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";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"; 195 135 } else { 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'>"; 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'>"; 204 158 if ($showkey) { 205 159 echo "<span class='key'>".$gmkgnr."</span><br>"; 206 160 } 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'>"; 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'>"; 219 172 foreach($arrn AS $val) { // Zeile f. jedes Element des Array 220 173 echo trim($val, '"')."<br>"; 221 174 } 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>"; 175 echo "</td>" 176 ."\n\t</tr>" 177 ."\n\t</table>" 178 ."\n\t</td>\n</tr>\n</table>"; 228 179 // echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame . "</td>\n</tr>"; 229 180 // Ende Seitenkopf 230 181 231 echo "\n<hr>" ;232 echo "\n<p class='nwlink noprint'>weitere Auskunft:</p>";// oben rechts von der Tabelle233 echo"\n<table class='fs'>";182 echo "\n<hr>" 183 ."\n<p class='nwlink noprint'>weitere Auskunft:</p>" // oben rechts von der Tabelle 184 ."\n<table class='fs'>"; 234 185 235 186 // ** G e b i e t s z u g e h o e r i g k e i t ** … … 254 205 echo "<span class='key'>(".$gemeinde.")</span> "; 255 206 } 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>"; 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>"; 267 217 pg_free_result($res); 268 218 … … 335 285 echo "<td> </td>"; 336 286 } 337 echo "\n\t<td> </td>" ;338 echo"\n\t<td class='lr'>";287 echo "\n\t<td> </td>" 288 ."\n\t<td class='lr'>"; 339 289 if ($showkey) { 340 290 echo "<span class='key' title='StraÃenschlüssel'>(".$row["lage"].")</span> "; 341 291 } 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"]; 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"]; 347 295 if ($showkey) {echo "&showkey=j";} 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>"; 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>"; 352 299 $j++; 353 300 } 301 $cnt_adressen=$j; 354 302 pg_free_result($res); 355 303 } 356 // Verbesserung: mehrere HsNr zur gleichen StraÃe als Liste?304 // +++ Verbesserung: mehrere HsNr zur gleichen StraÃe als Liste? 357 305 358 306 // Lagebezeichnung OHNE Hausnummer (Gewanne oder nur Strasse) … … 378 326 $lgml=$row["gml_id"]; // key der Lage 379 327 if (!$gewann == "") { 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;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; 386 334 if ($showkey) {echo "&showkey=j";} 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>";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>"; 390 338 } 391 339 // Gleicher DB-Eintrag in zwei HTML-Zeilen, besser nur ein Link 392 340 if ($skey > 0) { 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'>";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'>"; 397 345 if ($showkey) { 398 346 echo "<span class='key'>(".$skey.")</span> "; 399 347 } 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; 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; 405 351 if ($showkey) {echo "&showkey=j";} 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>";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>"; 409 355 } 410 356 $j++; … … 415 361 // ** N U T Z U N G ** Gemeinsame FlÀche von NUA und FS 416 362 // 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) 417 365 $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, 418 366 st_area(st_intersection(n.wkb_geometry,f.wkb_geometry)) AS schnittflae, c.label, c.blabla … … 487 435 } 488 436 } 489 490 437 if ($info != "") { // manchmal ein zweites Zusatzfeld (wie entschlÃŒsseln?) 491 438 echo ", ".$fldinfo."=".$info; … … 505 452 if ($nam != "") {echo "<br>Name: ".$nam;} 506 453 if ($bez != "") {echo "<br>Bezeichnung: ".$bez;} 507 if ($idanzeige) {linkgml($gkz, $gml, "Nutzungs-Abschnitt", "");}508 454 509 455 echo "</td>"; … … 522 468 $j++; 523 469 } 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Àchen 475 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, aber 484 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" zur 489 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 nutzung 493 FROM nutz_21 n JOIN nutz_shl s ON n.nutzsl = s.nutzshl 494 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Àche 513 $nutzsl=$row["nutzsl"]; // SchlÃŒssel 514 $nutzung=$row["nutzung"]; // Bezeichnung aus ALB-Tabelle, "fein" 515 $defi=$row["definition"]; // Langer Text mit Beschreibung 516 $title=htmlentities($defi, ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet 517 518 // Aus der Definition den String zwischen den ersten '' ausschneiden 519 $pos = strpos($defi, "'") + 1; 520 $len = strpos($defi, "'", $pos) - $pos; 521 $nutztab=substr($defi, $pos, $len); // Nutzungart Kategorie aus der Beschreibung ausschneiden 522 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Àche 530 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.", ".$nutzung 535 ."</td>" 536 ."\n\t<td>"; 537 /* // Derzeit ist keine Gruppe zugeordnet 538 switch ($grupp) { // Icon nach 4 Objektartengruppen 539 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 } 524 552 pg_free_result($res); 525 553 // ENDE N U T Z U N G 526 554 527 echo "\n<tr>" ;// Summenzeile528 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>";555 echo "\n<tr>" // Summenzeile 556 ."\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>"; 531 559 532 560 // Flaeche und Link auf GebÀude-Auswertung 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";} 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; 537 564 if ($showkey) {echo "&showkey=j";} 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>"; 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>"; 542 574 543 575 // H i n w e i s auf Bodenneuordnung oder eine strittige Grenze 544 576 // b.name, b.artderfestlegung, 545 577 546 $sql_boden ="SELECT a. wert, a.bezeichnerAS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez,578 $sql_boden ="SELECT a.k AS wert, a.v AS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez, 547 579 b.name AS verf_name, d.bezeichnung AS stelle_bez, d.stelle AS stelle_key 548 FROM ax_bauraumoderbodenordnungsrecht b JOIN v_baurecht_adf a ON a.wert=b.artderfestlegung 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' 549 582 LEFT JOIN ax_dienststelle d ON b.stelle=d.stelle 550 583 WHERE b.endet IS NULL AND d.endet IS NULL 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)) ";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));"; 553 586 554 587 pg_prepare($con, "bodeneuordnung", $sql_boden); 555 588 $res_bodeneuordnung = pg_execute($con, "bodeneuordnung", array($gmlid)); 556 557 $sql_str="SELECT gml_id 558 FROM ax_besondereflurstuecksgrenze WHERE endet IS NULL AND 1000 = ANY(artderflurstuecksgrenze) 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) 559 595 AND ST_touches((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL),wkb_geometry);"; 560 596 561 597 pg_prepare($con, "strittigeGrenze", $sql_str); 562 598 $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 } 563 603 564 604 if (pg_num_rows($res_bodeneuordnung) > 0 OR pg_num_rows($res_strittigeGrenze) > 0) { 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>";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>"; 569 609 570 610 if (pg_num_rows($res_bodeneuordnung) > 0) { … … 573 613 574 614 // Zeile 1 - kommt immer, darum hier den Link 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 lang578 echo"\n\t<td>";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 lang 618 ."\n\t<td>"; 579 619 if ($showkey) {echo "<span class='key'>(".$row['wert'].")</span> ";} 580 echo $row['art_verf']; 581 echo "</td>"; 582 echo "\n\t<td>"; 620 echo $row['art_verf'] 621 ."</td>\n\t<td>"; 583 622 // LINK: 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";} 623 echo "\n\t\t<p class='nwlink noprint'>" 624 ."\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&gmlid=".$row['verf_gml']; 587 625 if ($showkey) {echo "&showkey=j";} 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>";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>"; 592 630 593 631 // Zeile 2 594 $dstell=$row['stelle_key']; // LEFT JOIN632 $dstell=$row['stelle_key']; 595 633 if ($dstell != "") { // Kann auch leer sein 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>";634 echo "\n<tr title='Flurbereinigungsbehörde'>" 635 ."\n\t<td> </td>" 636 ."\n\t<td>Dienststelle</td>" 637 ."\n\t<td>"; 600 638 if ($showkey) {echo "<span class='key'>(".$dstell.")</span> ";} 601 echo $row['stelle_bez'] ;602 echo "</td>";603 echo "\n\t<td> </td>";604 echo"\n</tr>";639 echo $row['stelle_bez'] 640 ."</td>" 641 ."\n\t<td> </td>" 642 ."\n</tr>"; 605 643 } 606 644 … … 609 647 $vnam=$row['verf_name']; // noch seltener 610 648 if ($vbez != "") { 611 echo "\n<tr title='Verfahrensbezeichnung'>" ;612 echo "\n\t<td> </td>\n\t<td>Verfahren</td>";613 echo"\n\t<td>";649 echo "\n<tr title='Verfahrensbezeichnung'>" 650 ."\n\t<td> </td>\n\t<td>Verfahren</td>" 651 ."\n\t<td>"; 614 652 if ($vnam == "") { 615 653 echo $vbez; // nur die Nummer … … 618 656 echo $vnam; 619 657 } 620 echo "</td>"; 621 echo "\n\t<td> </td>"; 622 echo "\n</tr>"; 623 } 624 } 625 } 626 658 echo "</td>" 659 ."\n\t<td> </td>" 660 ."\n</tr>"; 661 } 662 } 663 } 627 664 if (pg_num_rows($res_strittigeGrenze) > 0) { // 1 Zeile 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 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 } 636 670 echo "\n</table>"; 637 671 638 672 // G R U N D B U C H 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";} 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 649 683 // Umschalter: FS-Nachw ruft sich selbst mit geaend. Param. auf. Posit. auf Marke #gb 650 684 if ($eig=="j") { 651 685 echo "&eig=n#gb' title='Flurstücksnachweis'>ohne Eigentümer</a>"; 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>";686 } else { // ++ könnte man sich sparen, wenn unten nur ein "fiktives Blatt" kommt 687 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>"; 655 689 } 656 echo "\n\t\t</p>" ;657 echo "\n\t</td>";658 echo "\n</tr>";659 echo"\n</table>\n";690 echo "\n\t\t</p>" 691 ."\n\t</td>" 692 ."\n</tr>" 693 ."\n</table>\n"; 660 694 661 695 // B U C H U N G S S T E L L E N zum FS (istGebucht) 662 $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 bart696 $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 barttitle 663 697 FROM ax_flurstueck f JOIN ax_buchungsstelle s ON s.gml_id=f.istgebucht 664 LEFT JOIN v_bs_buchungsart b ON s.buchungsart=b.wert698 LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' AND b.bezeichnung='buchungsart' 665 699 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL ORDER BY s.laufendenummer;"; 666 700 … … 670 704 if (!$ress) { 671 705 echo "\n<p class='err'>Keine Buchungsstelle.</p>\n"; 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 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 676 712 while($rows = pg_fetch_array($ress)) { 677 713 $gmls=$rows["gml_id"]; // gml b-Stelle 678 714 $lfd=$rows["lfd"]; // BVNR 715 $barttitle=htmlentities($rows["barttitle"], ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet 679 716 680 717 // B U C H U N G S B L A T T zur Buchungsstelle (istBestandteilVon) 681 $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, z.bezeichnung718 $sql="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, wb.v AS blattartv, wb.d AS blattartd, z.bezeichnung 682 719 FROM ax_buchungsstelle s JOIN ax_buchungsblatt b ON b.gml_id=s.istbestandteilvon 683 720 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' 684 722 WHERE s.gml_id = $1 AND s.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL 685 723 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;"; 686 724 687 $v =array($gmls);688 $resg =pg_prepare("", $sql);689 $resg =pg_execute("", $v);725 $v=array($gmls); 726 $resg=pg_prepare("", $sql); 727 $resg=pg_execute("", $v); 690 728 if (!$resg) { 691 729 echo "\n<p class='err'>Kein Buchungsblatt.</p>\n"; … … 696 734 $gmlg=$rowg["gml_id"]; 697 735 $beznam=$rowg["bezeichnung"]; 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 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 704 741 echo "\n\t<td>"; // Outer linke Spalte: 705 742 … … 710 747 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 711 748 } 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>"; 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>"; 735 767 736 768 // Miteigentumsanteil … … 738 770 echo "\n<p class='ant'>".$rows["zaehler"]."/".$rows["nenner"]." Anteil am Flurstück</p>"; 739 771 } 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";} 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; 751 775 if ($showkey) {echo "&showkey=j";} 752 776 if ($blattkeyg == 1000) { … … 755 779 echo "' title='Grundbuchnachweis'>"; 756 780 } 757 echo $blattartg." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" ;758 echo "</a>";759 echo"\n\t</p>";781 echo $blattartg." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 782 ."</a>" 783 ."\n\t</p>"; 760 784 761 785 ber_bs_hinw($gmls); // berechtigte Buchungstellen Hinweis 762 786 763 echo "\n</td>" ;764 echo "\n</tr>";765 echo"\n</table>";787 echo "\n</td>" 788 ."\n</tr>" 789 ."\n</table>"; 766 790 767 791 // +++ Weitere Felder ausgeben? BeschreibungDesUmfangsDerBuchung … … 781 805 if ($blattkeyg == 1000) { 782 806 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 783 linkgml($gkz, $gmlg, "Buchungsblatt", "");784 807 } else { 785 808 echo "\n<p>ohne Eigentümer.</p>"; … … 789 812 $bl++; 790 813 } 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 814 if ($bl == 0) {echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>";} 897 815 $bs++; 898 816 } 899 817 pg_free_result($resg); 900 if ($bs == 0) { 901 echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>"; 902 linkgml($gkz, $gmlid, "Flurstück", "ax_flurstueck"); 903 } 818 if ($bs == 0) {echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>";} 904 819 pg_close($con); 905 820 echo <<<END 906 821 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> 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> 915 828 END; 916 917 829 footer($gmlid, $_SERVER['PHP_SELF']."?", "&eig=".$eig); 918 919 830 ?> 920 921 831 </body> 922 832 </html> -
trunk/info/info/alkis/alkisgebaeudenw.php
r357 r376 4 4 5 5 Version: 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 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 15 8 */ 16 9 session_start(); … … 20 13 if ($auth == "mapbender") {require_once($mapbender);} 21 14 include("alkisfkt.php"); 22 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}23 15 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 24 16 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 25 17 ?> 26 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">27 <html >18 <!doctype html> 19 <html lang="de"> 28 20 <head> 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"> 21 <meta charset="utf-8"> 34 22 <title>ALKIS Gebäudenachweis</title> 35 23 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 41 29 <body> 42 30 <?php 43 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);31 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisgebaeudenw.php'"); 44 32 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 45 33 … … 76 64 77 65 // Kennzeichen in Rahmen 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'>";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'>"; 86 74 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 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>"; 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>"; 103 89 // Ende Seitenkopf 104 90 … … 106 92 pg_free_result($resf); 107 93 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>";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>"; 110 96 111 97 // G e b a e u d e 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 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' 130 106 WHERE f.gml_id= $1 AND f.endet IS NULL and g.endet IS NULL "; // ID des akt. FS 131 107 132 // "within" -> nur Geb., die komplett im FS liegen 133 // "intersects" -> auch teil-ueberlappende Flst. 108 // "within" -> nur Geb., die komplett im FS liegen. "intersects" -> auch teil-ueberlappende Flst. 134 109 $sqlg.="AND st_intersects(g.wkb_geometry,f.wkb_geometry) = true "; 135 110 // RLP: keine Relationen zu NebengebÀuden. Auf Qualifizierung verzichten, sonst werden NebengebÀude nicht angezeigt … … 141 116 $resg=pg_execute("", $v); 142 117 if (!$resg) { 143 echo "\n<p class='err'> Keine Gebäude ermittelt.</p>\n";118 echo "\n<p class='err'>Fehler bei Gebäude-Verschneidung.</p>\n"; 144 119 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlg."<br>$1 = gml_id = '".$gmlid."'</p>";} 145 120 } … … 148 123 echo "\n<hr>\n<table class='geb'>"; 149 124 // T-Header 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>";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>"; 160 135 // T-Body 161 136 while($rowg = pg_fetch_array($resg)) { 162 137 $gebnr = $gebnr + 1; 163 // ++ ToDo: Die Zeilen abwechselnd verschieden einfÀrben, Angrenzend anders einfÀrben164 138 $ggml=$rowg["gml_id"]; 165 $gebflsum = $gebflsum + $rowg["schnittflae"]; 166 # $skey=$rowg["lage"]; // Strassenschluessel 139 $gebflsum=$gebflsum + $rowg["schnittflae"]; 167 140 $gnam=$rowg["name"]; 168 141 $gzus=$rowg["zustand"]; 169 142 $gzustand=$rowg["bzustand"]; 170 143 171 echo "\n<tr>"; 172 echo "\n\t<td>"; 173 if ($gnam != "") {echo "<span title='Gebäudename'>".$gnam."</span><br>";} 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²)"; 158 } 159 } 160 161 echo "\n<tr>" 162 ."\n\t<td class='".$gstyle."'>"; 163 if ($gnam != "") {echo "<span title='Gebäudename'>".$gnam."</span><br>";} 174 164 echo "\n\t</td>"; 175 165 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 } 187 } 188 echo "\n\t<td>"; 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."'>"; 189 170 if ($showkey) {echo "<span class='key'>".$rowg["gebaeudefunktion"]."</span> ";} 190 171 echo $rowg["bezeichner"]."</td>"; 191 172 192 echo "\n\t<td >";173 echo "\n\t<td class='".$gstyle."'>"; 193 174 if ($showkey) {echo "<span class='key'>".$rowg["bauweise"]."</span> ";} 194 175 echo $rowg["bauweise_beschreibung"]." </td>"; 195 176 196 echo "\n\t<td >";177 echo "\n\t<td class='".$gstyle."'>"; 197 178 if ($showkey) {echo "<span class='key'>".$gzus."</span> ";} 198 179 echo $gzustand." </td>"; … … 202 183 203 184 // HAUPTgebÀude Geb >zeigtAuf> lage (mehrere) 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 ";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 "; 208 189 209 190 // oder NEBENgebÀude Geb >hat> Pseudo 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"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" 214 195 215 196 $sqll.="ORDER BY bezeichnung, hausnummer;"; … … 239 220 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 240 221 echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 241 if ($idanzeige) {echo "&id=j";}242 222 if ($showkey) {echo "&showkey=j";} 243 223 echo "'>".$lagetxt."</a>"; 244 if ($idanzeige) {linkgml($gkz, $gmllag, "Lage", ""); }245 224 echo "<br>"; 246 225 } // Ende Loop Lage m.H. … … 248 227 echo "\n\t</td>"; 249 228 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>"; 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>"; 258 235 } 259 236 // Footer 260 237 if ($gebnr == 0) { 261 echo "\n</table>" ;262 echo"<p class='err'><br>Keine Gebäude auf diesem Flurstück.<br> </p>";238 echo "\n</table>" 239 ."<p class='err'><br>Keine Gebäude auf diesem Flurstück.<br> </p>"; 263 240 } else { 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>"; 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>"; 274 247 $unbebaut = number_format(($flstflaeche - $gebflsum),0,",",".") . " m²"; 275 echo "\n<p> Flurstücksfläche abzüglich Gebäudefläche: <b>".$unbebaut."</b></p><br>";248 echo "\n<p><br>Flurstücksfläche abzüglich Gebäudefläche: <b>".$unbebaut."</b></p><br>"; 276 249 } 277 250 pg_free_result($resg); 278 251 ?> 279 252 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> 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> 287 258 288 259 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkishaus.php
r372 r376 1 1 <?php 2 /* alkishaus.php - Daten zumALKIS-GebÀude-Objekt2 /* alkishaus.php - viele Daten zu EINEM ALKIS-GebÀude-Objekt 3 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 4 5 5 Version: 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 6 2016-02-24 Version fuer norGIS-ALKIS-Import 7 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 14 8 15 9 ToDo: … … 17 11 - geometrische Suche nach FS, auf denen das Haus steht 18 12 - Template im WMS auf Ebene GebÀude hierhin verknÃŒpfen. 19 - Auch dieseRelationen abbilden:13 - Relationen abbilden: 20 14 ax_gebaeude >gehoertZu> ax_gebaeude (ringförmige Verbindung GebÀudekomplex) 21 15 ax_gebaeude (umschliesst) ax_bauteil 22 ax_gebaeude >gehoert> ax_person 16 ax_gebaeude >gehoert> ax_person (Ausnahme) 23 17 */ 24 18 session_start(); … … 29 23 if ($auth == "mapbender") {require_once($mapbender);} 30 24 include("alkisfkt.php"); 31 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}32 25 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 33 26 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 34 27 if ($allfld == "j") {$allefelder=true;} else {$allefelder=false;} 35 28 ?> 36 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">37 <html >29 <!doctype html> 30 <html lang="de"> 38 31 <head> 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"> 32 <meta charset="utf-8"> 44 33 <title>ALKIS Daten zum Haus</title> 45 34 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 47 36 <style type='text/css' media='print'> 48 37 .noprint {visibility: hidden;} 38 td.mittelspalte {width: 190px;} 49 39 </style> 50 40 </head> … … 52 42 <?php 53 43 54 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);44 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkishaus.php'"); 55 45 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 56 46 57 47 // G e b a e u d e 48 58 49 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, 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 ;"; 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;"; 67 61 68 62 $v = array($gmlid); … … 81 75 // Kennzeichen in Rahmen 82 76 // - Welches Kennzeichen zum Haus ? 83 if ($idanzeige) {linkgml($gkz, $gmlid, "Haus", "ax_gebaeude"); }84 77 echo "\n<hr>"; 85 78 // Umschalter: auch leere Felder ausgeben? 86 79 echo "<p class='nwlink noprint'>"; 87 echo " <a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&gmlid=".$gmlid;80 echo "Umschalten: <a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&gmlid=".$gmlid; 88 81 if ($showkey) {echo "&showkey=j";} else {echo "&showkey=n";} 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";} 82 if ($allefelder) { 83 echo "&allfld=n'>nur Felder mit Inhalt"; 84 } else { 85 echo "&allfld=j'>auch leere Felder"; 86 } 92 87 echo "</a></p>"; 93 88 … … 96 91 while($rowg = pg_fetch_array($resg)) { // Schleife, kann aber nur EIN Haus sein. 97 92 $gebnr++; 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>"; 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>"; 103 99 104 100 $aog=$rowg["aog"]; … … 106 102 $hoh=$rowg["hochhaus"]; 107 103 $nam=$rowg["name"]; // Gebaeude-Name 104 105 $kfunk=$rowg["gebaeudefunktion"]; 108 106 $bfunk=$rowg["bfunk"]; 107 $dfunk=$rowg["dfunk"]; 108 109 109 $baw=$rowg["bauweise"]; 110 $bbauw=$rowg["bauweise_beschreibung"]; 110 $bbauw=$rowg["bbauw"]; 111 $dbauw=$rowg["dbauw"]; 112 111 113 $ofl=$rowg["lagezurerdoberflaeche"]; 112 $dga=$rowg["dachgeschossausbau"]; 113 $zus=$rowg["zustand"]; 114 $zustand=$rowg["bzustand"]; 115 $wgf=$rowg["weiteregebaeudefunktion"]; 116 $daf=$rowg["dachform"]; 117 $dach=$rowg["bdach"]; 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 118 129 $hho=$rowg["objekthoehe"]; 119 130 $gfl=$rowg["geschossflaeche"]; … … 125 136 126 137 if (($nam != "") OR $allefelder) { 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 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 135 147 // HAUPTgebÀude 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 "; 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"; 142 152 // oder NEBENgebÀude 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 "; 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 "; 148 159 149 160 $sqll.="ORDER BY bezeichnung, hausnummer ;"; … … 166 177 $gmllag=$rowl["gmllag"]; 167 178 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>"; 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>"; 182 190 } // Ende Loop Lagezeilen m.H. 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 191 if ($zhsnr > 0) {echo "\n\t</td>\n\t<td> </td>\n</tr>";} 192 193 // GebÀudefunktion 194 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 195 203 if ($baw != "" OR $allefelder) { 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>";204 echo "\n<tr>" 205 ."\n\t<td class='li'>Bauweise</td>" 206 ."\n\t<td class='fett'>"; 199 207 if ($showkey) {echo "<span class='key'>".$baw."</span> ";} 200 echo $bbauw."</td>"; 201 echo "\n</tr>"; 202 } 203 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 204 214 if ($aog != "" OR $allefelder) { 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 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 211 223 if ($aug != "" OR $allefelder) { 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 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 218 232 if ($hoh != "" OR $allefelder) { 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 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 225 241 if ($ofl != "" OR $allefelder) { 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>";242 echo "\n<tr>" 243 ."\n\t<td class='li'>Lage zur Erdoberfläche</td>" 244 ."\n\t<td class='fett'>"; 229 245 if ($showkey) {echo "<span class='key'>".$ofl."</span> ";} 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>"; 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'>"; 246 257 if ($showkey) {echo "<span class='key'>".$dga."</span> ";} 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 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 259 264 if ($zus != "" OR $allefelder) { 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>";265 echo "\n<tr>" 266 ."\n\t<td class='li'>Zustand</td>" 267 ."\n\t<td class='fett'>"; 263 268 if ($showkey) {echo "<span class='key'>".$zus."</span> ";} 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); 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); 280 284 $resw = pg_prepare("", $sqlw); 281 285 $resw = pg_execute("", $v); 282 286 if (!$resw) { 283 287 echo "\n<p class='err'>Fehler bei Gebäude - weitere Funktion.</p>\n"; 284 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf list."'</p>";}288 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf."'</p>";} 285 289 } 286 290 $zw=0; 287 291 while($roww = pg_fetch_array($resw)) { // LOOP: w.Funktion 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; 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>"; 293 295 $zw++; 294 296 } 295 297 } 296 echo "</td>"; 297 echo "\n</tr>"; 298 } 299 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 300 305 if ($daf != "" OR $allefelder) { 301 echo "\n<tr>" ;302 echo "\n\t<td title='\"Dachform\" beschreibt die charakteristische Form des Daches.'>Dachform</td>";303 echo "\n\t<td>";306 echo "\n<tr>" 307 ."\n\t<td class='li'>Dachform</td>" 308 ."\n\t<td class='fett'>"; 304 309 if ($showkey) {echo "<span class='key'>".$daf."</span> ";} 305 echo $dach."</td>"; 306 echo "\n</tr>"; 307 } 308 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 309 316 if ($hho != "" OR $allefelder) { 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 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 317 325 if ($gfl != "" OR $allefelder) { 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 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 328 336 if ($grf != "" OR $allefelder) { 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 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 338 346 if ($ura != "" OR $allefelder) { 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 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 346 355 if ($bja != "" OR $allefelder) { 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 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 354 364 if ($daa != "" OR $allefelder) { 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 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 362 373 if ($qag != "" OR $allefelder) { 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 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 } 370 380 echo "\n</table>"; 371 381 } 372 382 if ($gebnr == 0) {echo "<p class='err'><br>Kein Gebäude gefunden<br> </p>";} 373 // ++ ToDo: Verschnitt mit FS 383 384 // ++ ToDo: Verschnitt mit FS? 374 385 375 386 ?> 376 387 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> 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> 384 393 385 394 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisinlayausk.php
r355 r376 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. 8 Eigentuemer ohne Adresse. 9 Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 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. 10 9 Dies ist eine Variante von alkisausk.php welches als vollstaendige Seite aufgerufen wird. 11 10 12 11 Version: 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 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) 26 14 */ 27 15 session_start(); … … 32 20 $gmlid = isset($_GET["gmlid"]) ? $_GET["gmlid"] : 0; 33 21 echo <<<END 34 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">35 <html >22 <!doctype html> 23 <html lang="de"> 36 24 <head> 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"> 25 <meta charset="utf-8"> 42 26 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 43 27 <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico"> … … 52 36 <body> 53 37 END; 54 $con = pg_connect( "host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);38 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisinlayausk.php'"); 55 39 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 56 40 57 41 // *** F L U R S T U E C K *** 58 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 42 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.regierungsbezirk, f.kreis, f.gemeinde 59 43 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 60 44 WHERE f.gml_id= $1 AND f.endet IS NULL ;"; … … 77 61 $flae=$row["amtlicheflaeche"]; 78 62 $flae=number_format($flae,0,",",".") . " m²"; 63 $fsreg=$row["regierungsbezirk"]; // Filter ZustÀndigkeit 64 $fskrs=$row["kreis"]; 65 $fsgem=$row["gemeinde"]; 79 66 } else { 80 67 echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>"; … … 82 69 } 83 70 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 nicht 75 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 84 85 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>"; 85 86 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 // Flurst uecksnachweis (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>";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>"; 101 102 102 103 // FS-Historie 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>";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>"; 107 108 108 109 // Gebaeude-NW zum FS 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>";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>"; 113 114 114 115 echo "\n\t</p>\n</td>"; … … 133 134 while($row = pg_fetch_array($res)) { 134 135 $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name 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'>";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'>"; 137 138 $kgml=$row["kgml"]; // Wiederholung vermeiden 138 139 if ($kgml != $kgmlalt) { // NEUE Strasse vor Lage 139 140 $kgmlalt=$kgml; // Katalog GML-ID 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>";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>"; 148 149 $j++; 149 150 } … … 151 152 if ($j == 0) { // keine HsNr gefunden 152 153 // Lage OHNE HausNr 153 $sql 154 $sql="SELECT DISTINCT s.gml_id AS kgml, l.gml_id, s.bezeichnung, l.unverschluesselt 154 155 FROM ax_flurstueck f JOIN ax_lagebezeichnungohnehausnummer l ON l.gml_id=ANY(f.zeigtauf) 155 156 LEFT JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 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;"; 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;"; 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 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>";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>"; 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, a.bezeichner AS bart 203 FROM ax_flurstueck f 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, wa.v AS blattartv, wb.v AS bart 203 FROM ax_flurstueck f 204 JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 204 205 JOIN ax_buchungsblatt b ON s.istbestandteilvon=b.gml_id 205 206 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 206 LEFT JOIN v_bs_buchungsart a ON s.buchungsart=a.wert 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' 207 209 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 208 210 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;"; … … 218 220 $beznam=$rowg["bezeichnung"]; 219 221 echo "\n<hr>\n<table class='outer'>\n<tr>\n<td>"; 220 $blattkey=$rowg["blattart"]; 221 $blattart=blattart($blattkey); 222 $blattkey=$rowg["blattart"]; // Key 223 $blattart=$rowg["blattartv"]; // Value 224 222 225 if ($blattkey == 1000) { 223 226 echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; … … 225 228 echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 226 229 } 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>"; 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>"; 241 242 242 243 if ($rowg["zaehler"] <> "") { 243 244 echo "\n<p class='ant'>".$rowg["zaehler"]."/".$rowg["nenner"]." Anteil am Flurstück</p>"; 244 245 } 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>"; 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>"; 254 253 255 254 // E I G E N T U E M E R 256 255 if ($blattkey == 5000) { // Schluessel Blattart 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";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"; 259 258 } else {// kein Eigent. bei fiktiv. Blatt 260 259 echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; … … 264 263 265 264 if ($n == 0) { // keine NamensNr, kein Eigentuemer 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", ""); 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>"; 269 267 } 270 268 } -
trunk/info/info/alkis/alkisinlaybaurecht.php
r355 r376 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. 4 5 5 6 Version: 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 7 2016-02-24 Version fuer norGIS-ALKIS-Import 8 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 16 9 */ 17 10 session_start(); … … 20 13 if ($auth == "mapbender") {require_once($mapbender);} 21 14 ?> 22 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">23 <html >15 <!doctype html> 16 <html lang="de"> 24 17 <head> 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"> 18 <meta charset="utf-8"> 30 19 <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title> 31 20 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 42 31 43 32 <?php 44 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);33 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisinlaybaurecht.php'"); 45 34 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 46 35 47 // wie View "baurecht"48 $sql ="SELECT r.ogc_fid, r.name, r.stelle, r.bezeichnung AS rechtbez, a. bezeichnerAS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae36 // 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.v AS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae 49 38 FROM ax_bauraumoderbodenordnungsrecht r 50 LEFT JOIN v_baurecht_adf a ON r.artderfestlegung=a.wert39 LEFT JOIN alkis_wertearten a ON cast(r.artderfestlegung AS character varying)=a.k AND a.element='ax_bauraumoderbodenordnungsrecht' AND a.bezeichnung='artderfestlegung' 51 40 LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle WHERE r.gml_id= $1 ;"; 52 41 … … 61 50 echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>\n"; 62 51 63 // ToDo: ++++ Spalte anfÃŒgen, darin Link auf neue Variante alkisbaurecht.php64 65 52 if ($row = pg_fetch_array($res)) { 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 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>"; 73 58 $enam=$row["name"]; 74 59 if ($enam != "") { 75 echo "\n<tr>" ;76 echo "\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>";77 echo"\n</tr>";60 echo "\n<tr>" 61 ."\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>" 62 ."\n</tr>"; 78 63 } 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 64 echo "\n<tr>" 65 ."\n\t<td class='li'>Verfahrensnummer:</td>\n\t<td>".$row["rechtbez"]."</td>" 66 ."\n</tr>"; 84 67 $stell=$row["stelle"]; 85 68 if ($stell != "") { 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>"; 69 echo "\n<tr>" 70 ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>".$row["stellbez"]."</td>" 71 ."\n</tr>"; 90 72 } 91 92 echo "\n<tr>"; 93 echo "\n\t<td class='li'>Fläche:</td>"; 73 echo "\n<tr>" 74 ."\n\t<td class='li'>Fläche:</td>"; 94 75 $flae=number_format($row["flae"],0,",",".")." m²"; 95 echo "\n\t<td>".$flae."</td>"; 96 echo "\n</tr>"; 97 98 echo "\n</table>"; 76 echo "\n\t<td>".$flae."</td>" 77 ."\n</tr>" 78 ."\n</table>"; 99 79 } else { 100 80 echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>"; 101 81 } 102 82 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>";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>"; 107 87 108 88 ?> -
trunk/info/info/alkis/alkislage.php
r357 r376 6 6 7 7 Version: 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 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-03-14 Korrekturen 10 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 17 11 18 12 ToDo: 19 - Das Balken-Kennzeichen noch kompatibel machen mit der Eingabe der Navigation fÃŒr Adresse 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? 20 17 */ 21 18 session_start(); 22 19 $id="n"; 23 $ltyp="";24 20 $cntget = extract($_GET); 25 21 require_once("alkis_conf_location.php"); … … 28 24 29 25 switch ($ltyp) { 30 case "m": // "Mit HsNr" 26 case "m": // "Mit HsNr" = Hauptgebaeude 31 27 $tnam = "ax_lagebezeichnungmithausnummer"; break; 32 28 case "p": // "mit PseudoNr" = Nebengebaeude 33 29 $tnam = "ax_lagebezeichnungmitpseudonummer"; break; 34 case "o": //"Ohne HsNr" 30 case "o": //"Ohne HsNr" = Gewanne oder Strasse 35 31 $tnam = "ax_lagebezeichnungohnehausnummer"; break; 36 32 default: … … 39 35 } 40 36 41 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}42 37 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 43 38 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 44 39 ?> 45 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">46 <html >40 <!doctype html> 41 <html lang="de"> 47 42 <head> 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"> 43 <meta charset="utf-8"> 53 44 <title>ALKIS Lagebezeichnung</title> 54 45 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 60 51 <body> 61 52 <?php 62 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);53 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkislage.php'"); 63 54 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 64 55 … … 142 133 } 143 134 } else { 144 echo "<p class='err'>Fehler! Kein Treffer fuer gml_id=".$gmlid."</p>"; 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; 145 141 } 146 142 … … 151 147 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Tab. Kennz. 152 148 // ToDo: !! kleiner, wenn ltyp=0 und die Schluesselfelder leer sind 153 echo "\n\t<table class='kennzla' title='Lage'>" ;154 echo"\n\t<tr>";149 echo "\n\t<table class='kennzla' title='Lage'>" 150 ."\n\t<tr>"; 155 151 if ($osub != "g") { // nicht bei Gewanne 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>";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>"; 161 157 } 162 158 switch ($ltyp) { … … 165 161 break; 166 162 case "p": // "mit PseudoNr" 167 echo "\n\t\t<td class='head'>Haus-Nr</td>" ;168 echo"\n\t\t<td class='head'>lfd.-Nr</td>";163 echo "\n\t\t<td class='head'>Haus-Nr</td>" 164 ."\n\t\t<td class='head'>lfd.-Nr</td>"; 169 165 break; 170 166 case "o": //"Ohne HsNr" … … 174 170 break; 175 171 } 176 echo "\n\t</tr>"; 177 echo "\n\t<tr>"; 172 echo "\n\t</tr>\n\t<tr>"; 178 173 if ($osub != "g") { // nicht bei Gewanne 179 174 … … 209 204 break; 210 205 case "p": 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>";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>"; 213 208 break; 214 209 case "o": … … 218 213 break; 219 214 } 220 echo "\n\t</tr>" ;221 echo"\n\t</table>";215 echo "\n\t</tr>" 216 ."\n\t</table>"; 222 217 223 218 echo "\n\t</td>\n\t<td>"; 224 219 225 220 // Kopf Rechts: weitere Daten? 226 if ($idanzeige) {linkgml($gkz, $gmlid, "Lage", ""); }227 228 221 if ($osub != "g") { // Link zu Strasse 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>"; 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>"; 235 227 } 236 228 … … 241 233 // ax_Flurstueck >weistAuf> ax_LagebezeichnungMitHausnummer 242 234 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer 235 // ++ auch FlÀchenverschneidung? 243 236 if ($ltyp <> "p") { // Pseudonummer linkt nur GebÀude 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>";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>"; 246 239 switch ($ltyp) { 247 240 case "m": $bezart="weistauf"; break; … … 261 254 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 262 255 } 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>"; 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>"; 272 264 $j=0; 273 265 while($rowf = pg_fetch_array($resf)) { … … 276 268 if ($rowf["nenner"] != "") {$fskenn.="/".$rowf["nenner"];} 277 269 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 278 echo "\n<tr>" ;279 echo"\n\t<td>";270 echo "\n<tr>" 271 ."\n\t<td>"; 280 272 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 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>"; 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>"; 294 283 $j++; 295 284 } 296 285 echo "\n</table>"; 297 if ($j > 6) { 298 echo "<p class='cnt'>".$j." Flurstücke</p>"; 299 } 286 if ($j > 6) {echo "<p class='cnt'>".$j." Flurstücke</p>";} 300 287 } 301 288 … … 303 290 // andere Lage mit gleicher Hausnummer suchen 304 291 if ($ltyp <> "o") { // nicht bei Gewanne (Ohne HsNr) 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>";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>"; 307 294 $whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 "; 308 295 309 296 $url=$_SERVER['PHP_SELF']."?gkz=".$gkz."&id=".$id; // Basis 310 if ($idanzeige) {$url.="&id=j";}311 297 if ($showkey) {$url.="&showkey=j";} 312 298 $url.="&gmlid="; 313 299 314 300 switch ($ltyp) { 315 case "m": // aktuell Hausnummer gefunden301 case "m": // aktuell: Hausnummer gefunden 316 302 // dazu alle NebengebÀude suchen 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;";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;"; 320 306 321 307 $v = array($land,$regbez,$kreis,$gem,$lage,$lage,$hsnr); … … 326 312 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."</p>";} 327 313 } 314 $neb=0; 328 315 while($row = pg_fetch_array($res)) { 329 316 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 330 } 317 $neb++; 318 } 319 if ($neb == 0) {echo "keine";} 331 320 echo "</p>"; 332 321 break; … … 341 330 $res = pg_execute("", $v); 342 331 343 if (!$res) echo "<p class='err'>Fehler bei Hauptgebäude.<br>".$sql."</p>\n"; 332 if (!$res) {echo "<p class='err'>Fehler bei Hauptgebäude.<br>".$sql."</p>\n";} 333 $hg=0; 344 334 while($row = pg_fetch_array($res)) { 345 335 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=m'>Haus-Nr ".$pseu."</a> "; 346 } 336 $hg++; 337 } 338 if ($hg == 0) {echo " Kein Hauptgebäude gefunden.";} 347 339 echo "</p>"; 348 340 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);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); 353 345 $res = pg_prepare("", $sql); 354 346 $res = pg_execute("", $v); … … 357 349 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."</p>";} 358 350 } 351 $neb=0; 359 352 while($row = pg_fetch_array($res)) { 360 353 echo "\n\t<a href='".$url.$row["gml_id"]."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 361 } 354 $neb++; 355 } 356 if ($neb == 0) {echo "keine";} 362 357 echo "</p>"; 363 358 break; … … 367 362 // G E B A E U D E 368 363 if ($ltyp <> "o") { // OhneHsNr linkt nur Flurst. 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>";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>"; 371 366 switch ($ltyp) { 372 367 case "p": $bezart="g.hat"; break; 373 368 case "m": $bezart="ANY(g.zeigtauf)"; break; // array 374 369 } 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;"; 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. 378 379 379 380 $v = array($gmlid); … … 384 385 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 385 386 } 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 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>"; 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 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>"; 400 echo "\n\t<tr>" 401 ."<td>".$row["name"]."</td>" 402 ."<td class='fla'>".$gfla." m²</td>"; 403 404 echo "<td title='".$row["ud"]."'>"; 408 405 if ($showkey) {echo "<span class='key'>".$row["gebaeudefunktion"]."</span> ";} 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>"; 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>"; 423 421 } 424 422 echo "\n</table>"; … … 427 425 ?> 428 426 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> 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> 436 432 437 433 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", "&ltyp=".$ltyp); ?> -
trunk/info/info/alkis/alkisnamstruk.php
r372 r376 6 6 7 7 Version: 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 8 2016-02-24 Version fuer norGIS-ALKIS-Import 9 2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 17 10 */ 18 11 session_start(); … … 23 16 if ($auth == "mapbender") {require_once($mapbender);} 24 17 include("alkisfkt.php"); 25 if ($id == "j") { $idanzeige=true;} else {$idanzeige=false;}26 18 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 27 19 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 28 20 29 21 ?> 30 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">31 <html >22 <!doctype html> 23 <html lang="de"> 32 24 <head> 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"> 25 <meta charset="utf-8"> 38 26 <title>ALKIS Person und Adresse</title> 39 27 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 51 39 52 40 <?php 53 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 41 54 42 // Balken 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";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'"); 58 46 if (!$con) "\n<p class='err'>Fehler beim Verbinden der DB</p>\n"; 59 47 60 $sql="SELECT nachnameoderfirma, anrede, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad "; 61 $sql.="FROM ax_person WHERE gml_id= $1;"; 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;"; 62 51 63 52 $v = array($gmlid); … … 65 54 $res = pg_execute("", $v); 66 55 67 if (!$res) {echo "\n<p class='err'>Fehler bei Zugriff auf Namensnummer</p>\n";} 68 if ($idanzeige) { linkgml($gkz, $gmlid, "Person", "ax_person"); } 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 } 69 60 if ($row = pg_fetch_array($res)) { 70 61 $vor=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); 71 62 $nam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); 72 63 $geb=htmlentities($row["geburtsname"], ENT_QUOTES, "UTF-8"); 73 $anrk=$row["anrede"]; 74 $anr= anrede($anrk);64 $anrk=$row["anrede"]; // Key 65 $anr=$row["anrv"]; // Value 75 66 $nbest=$row["namensbestandteil"]; 76 67 $aka=$row["akademischergrad"]; 77 68 78 echo "<table>\n" ;79 echo"\t<tr><td class='nhd'>Anrede:</td><td class='nam'>";69 echo "<table>\n" 70 ."\t<tr><td class='nhd'>Anrede:</td><td class='nam'>"; 80 71 if ($showkey) {echo "<span class='key' title='Anredekennung'>(".$anrk.")</span> ";} 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";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"; 89 80 90 81 // A d r e s s e … … 100 91 if (!$resa) { 101 92 echo "\n<p class='err'>Fehler bei Adressen</p>\n"; 102 if ($debug > 2) { 103 echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml(Person)= '".$gmlid."'</p>\n"; 104 } 93 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml(Person)= '".$gmlid."'</p>\n";} 105 94 } 106 95 … … 116 105 $hsnr=$rowa["hausnummer"]; 117 106 $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 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"; 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"; 127 114 128 115 // Name und Adresse Kompakt (im Rahmen) - Alles was man fuer ein Anschreiben braucht 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>";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>"; 133 120 } 134 121 } … … 137 124 echo "\n<p class='err'>Keine Adressen.</p>\n"; 138 125 } elseif ($j > 1) { 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";} 126 echo "\n\t\t<p class='nwlink noprint'>" 127 ."\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&gmlid=".$gmlid; 142 128 if ($showkey) {echo "&showkey=j";} 143 129 if ($multiadress == "j") { … … 146 132 echo "&multiadress=j' title='Adressen ggf. mehrfach vorhanden'>alle Adressen "; 147 133 } 148 echo "\n\t\t\t</a>" ;149 echo"\n\t\t</p>";134 echo "\n\t\t\t</a>" 135 ."\n\t\t</p>"; 150 136 } 151 137 … … 155 141 // >bestehtAusRechtsverhaeltnissenZu> namensnummer (Nebenzweig/SonderfÀlle?) 156 142 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 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 159 146 LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk 160 WHERE p.gml_id= $1 ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;"; 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;"; 161 150 // buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander 162 151 … … 167 156 if (!$resg) { 168 157 echo "\n<p class='err'>Fehler bei Grundbuch</p>\n"; 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>"; 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>"; 182 169 183 170 $i=0; … … 187 174 $namnum=kurz_namnr($rowg["lfd"]); 188 175 $zae=$rowg["zaehler"]; 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>"; 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>"; 200 184 201 185 echo "\n\t<td class='gbl'>"; // Blattart 202 if ($showkey) { 203 echo "<span class='key'>".$blattkey."</span> "; 204 } 205 echo $blattart; 206 echo "</td>"; 186 if ($showkey) {echo "<span class='key'>".$blattkey."</span> ";} 187 echo $blattart 188 ."</td>"; 207 189 208 190 echo "\n\t<td class='gbl'>"; // Blatt 209 echo "<span class='wichtig'>".$rowg["nr"]."</span>"; 210 if ($idanzeige) { 211 linkgml($gkz, $gmlg, "Grundbuchblatt", ""); 212 } 213 echo "</td>"; 191 echo "<span class='wichtig'>".$rowg["nr"]."</span>" 192 ."</td>"; 214 193 215 194 echo "\n\t<td class='gbl'>"; // Namensnummer … … 219 198 echo $namnum; 220 199 } 221 if ($idanzeige) {222 linkgml($gkz, $gmln, "Namensnummer", "ax_namensnummer");223 }224 200 echo "</td>"; 225 201 … … 230 206 echo $zae."/".$rowg["nenner"]." Anteil"; 231 207 } 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>"; 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>"; 246 218 // +++ >bestehtAusRechtsverhaeltnissenZu> namensnummer ? 247 219 // z.B. eine Namennummer "Erbengemeinschaft" zeigt auf Namensnummern mit EigentÃŒmern … … 256 228 ?> 257 229 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> 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> 266 236 267 237 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> -
trunk/info/info/alkis/alkisstrasse.php
r355 r376 7 7 8 8 Version: 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 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) 17 11 */ 18 12 session_start(); … … 23 17 include("alkisfkt.php"); 24 18 25 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}26 19 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 27 20 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 28 21 ?> 29 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">30 <html >22 <!doctype html> 23 <html lang="de"> 31 24 <head> 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"> 25 <meta charset="utf-8"> 37 26 <title>ALKIS Straße</title> 38 27 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> … … 49 38 <body> 50 39 <?php 51 $con = pg_connect( "host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);40 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisstrasse.php'"); 52 41 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 53 42 … … 68 57 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 69 58 } 70 71 59 if ($row = pg_fetch_array($res)) { 72 60 $lage=$row["lage"]; // Strassenschluessel … … 82 70 echo "\n<h2><img src='ico/Strassen.png' width='16' height='16' alt=''> Straße</h2>\n"; 83 71 84 echo "\n<table class='outer'>\n<tr>\n\t<td>";// Tabelle Kennzeichen85 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 72 // Tabelle Kennzeichen 73 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>"; 95 83 echo "\n\t\t<td title='Bundesland'>"; 96 84 if ($showkey) {echo "<span class='key'>".$row["land"]."</span><br>";} 97 echo $row["bnam"]." </td>"; 98 99 echo "\n\t\t<td title='Regierungsbezirk'>"; 85 echo $row["bnam"]." </td>" 86 ."\n\t\t<td title='Regierungsbezirk'>"; 100 87 if ($showkey) {echo "<span class='key'>".$row["regierungsbezirk"]."</span><br>";} 101 echo $row["rnam"]." </td>"; 102 103 echo "\n\t\t<td title='Kreis'>"; 88 echo $row["rnam"]." </td>" 89 ."\n\t\t<td title='Kreis'>"; 104 90 if ($showkey) {echo "<span class='key'>".$row["kreis"]."</span><br>";} 105 echo $row["knam"]." </td>"; 106 107 echo "\n\t\t<td title='Gemeinde'>"; 91 echo $row["knam"]." </td>" 92 ."\n\t\t<td title='Gemeinde'>"; 108 93 if ($showkey) {echo "<span class='key'>".$gem."</span><br>";} 109 echo $row["gnam"]." </td>"; 110 111 echo "\n\t\t<td title='Straße'>"; 94 echo $row["gnam"]." </td>" 95 . "\n\t\t<td title='Straße'>"; 112 96 if ($showkey) {echo "<span class='key'>".$lage."</span><br>";} 113 echo "<span class='wichtig'>".$snam."</span>"; 114 115 echo " </td>"; 116 echo "\n\t</tr>"; 117 echo "\n\t</table>"; 97 echo "<span class='wichtig'>".$snam."</span>" 98 . " </td>" 99 ."\n\t</tr>" 100 ."\n\t</table>"; 118 101 119 102 echo "\n\t</td>\n\t<td>"; … … 122 105 $ogml=$row["ogml"]; // ID von "Lage Ohne HsNr" 123 106 if ($ogml != "") { 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>"; 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>"; 130 112 } 131 113 … … 135 117 136 118 // F L U R S T U E C K E 137 echo "\n\n<a name='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n";119 echo "\n\n<a id='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstücke</h3>\n"; 138 120 echo "\n<p>Zusammenfassung von 'Lage mit Hausnummer' und 'Lage ohne Hausnummer' an dieser StraÃe</p>"; 139 121 … … 141 123 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer > = Strasse 142 124 // Suchkriterium: gml_id aus Katalog 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 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) 152 127 JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 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;"; 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;"; 156 136 157 137 $v=array($gmlid); … … 163 143 } 164 144 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>";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>"; 174 154 $j=0; 175 155 $cnths=0; // Count Haus … … 184 164 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 185 165 $lgml=$rowf["lgml"]; // ID von "Lage Mit" oder leer 186 187 echo "\n<tr>"; 188 189 echo"\n\t<td>";166 $ltyp=$rowf["ltyp"]; // mit/ohne HsNr 167 168 echo "\n<tr>" 169 ."\n\t<td>"; 190 170 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 191 171 if ($gwgmkg != $gmkg) { … … 204 184 } 205 185 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 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 213 193 if ($lgml != '') { 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";} 194 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=".$ltyp."&gmlid=".$lgml; 195 if ($showkey) {echo "&showkey=j";} 217 196 echo "' title='Lage Mit Hausnummer'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 218 197 $cnths++; 219 198 } 220 199 200 // Link FlurstÃŒcksnachweis 221 201 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 222 if ($idanzeige) {echo "&id=j";} 223 if ($showkey) {echo "&showkey=j";} 202 if ($showkey) {echo "&showkey=j";} 224 203 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 225 226 echo "\n\t\t</p>\n\t</td>"; 227 echo "\n</tr>"; 204 echo "\n\t\t</p>\n\t</td>" 205 ."\n</tr>"; 228 206 $j++; 229 207 } … … 231 209 if ($j > 6) { 232 210 echo "<p class='cnt'>".$j." Flurstücke"; 233 if ($cnths > 4) { 234 echo ", ".$cnths." Häuser"; 235 } 211 if ($cnths > 4) {echo ", ".$cnths." Häuser";} 236 212 echo "</p>"; 237 213 } … … 239 215 ?> 240 216 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> 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> 249 223 250 224 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Note: See TracChangeset
for help on using the changeset viewer.