Changeset 278 for trunk/mapbender/http/nav
- Timestamp:
- 04/26/13 13:52:56 (11 years ago)
- Location:
- trunk/mapbender/http/nav
- Files:
-
- 2 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/mapbender/http/nav/alkisnav.css
r140 r278 4 4 2011-11-09 Historie, dbg 5 5 2011-12-09 p.nam 6 2012-12-13 td.hsnro 7 2013-04-19 frames hoeher 6 8 */ 7 9 body,p,a,.textfield,.sbutton {font-family: Verdana, Arial, Helvetica, sans-serif;} … … 14 16 p.err {font-size: 11px; color: red;} /* Fehler -> Anwender */ 15 17 p.dbg {font-size: 10px; color: gray;} /* Debug -> Entwickler */ 18 p.ein, p.anz, p.blt {font-size: 9px; text-align: right;} /* Einleitung, Anzahl am Ende, BlÀttern weitere ... */ 19 p.ein {color: navy; font-weight: bold;} 20 p.anz, p.blt {color: purple;} 16 21 17 a {text-decoration: none;} /* font-size: 11px; */22 a {text-decoration: none;} 18 23 a:hover, a:active {color: red;} 19 24 a.hislnk {color: gray; font-style: italic; text-align: right; padding-left: 50px;} /* Link zur Historie */ 25 a.hsnro {color: gray; font-style: italic;} /* HsNr ohne Haus */ 26 a.blt {color: maroon; background-color: yellow;} /* Link weitere ... */ 20 27 21 28 /* abgestuft eingerueckte Treffer in der Suche */ 22 29 div {margin: 0px; padding: 0px;} 23 30 div.back {font-size: 10px; color: gray; border-bottom: 1px dotted gray;} 24 /* div.nam 31 /* div.nam {color: maroon;} Name */ 25 32 div.ga {color: fuchsia; margin-left: 0px; margin-top: 6px;} /* GB-Amtsgericht */ 26 33 div.gm {color: green; margin-left: 0px; margin-top: 6px;} /* Gemeinde */ … … 34 41 35 42 div.stu {color: maroon; font-size: 13px;} /* Strasse - Ueberschrift */ 36 div.stl {color: maroon; font-size: 11px; margin-top: 3px;} /* Strasse - Liste */43 div.stl {color: maroon; font-size: 11px; margin-top: 3px;} /* Strasse - Liste */ 37 44 td.hsnr {font-size: 11px; text-align: center; padding-left: 4px; padding-right: 4px;} /* Hausnummer */ 38 45 hr {color: gray;} 39 46 40 .textfield{ 41 border: 1px solid #990000; 42 height: 20px; 43 width: 140px; 44 background: #FFFFFF; 45 } 46 .sbutton{font-size: 11px; 47 font-weight: normal; 48 border: solid thin; 49 width: 22px; 50 height: 20px; 51 background: #6699FF; 52 } 47 dfn.title {color: maroon; font-size: 10px; text-align: right; padding-left: 8px; padding-right: 4px;} 48 49 .textfield {border: 1px solid #990000; height: 20px; width: 140px; background: #FFFFFF;} 50 .sbutton{font-size: 11px; font-weight: normal; border: solid thin; 51 width: 22px; height: 20px; background: #6699FF;} 53 52 img.nwlink {border: 0px; margin: 0px; padding: 0px;} /* Icons mit Link zum Buch-Nachweis */ 54 53 .letter {cursor: pointer; font-weight: bold;} /* Liste Anfangsbuchstaben */ … … 56 55 /* Registertabs */ 57 56 /* ul in einem <div id='tabs' */ 58 div#tabs ul { 59 position: absolute; top: 0px; 57 div#tabs ul {position: absolute; top: 0px; 60 58 margin-top: 0px; margin-left: 0px; margin-bottom: 20px; 61 padding: 0px; 62 width: 220px; 63 text-align: left; 64 border: 0px dashed #00aa00; 65 } 59 padding: 0px; width: 220px; text-align: left; border: 0px dashed #00aa00;} 66 60 div#tabs li { 67 61 cursor: pointer; … … 82 76 div#tabs li.aktiveTab { 83 77 background-image: url(./img/tab_bg_rot.gif); /* aktive Tabs rot */ 84 background-color: #F9F9F9; 85 border-bottom-color: #F9F9F9; /* nicht sichtbar, wie Hintergrund */ 78 background-color: #F9F9F9; border-bottom-color: #F9F9F9; /* nicht sichtbar, wie Hintergrund */ 86 79 } 87 80 88 /* passt in Mapbender 2.5: tabs width=280, tab_frameHeight[n]=360 */ 89 iframe.OuterFrame{ 90 width: 250px; height: 330px; 91 padding: 0px; margin: 0px; 92 border: 0px dotted #ff0000; 93 overflow: hidden; 94 background-color: white; 95 } 81 /* Anpassen an width des Tab in Mapbender */ 82 /* in alkisnav.htm */ 83 /* ALT: OuterFrame: height: 350px; ResultFrame: height: 240px; */ 84 iframe.OuterFrame{width: 225px; height:400px; padding: 0px; margin: 0px; 85 border: 0px dotted #ff0000; overflow: hidden; background-color: white;} 96 86 form.nav {position: absolute; top: 22px;} 97 iframe.ResultFrame { 98 position: absolute; top: 78px; 99 width: 235px; height: 220px; 100 padding: 0px; margin: 0px; 101 border: 0px dotted #00ff00; 102 } 87 iframe.ResultFrame {position: absolute; top: 78px; width: 220px; height: 290px; 88 padding: 0px; margin: 0px; border: 0px dotted #00ff00;} -
trunk/mapbender/http/nav/alkisnav.htm
r95 r278 19 19 // Parameter fuer Mandant aus url lesen 20 20 // &gkz=150&gemeinde=40&test=ja 21 var parms = location.search.split("&"); 22 var arr = parms[0].split("=", 2); 21 var parms = location.search.split("&"); // 0: "?gkz=150" 1: "gemeinde=40" 2: "test=ja" 22 var arr = parms[0].split("=", 2); // 0: "?gkz" 1: "150" 23 23 var gkz = "000"; 24 24 if(arr[0] == "?gkz") {gkz = arr[1];} … … 32 32 33 33 <script type="text/javascript" language="JavaScript"> 34 document.writeln("<!-- gkz=" + gkz + " gemeinde=" + gem + " -->");34 document.writeln("<!-- gkz=" + gkz + " gemeinde=" + gem + " -->"); 35 35 // Rahmen mit Form und ResultFrame 36 36 document.writeln("<iframe frameborder='0' name='OuterFrame' src='alkisnav_eig.htm?gkz=" + gkz + "&gemeinde=" + gem + "' class='OuterFrame' scrolling='auto'></iframe>"); -
trunk/mapbender/http/nav/alkisnav_adr.php
r276 r278 1 1 <?php 2 2 /* Version vom 3 2011-04-11 epsg in Link, transform nur wenn notwendig 4 2011-07-25 PostNAS 0.5/0.6 Versionen unterscheiden 5 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight 6 2011-12-09 Sonderfall PostNAS 0.5 raus, 7 2012-12-03 A.E.: Ausgabe von Hausnr ohne Gebaeude 8 2013-01-15 F.J.: HsNr ohne GebÀude auf NRW/krz-Daten anpassen 9 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4 3 2011-04-11 epsg in Link, transform nur wenn notwendig 4 2011-07-25 PostNAS 0.5/0.6 Versionen unterscheiden 5 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight 6 2011-12-09 Sonderfall PostNAS 0.5 raus, 7 2012-12-03 A.E.: Ausgabe von Hausnr ohne Gebaeude 8 2013-01-15 F.J.: HsNr ohne GebÀude auf NRW/krz-Daten anpassen 9 2013-04-26 "import_request_variables" entfÀllt in PHP 5.4. 10 ZurÃŒck-Link, Titel der Transaktion anzeigen 10 11 11 12 ToDo: 12 - auskommentierte Variante mit "subquery" entfernen13 13 - Eingabe aus "Balken" von Buchauskunft "Lage" zulassen: Numerisch: Gem-Str-Haus-lfd 14 14 Analog zur Zerlegung des FS-Kennz in _fls … … 20 20 $con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password; 21 21 $con = pg_connect ($con_string) or die ("Fehler bei der Verbindung zur Datenbank ".$$dbname.$dbvers.$gkz); 22 ?> 22 echo <<<END 23 23 24 24 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> … … 31 31 <title>ALKIS-Suche Adressen</title> 32 32 <link rel="stylesheet" type="text/css" href="alkisnav.css"> 33 <script type='text/javascript'> 34 function transtitle (trans) { // Titel der letzten Transaktion anzeigen 35 document.getElementById('transaktiontitle').innerHTML = trans; 36 } 37 </script> 33 38 </head> 34 39 <body> 35 <?php 40 <a title="zurück" href='javascript:history.back()'> 41 <img src="ico/zurueck.ico" width="16" height="16" alt="<<" /> 42 </a> 43 <dfn class='title' id='transaktiontitle'></dfn> 44 45 END; 36 46 37 47 function suchStrName() { … … 92 102 } 93 103 if($cnt == 0) { 94 echo "<p >Keine Straße.</p>";104 echo "<pclass='anz'>Keine Straße</p>"; 95 105 } elseif($cnt == 1) { // Eindeutig 96 106 $str_schl=$gkey; // dann gleich weiter 97 107 } elseif($cnt >= $linelimit) { 98 echo "<p>.. und weitere</p>"; 99 } 108 echo "<p class='anz'>".$cnt." Straßen ... und weitere</p>"; 109 } elseif ($cnt > 1) { 110 echo "\n<p class='anz'>".$cnt." Straßen</p>"; 111 } 100 112 return; 101 113 } … … 157 169 } 158 170 if($cnt == 0) { 159 echo "\n<p >Keine Straße mit Schlüssel ".$match."</p>";171 echo "\n<p class='anz'>Keine Straße mit Schlüssel ".$match."</p>"; 160 172 } elseif($cnt == 1) { // Eindeutig 161 173 $str_schl=$gkey; // dann gleich weiter 162 } elseif ($cnt >= $linelimit) {163 echo "\n<p> .. und weitere</p>";164 } else {165 echo "\n<p class=' hilfe'>".$cnt." Straßen</p>";174 } elseif ($cnt >= $linelimit) { 175 echo "\n<p>".$cnt." Straßen ... und weitere</p>"; 176 } elseif ($cnt > 1) { 177 echo "\n<p class='anz'>".$cnt." Straßen</p>"; 166 178 } 167 179 return; … … 170 182 function suchHausZurStr($showParent){ 171 183 // Haeuser zu einer Strasse 172 global $con, $str_schl, $gkz, $scalestr, $scalehs, $epsg, $gemeinde, $epsg, $gfilter, $ hausnummernohnegebaeude, $debug;184 global $con, $str_schl, $gkz, $scalestr, $scalehs, $epsg, $gemeinde, $epsg, $gfilter, $debug; 173 185 // Strasse zum Strassenschluessel 174 186 $sql ="SELECT g.bezeichnung AS gemname, k.bezeichnung, k.land, k.regierungsbezirk, k.kreis, k.gemeinde, k.lage "; … … 216 228 if ($x > 0) { // Koord. bekommen? 217 229 echo "\n\t<a title='Positionieren 1:".$scalestr."' href='javascript:"; // mit Link 230 echo "transtitle(\"auf Straße positioniert\"); "; 218 231 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalestr."); "; 219 232 echo "parent.parent.showHighlight(".$x.",".$y."); "; 220 echo "document.location.href=\"".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&str_schl=".$str_schl."\"' "; 233 //echo "document.location.href=\"".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&str_schl=".$str_schl."\""; 234 echo "' "; // end href 221 235 echo "\n\t\tonmouseover='parent.parent.showHighlight(" .$x. "," .$y. ")' "; 222 236 echo "\n\t\tonmouseout='parent.parent.hideHighlight()'"; … … 252 266 /* Version mit // Subquery 253 267 Liefert Informationen ÃŒber GebÀude zur Hausnummer. LÀuft aber spÃŒrbar langsamer. 254 255 268 $sql.="FROM ap_pto p JOIN alkis_beziehungen v ON p.gml_id = v.beziehung_von "; 256 269 $sql.="JOIN ax_lagebezeichnungmithausnummer h ON v.beziehung_zu = h.gml_id "; … … 259 272 $sql.="ON h.gml_id = subq.zu WHERE v.beziehungsart='dientZurDarstellungVon' AND p.art = 'HNR' "; 260 273 $sql.="AND h.land= $1 AND h.regierungsbezirk= $2 AND h.kreis= $3 AND h.gemeinde= $4 AND h.lage= $5 "; 261 $sql.="ORDER BY lpad(split_part(hausnummer,' ',1), 4, '0'), split_part(hausnummer,' ',2);"; 262 */ 274 $sql.="ORDER BY lpad(split_part(hausnummer,' ',1), 4, '0'), split_part(hausnummer,' ',2);"; */ 275 263 276 // Version ohne Subquery 264 277 $sql.="FROM ap_pto p JOIN alkis_beziehungen v ON p.gml_id = v.beziehung_von "; … … 292 305 // echo "<a".$cls." href='"; 293 306 echo "<a href='"; 294 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalehs."); "; 307 echo "javascript:"; 308 echo "transtitle(\"auf Haus positioniert\"); "; 309 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalehs."); "; 295 310 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 296 311 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; … … 308 323 if($count > 0) {echo "\n</tr>";} 309 324 echo "\n</table>"; 310 echo "\n<p class=' hilfe'>".$cnt." Hausnummern</p>";325 echo "\n<p class='anz'>".$cnt." Hausnummern</p>"; 311 326 } else { 312 echo "\n<p class=' err'>Keine Straße.</p>";327 echo "\n<p class='anz'>Keine Straße</p>"; 313 328 } 314 329 return; … … 318 333 // =========== 319 334 if(isset($epsg)) { 320 if ($debug >= 2) {echo "\n<p>aktueller EPSG='".$epsg."'</p>";} // aus MB335 #if ($debug >= 2) {echo "\n<p>aktueller EPSG='".$epsg."'</p>";} // aus MB 321 336 $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); 322 337 } else { 323 if ($debug >= 1) {echo "\n<p class='err'>kein EPSG gesetzt</p>";}338 #if ($debug >= 1) {echo "\n<p class='err'>kein EPSG gesetzt</p>";} 324 339 $epsg=$gui_epsg; // aus Conf 325 340 } 326 if ($debug >= 2) { 327 echo "<p>Filter Gemeinde = ".$gemeinde."</p>"; 328 } 341 #if ($debug >= 2) {echo "<p>Filter Gemeinde = ".$gemeinde."</p>";} 329 342 if ($gemeinde == "") { 330 343 $gfilter = 0; // ungefiltert … … 335 348 } 336 349 if (isset($str_schl)) { // aus Link 337 if ($debug >= 2) {echo "\n<p>Link Strassenschluessel '".$str_schl."'</p>";}350 $trans="Hausnummern zur Straße"; 338 351 suchHausZurStr(true); 339 352 } elseif(isset($street)) { // Eingabe in Form 340 if (trim($street, "*,0..9") == "") { // Zahl mit Wildcard341 if ($debug >= 2) {echo "\n<p>Suche Key='".$street."'</p>";}342 suchStrKey(); // Suche nach Schluessel353 if (trim($street, "*,0..9") == "") { // Zahl, ggf. mit Wildcard 354 $trans="Suche Straßenschlüssel \"".$street."\""; 355 suchStrKey(); 343 356 } else { 344 if ($debug >= 2) {echo "\n<p>Suche Name='".$street."'</p>";}345 suchStrName(); // Suche nach Name357 $trans="Suche Straßenname \"".$street."\""; 358 suchStrName(); 346 359 } 347 360 if(isset($str_schl)) { // Eindeutiges Ergebnis 348 if ($debug >= 2) {echo "\n<p>weitere Suche Haus zu ='".$str_schl."'</p>";}361 $trans="1 Straße gefunden, Hausnummern"; 349 362 suchHausZurStr(false); 350 363 } 351 364 } 365 // Titel im Kopf anzeigen 366 echo "\n<script type='text/javascript'>\n\ttranstitle('".$trans."')\n</script>"; 367 352 368 ?> 353 369 -
trunk/mapbender/http/nav/alkisnav_eig.php
r276 r278 1 1 <?php 2 /* Version vom 2 /* Version vom 3 3 24.10.2011 Nach Pos-Klick Highlight erneuern statt hideHighlight 4 4 17.11.2011 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster … … 8 8 Format css Person (Rahmen). 9 9 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4 10 ToDo: Auf der Stufe 2 "getGBbyPerson" noch Filtern nach Gemeinde 10 2013-04-26 Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung". 11 Stufe 2: GB *und* FS mit einem Klick anzeigen. 12 BlÀtterfunktion (Folgeseiten) fÃŒr lange Listen. 13 Function extern gemeinsam genutzt in _eig und _grd. 14 Dazu Var-Namen harmonisieren: $gb wird $blattgml. 15 ZurÃŒck-Link, Titel der Transaktion anzeigen. 11 16 */ 12 17 $cntget = extract($_GET); 13 include("../../conf/alkisnav_conf.php"); 18 include("../../conf/alkisnav_conf.php"); // Konfigurations-Einstellungen 19 include("alkisnav_fkt.php"); // Funktionen 14 20 $con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password; 15 21 $con = pg_connect ($con_string) or die ("<p class='err'>Fehler bei der Verbindung zur Datenbank</p>".$dbname.$dbvers.$gkz); 16 ?> 17 22 echo <<<END 18 23 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 19 24 <html> … … 30 35 window.open(link,'','left=10,top=10,width=620,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes'); 31 36 } 37 function transtitle(trans) { 38 document.getElementById('transaktiontitle').innerHTML = trans; 39 } 32 40 </script> 33 41 </head> 34 42 <body> 35 36 <?php 37 38 function getEigByName() { 39 // 1 ============================= 40 // Eigentuemer nach Name(-nsanfang) 41 // =============================== 42 global $gkz, $gemeinde, $epsg, $con, $name, $person, $gb, $gfilter, $persfilter, $auskpath; 43 $linelimit=120; 44 $arr = explode(",", $name); 45 $name0 = trim($arr[0]); 46 $name1 = trim($arr[1]); 47 if(preg_match("/\*/",$name0)){ 48 $match = trim(preg_replace("/\*/i","%", strtoupper($name0))); 49 } else { 50 $match = trim($name0)."%"; 51 } 52 if(preg_match("/\*/",$name1)){ 53 $match1 = trim(preg_replace("/\*/i","%", strtoupper($name1))); 54 } else { 55 $match1 = trim($name1)."%"; 56 } 57 58 $sql ="SELECT p.nachnameoderfirma, p.vorname, p.gml_id FROM ax_person p "; 59 60 if ($persfilter and ($gfilter > 0)) { 61 $sql.="JOIN gemeinde_person g ON p.gml_id = g.person WHERE "; 62 switch ($gfilter) { 63 case 1: // Einzelwert 64 $sql.="g.gemeinde=".$gemeinde." AND "; break; 65 case 2: // Liste 66 $sql.="g.gemeinde in (".$gemeinde.") AND "; break; 67 } 68 } else { 69 $sql.="WHERE "; 70 } 71 if($match1 != '%'){ 72 $sql.="nachnameoderfirma ILIKE $1 AND p.vorname ILIKE $2 "; 73 $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $3 ;"; 74 $v=array($match, $match1, $linelimit); 75 }else{ 76 $sql.="nachnameoderfirma ILIKE $1 "; 77 $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $2 ;"; 78 $v=array($match, $linelimit); 79 } 80 $res=pg_prepare("", $sql); 81 $res=pg_execute("", $v); 82 if (!$res) { 83 echo "\n<p class='err'>Fehler bei Eigentümer</p>"; 84 return; 85 } 86 $cnt = 0; 87 while($row = pg_fetch_array($res)) { 88 $nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); 89 $vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); 90 $gml=$row["gml_id"]; 91 // Link zur Auskunft Person +++ Icon differenzieren? Firma/Person 92 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisnamstruk.php?gkz=".$gkz."&gemeinde=".$gemeinde."&gmlid=".$gml."\")'>"; 93 echo "\n\t\t<img class='nwlink' src='ico/Eigentuemer.ico' width='16' height='16' alt='EIG'>"; 94 echo "\n\t</a> "; 95 echo "\n<a title='Person' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$gml."&name=".$nnam."'>".$nnam.", ".$vnam."</a>\n<br>"; 96 $cnt++; 97 } 98 if($cnt == 0){ 99 echo "\n<p class='err'>Keine Person.</p>"; 100 } elseif($cnt >= $linelimit) { 101 echo "\n<p title='Bitte den Namen eindeutiger qualifizieren'>... und weitere</p>"; 102 } elseif($cnt == 1){ // Eindeutig! 103 $person = $gml; 104 } 105 return; 106 } 107 108 function getGBbyPerson() { 109 // 2 ================================= 110 // GrundbÃŒcher zur gewÀhlten Person 111 // =================================== 112 global $gkz, $gemeinde, $epsg, $con, $name, $person, $gb, $auskpath; 113 $linelimit=120; 43 <a title="zurück" href='javascript:history.back()'> 44 <img src="ico/zurueck.ico" width="16" height="16" alt="<<" /> 45 </a> 46 <dfn class='title' id='transaktiontitle'></dfn> 47 48 END; 49 50 // Einen Link generieren, um nach anderen Personen mit gleichem Familiennamen zu suchen 51 function familiensuche() { 52 global $gkz, $gemeinde, $epsg, $name; // $debug 114 53 if(isset($name)) { // Familiensuche 115 54 echo "\n<div class='back' title='Andere Personen mit diesem Nachnamen'>"; … … 118 57 echo "\n</div>\n<br>"; 119 58 } 120 $sql="SELECT p.nachnameoderfirma, p.vorname, p.geburtsdatum, p.namensbestandteil, "; 59 return; 60 } 61 62 // Adresse und Geburtsdatum der aktuellen Person ausgeben 63 function personendaten() { 64 global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath; // $debug 65 $sql ="SELECT p.nachnameoderfirma, p.vorname, p.geburtsdatum, p.namensbestandteil, "; 121 66 $sql.="a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer "; 122 67 $sql.="FROM ax_person p "; 123 $sql.="JOIN alkis_beziehungen b ON p.gml_id=b.beziehung_von "; 124 $sql.="JOIN ax_anschrift a ON a.gml_id=b.beziehung_zu "; 125 $sql.="WHERE p.gml_id= $1 AND b.beziehungsart='hat';"; 68 $sql.="LEFT JOIN alkis_beziehungen b ON p.gml_id=b.beziehung_von "; 69 $sql.="LEFT JOIN ax_anschrift a ON a.gml_id=b.beziehung_zu "; 70 #sql.="WHERE p.gml_id= $1 AND b.beziehungsart='hat';"; // passt nicht zum LEFT 71 $sql.="WHERE p.gml_id= $1 ;"; 126 72 $v=array($person); 127 73 $res=pg_prepare("", $sql); 128 74 $res=pg_execute("", $v); 129 if (!$res) {echo "\n<p class='err'>Fehler bei Name</p>\n";} 130 // Daten der Person 75 if (!$res) { 76 echo "\n<p class='err'>Fehler bei Name</p>\n"; 77 } 131 78 echo "\n\t<table>\n\t<tr>\n\t\t<td valign='top'>"; 132 79 // Sp. 1: Icon, Link zur Auskunft Person … … 148 95 } 149 96 echo "\n\t</p></td></tr>\n\t</table>"; 150 97 return; 98 } 99 100 function getEigByName() { 101 // 1 ============================= 102 // Eigentuemer nach Name(-nsanfang) 103 // =============================== 104 global $gkz, $gemeinde, $epsg, $name, $person, $gfilter, $auskpath; 105 $linelimit=150; 106 107 $arr = explode(",", $name); 108 $name0 = trim($arr[0]); 109 $name1 = trim($arr[1]); 110 if(preg_match("/\*/",$name0)){ 111 $match = trim(preg_replace("/\*/i","%", strtoupper($name0))); 112 } else { 113 $match = trim($name0)."%"; 114 } 115 if(preg_match("/\*/",$name1)){ 116 $match1 = trim(preg_replace("/\*/i","%", strtoupper($name1))); 117 } else { 118 $match1 = trim($name1)."%"; 119 } 120 $sql ="SELECT p.nachnameoderfirma, p.vorname, p.gml_id FROM ax_person p "; 121 if ($gfilter > 0) { 122 $sql.="JOIN gemeinde_person g ON p.gml_id = g.person WHERE "; 123 switch ($gfilter) { 124 case 1: // Einzelwert 125 $sql.="g.gemeinde=".$gemeinde." AND "; break; 126 case 2: // Liste 127 $sql.="g.gemeinde in (".$gemeinde.") AND "; break; 128 } 129 } else { 130 $sql.="WHERE "; 131 } 132 if($match1 != '%'){ 133 $sql.="nachnameoderfirma ILIKE $1 AND p.vorname ILIKE $2 "; 134 $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $3 ;"; 135 $v=array($match, $match1, $linelimit); 136 }else{ 137 $sql.="nachnameoderfirma ILIKE $1 "; 138 $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $2 ;"; 139 $v=array($match, $linelimit); 140 } 141 $res=pg_prepare("", $sql); 142 $res=pg_execute("", $v); 143 if (!$res) { 144 echo "\n<p class='err'>Fehler bei Eigentümer</p>"; 145 return; 146 } 147 $cnt = 0; 148 while($row = pg_fetch_array($res)) { 149 $nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); 150 $vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); 151 $gml=$row["gml_id"]; 152 // Link zur Auskunft Person +++ Icon differenzieren? Firma/Person 153 echo "\n<br>\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisnamstruk.php?gkz=".$gkz."&gemeinde=".$gemeinde."&gmlid=".$gml."\")'>"; 154 echo "\n\t\t<img class='nwlink' src='ico/Eigentuemer.ico' width='16' height='16' alt='EIG'>"; 155 echo "\n\t</a> "; 156 echo "\n<a title='Person' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$gml."&name=".$nnam."'>".$nnam.", ".$vnam."</a>"; 157 $cnt++; 158 } 159 if($cnt == 0){ 160 echo "\n<p class='anz'>Kein Eigentümer gefunden.</p>"; 161 } elseif($cnt >= $linelimit) { // das Limit war zu knapp 162 echo "\n<p class='anz' title='Bitte den Namen eindeutiger qualifizieren'>... und weitere</p>"; 163 } elseif($cnt == 1){ // Eindeutig! 164 $person = $gml; 165 } else { 166 echo "\n<p class='anz'>".$cnt." Eigentümer mit '".$name."'</p>"; // im Limit 167 } 168 return; 169 } 170 171 function getGBbyPerson() { 172 // 2 ================================= 173 // GrundbÃŒcher zur gewÀhlten Person 174 // =================================== 175 // Es wird in dieser Function nicht geprÃŒft, ob die gefundenen GrundbÃŒcher auch FlurstÃŒcke 176 // haben, die im gefilterten Bereich (Gemeinde) liegen. Es können daher Sackgassen entstehen, 177 // also GrundbÃŒcher, die in der nÀchsten Stufe bei Filterung nicht zu Treffern fÃŒhren. 178 // Das Joinen bis zum FS unter BerÃŒcksichtigung von speziellen Buchungen ist zu aufwÀndig. 179 // Dann kann entweder das FS gleich mit ausgegeben werden -> getGBuFSbyPerson. 180 // Alternativ wÃŒrde eine Hilfstabelle benötigt, in der im PostProcessing 181 // das GB-zu-Gemeinde-VerhÀltnis vorbereitet wird. 182 global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath, $debug, $bltbez, $bltblatt, $bltseite; 183 $linelimit=150; 184 $linelimit=15; // +++ TEST +++ 185 familiensuche(); 186 personendaten(); 187 #if ($debug > 0) {echo "\n<p>Nur Grundbücher</p>"; } 151 188 // Suche nach GrundbÃŒchern der Person 152 $sql ="SELECT g .gml_id AS gml_g, g.buchungsblattnummermitbuchstabenerweiterung as nr, b.bezeichnung AS beznam ";189 $sql ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezeichnung AS beznam "; 153 190 $sql.="FROM alkis_beziehungen bpn "; 154 191 $sql.="JOIN ax_namensnummer n ON bpn.beziehung_von=n.gml_id "; 155 192 $sql.="JOIN alkis_beziehungen bng ON n.gml_id=bng.beziehung_von "; 156 $sql.="JOIN ax_buchungsblatt g ON bng.beziehung_zu=g.gml_id ";157 $sql.="JOIN ax_buchungsblattbezirk b ON g .land = b.land AND g.bezirk = b.bezirk ";193 $sql.="JOIN ax_buchungsblatt gb ON bng.beziehung_zu=gb.gml_id "; 194 $sql.="JOIN ax_buchungsblattbezirk b ON gb.land = b.land AND gb.bezirk = b.bezirk "; 158 195 $sql.="WHERE bpn.beziehung_zu= $1 AND bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' "; 159 $sql.="ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung LIMIT $2 ;"; 196 if ($bltbez.$bltblatt != "") { // BlÀttern, Fortsetzen bei ... 197 $sql.="AND ((b.bezeichnung > '".$bltbez."') "; 198 $sql.="OR (b.bezeichnung = '".$bltbez."' AND gb.buchungsblattnummermitbuchstabenerweiterung > '".$bltblatt."')) "; 199 } 200 $sql.="ORDER BY b.bezeichnung, gb.buchungsblattnummermitbuchstabenerweiterung LIMIT $2 ;"; 201 202 if ($bltseite == "") { // Seite 1 203 $bltseite = 1; 204 } else { // Folgeseite 205 echo "\n<p class='ein'>Teil ".$bltseite; 206 } 160 207 $v=array($person, $linelimit); 161 208 $res=pg_prepare("", $sql); … … 169 216 $gml=$row["gml_g"]; 170 217 $beznam=$row["beznam"]; 171 $ nr=$row["nr"];218 $blatt=$row["blatt"]; 172 219 echo "\n<div class='gb'>"; 173 220 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gemeinde=".$gemeinde."&gmlid=".$gml."\")'>"; 174 221 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>"; 175 222 echo "\n\t</a> "; 176 echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."& gb=".$gml."&person=".$person."'> Blatt ".$nr." </a>";223 echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$gml."&person=".$person."'> Blatt ".$blatt." </a>"; 177 224 echo "\n</div>"; 178 225 $cnt++; 179 226 } 180 if($cnt == 0) {181 echo "\n<p class=' err'>Kein Grundbuch.</p>";227 if($cnt == 0) { 228 echo "\n<p class='anz'>Kein Grundbuch zum Eigentümer</p>"; 182 229 } elseif($cnt >= $linelimit) { 183 echo "\n<p>... und weitere</p>"; 184 } elseif($cnt == 1){ // Eindeutig! 185 $gb=$gml; // dann Stufe 3 gleich nachschieben 230 echo "\n<p class='blt'>".$cnt." Grundb. zum Eigent."; 231 $nxtbltbez=urlencode($beznam); 232 $nxtbltblatt=urlencode($blatt); 233 $nxtbltseite=$bltseite + 1; 234 echo "\n - <a class='blt' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$person."&bltbez=".$nxtbltbez."&bltblatt=".$nxtbltblatt."&bltseite=".$nxtbltseite."' "; 235 echo "title='Blättern ab ".htmlentities($beznam)." Blatt ".$blatt."'>weitere</a>"; 236 echo "</p>"; 237 } elseif($cnt == 1) { // Eindeutig! 238 $blattgml=$gml; // dann Stufe 3 gleich nachschieben 239 } else { 240 echo "\n<p class='anz'>".$cnt." Grundbücher zum Eigentümer</p>"; 186 241 } 187 242 return; 188 243 } 189 244 190 245 function getFSbyGB($backlink) { 191 246 // 3 ================================= 192 247 // FlurstÃŒcke zum gewÀhlten Grundbuch 193 248 // =================================== 194 global $gkz, $gemeinde, $con, $name, $person, $gb, $scalefs, $auskpath, $epsg, $gfilter, $persfilter; 195 $linelimit=120; 196 197 if($backlink) { 249 // Zu einem Grundbuch (gml_id als Parameter) werden alle darauf gebuchten FlurstÃŒcke gesucht. 250 // Im ersten Schritt sind das direkt gebuchten FlurstÃŒcke. 251 // Im zweiten Schritt wird gesucht nach Rechten einer Buchungstelle des durchsuchten Blattes an anderen 252 // Buchungstellen. Es werden dann die FlurstÃŒcke darauf gelistet. 253 global $gkz, $gemeinde, $name, $person, $blattgml, $scalefs, $auskpath, $epsg, $gfilter, $debug; 254 $linelimit=150; 255 if($backlink) { // Erneuter Ansatz bei Person oder GB möglich. 256 257 // Namen ermitteln 258 $sql ="SELECT nachnameoderfirma, vorname FROM ax_person WHERE gml_id = $1 "; 259 $v=array($person); 260 $res=pg_prepare("", $sql); 261 $res=pg_execute("", $v); 262 if (!$res) { 263 echo "\n<p class='err'>Fehler bei Eigentümer</p>"; 264 } 265 $row = pg_fetch_array($res); // nur eine Zeile 266 $nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); 267 $vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); 198 268 echo "\n\t<div class='back' title='zurück zur Person'>"; 199 269 echo "\n\t\t<img class='nwlink' src='ico/Eigentuemer.ico' width='16' height='16' alt='EIG'> "; 200 270 echo "\n\t<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$person."'>"; 201 echo "zurück</a><br>";271 echo $nnam.", ".$vnam."</a><br>"; 202 272 echo "</div>"; 273 274 // Grundbuch-Daten ermitteln 275 $sql ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezeichnung AS beznam "; 276 $sql.="FROM ax_buchungsblatt gb JOIN ax_buchungsblattbezirk b ON gb.land = b.land AND gb.bezirk = b.bezirk "; 277 $sql.="WHERE gb.gml_id= $1 ;"; 278 $v=array($blattgml); 279 $res=pg_prepare("", $sql); 280 $res=pg_execute("", $v); 281 if (!$res) { 282 echo "\n<p class='err'>Fehler bei Grundbuch</p>"; 283 } 284 $row = pg_fetch_array($res); // nur eine Zeile 285 $gml=$row["gml_g"]; 286 $beznam=$row["beznam"]; 287 $blatt=$row["blatt"]; 203 288 echo "<div class='gb'>"; 204 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gmlid=".$ gb."\")'>";289 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gmlid=".$blattgml."\")'>"; 205 290 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>"; 206 echo "\n\t</a> Grundbuch";291 echo "\n\t</a> ".$beznam." Blatt ".$blatt; 207 292 echo "</div>"; 208 293 } 209 294 295 GB_Buchung_FS($linelimit); // Externe Function: Blatt > GrundstÃŒck > Flurst. 296 297 return; 298 } 299 300 function getGBuFSbyPerson() { 301 // 2 + 3 ========================================= 302 // GrundbÃŒcher UND FlurstÃŒcke zur gewÀhlten Person 303 // =============================================== 304 // Dies ist die Kombination von Stufe 2 (GrundbÃŒcher zur Person) und 3 (FlurstÃŒcke zum Grundbuch) 305 // in einem einzelnen Schritt. Wenn auf Gemeinde gefiltert wird, dann können in Stufe 2 (noch ohne Filter) 306 // auch GrundbÃŒcher gefunden werden, die dann auf Stufe 3 (mit Filter) keine FS liefern ("Sackgasse"!). 307 // Wenn aber per JOIN "GB -> FS -> Gemarkung -> Gemeinde" geprÃŒft wird, dann können 308 // die Daten ja auch gleich ausgegeben werden. 309 // FÃŒr FÀlle in denen nicht nach Gemeinde gefiltert wird (z.B. ganzer Kreis) kann weiter 310 // Stufe 2 und 3 nacheinander verwendet werden. Dies ist wahrscheinlich ÃŒbersichtlicher, 311 // weil "ungefiltert" in "2+3" zu lange Listen entstehen wÃŒrden, die durchblÀttert werden mÃŒssen. 312 global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath, $scalefs, $gfilter, $debug, $bltbez, $bltblatt, $bltbvnr, $bltseite, $bltrecht; 313 $linelimit=80; // als Limit "Anzahl FlurstÃŒcke" in den beiden folgenden Abfragen 314 // darf nun etwas knapper sein, weil man jetzt blÀttern kann 315 familiensuche(); 316 personendaten(); 317 318 // Wenn das Limit ÃŒberschritten wurde: zusÀtzliche Parameter "blt"=BlÀttern 319 // $bltbez = Bezirk-Name 320 // $bltblatt = BlattMitBuchstabe 321 // $bltbvnr = lfd.Nr der Buchungsstelle 322 // $bltseite = fortlaufende Seiten-Nr 323 // $bltrecht = "nur"/"ohne" liefert nur den abgebrochene Teil der Auflistung 324 210 325 // SQL-Bausteine vorbereiten 211 $sql1 ="SELECT s1.laufendenummer AS lfd, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, "; 326 // Direkte Buchungen suchen mit: $sql1 + $sqla1 + $sql2 327 // SonderfÀlle suchen mit: $sql1 + $sqlz + $sqla2 + $sql2 328 329 // Baustein: SQL-Anfang fuer beide Varianten 330 $sql1 ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezeichnung AS beznam, "; 331 $sql1.="s1.laufendenummer AS lfd, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, ot.gemarkung, ot.gemarkungsname, "; 212 332 if($epsg == "25832") { // Transform nicht notwendig 213 333 $sql1.="st_x(st_centroid(f.wkb_geometry)) AS x, "; 214 $sql1.="st_y(st_centroid(f.wkb_geometry)) AS y ,";334 $sql1.="st_y(st_centroid(f.wkb_geometry)) AS y "; 215 335 } else { 216 336 $sql1.="st_x(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS x, "; 217 $sql1.="st_y(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS y, "; 218 } 219 $sql1.="g.gemarkungsnummer, g.bezeichnung "; 220 $sql1.="FROM alkis_beziehungen vbg "; 221 $sql1.="JOIN ax_buchungsstelle s1 ON vbg.beziehung_von = s1.gml_id "; 222 223 // Zwischen-JOIN (zusÀtzlich nur bei zweiter Abfrage) 224 $sqlz ="JOIN alkis_beziehungen vss ON vss.beziehung_von = s1.gml_id "; 225 $sqlz.="JOIN ax_buchungsstelle s2 ON vss.beziehung_zu = s2.gml_id "; 226 227 $sqla1 ="JOIN alkis_beziehungen vfb ON s1.gml_id = vfb.beziehung_zu "; 228 $sqla2 ="JOIN alkis_beziehungen vfb ON s2.gml_id = vfb.beziehung_zu "; 229 230 $sql2.="JOIN ax_flurstueck f ON vfb.beziehung_von = f.gml_id "; 231 $sql2.="JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; 232 233 if ($persfilter and ($gfilter > 0)) { 234 $sql2.="JOIN gemeinde_gemarkung v ON g.land=v.land AND g.gemarkungsnummer=v.gemarkung "; 235 } 236 237 $sql2.="WHERE vbg.beziehung_zu= $1 AND vbg.beziehungsart='istBestandteilVon' AND vfb.beziehungsart='istGebucht' "; 238 239 if ($persfilter and ($gfilter > 0)) { 240 switch ($gfilter) { 241 case 1: // Einzelwert 242 $sql2.="AND v.gemeinde=".$gemeinde." "; break; 243 case 2: // Liste 244 $sql2.="AND v.gemeinde in (".$gemeinde.") "; break; 245 } 246 } 247 $sql2.="ORDER BY s1.laufendenummer, f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner LIMIT $2 ;"; 248 249 // Blatt <vbg/istBestandteilVon< Buchungsstelle <vfb/istGebucht< Flurstck. 250 $sql=$sql1.$sqla1.$sql2; // Direkte Buchungen 251 252 $v=array($gb, $linelimit); 253 $res=pg_prepare("", $sql); 254 $res=pg_execute("", $v); 255 if (!$res) { 256 echo "\n<p class='err'>Fehler bei Buchung und Flurstück.</p>"; 257 if ($debug >= 3) {echo "\n<p class='err'>".$sql."</p>";} 258 return; 259 } 260 $zfs1=0; 261 while($row = pg_fetch_array($res)) { 262 $fs_gml=$row["gml_id"]; 263 $bvnr=$row["lfd"]; 264 if ($bvnr > 0) {$bvnr=str_pad($bvnr, 4, "0", STR_PAD_LEFT);} else {$bvnr="";} 265 $gmkg=$row["bezeichnung"]; 266 $flur=$row["flurnummer"]; 267 $fskenn=$row["zaehler"]; 268 if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer 269 $x=$row["x"]; 270 $y=$row["y"]; 271 echo "\n<div class='fs'>"; 272 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; 273 echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; 274 echo "\n\t</a> "; 275 echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; 276 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 277 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 278 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; 279 echo "onmouseout='parent.parent.hideHighlight()'>"; 280 echo $bvnr." ".$gmkg." ".$flur."-".$fskenn."</a>"; 281 echo "\n</div>"; 282 $zfs1++; 283 } 284 285 // Zweite Abfrage (Variante) aus den Bausteinen zusammen bauen 286 // buchungsStelle2 < an < buchungsStelle1 287 $sql=$sql1.$sqlz.$sqla2.$sql2; // Rechte an 288 289 $v=array($gb, $linelimit); 290 $res=pg_prepare("", $sql); 291 $res=pg_execute("", $v); 292 if (!$res) { 293 echo "\n<p class='err'>Fehler bei Recht an Buchung.</p>"; 294 if ($debug >= 3) {echo "\n<p class='err'>".$sql."</p>";} 295 return; 296 } 297 $zfs2=0; 298 while($row = pg_fetch_array($res)) { 299 $fs_gml=$row["gml_id"]; 300 $bvnr=$row["lfd"]; 301 if ($bvnr > 0) {$bvnr=str_pad($bvnr, 4, "0", STR_PAD_LEFT);} else {$bvnr="";} 302 $gmkg=$row["bezeichnung"]; 303 $flur=$row["flurnummer"]; 304 $fskenn=$row["zaehler"]; 305 if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer 306 $x=$row["x"]; 307 $y=$row["y"]; 308 echo "\n<div class='fs'>"; 309 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; 310 echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; 311 echo "\n\t</a> "; 312 echo "\n\tRecht an <a title='Flurstück positionieren 1:".$scalefs."' href='"; 313 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 314 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 315 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; 316 echo "onmouseout='parent.parent.hideHighlight()'>"; 317 echo $bvnr." ".$gmkg." ".$flur."-".$fskenn."</a>"; 318 echo "\n</div>"; 319 $zfs2++; 320 } 321 322 if($zfs1 + $zfs2 == 0) { 323 echo "\n<p class='err'>Kein Flurstück im berechtigten Bereich.</p>"; 324 // echo "\n<p class='hilfe'>Hinweis: Sonderfälle wie 'Erbbaurecht' sind noch nicht umgesetzt.</p>"; 325 } elseif($zfs >= $linelimit) { 326 echo "\n<p>... und weitere</p>"; 327 } 337 $sql1.="st_y(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS y "; 338 } 339 $sql1.="FROM alkis_beziehungen bpn "; 340 $sql1.="JOIN ax_namensnummer nn ON bpn.beziehung_von=nn.gml_id "; 341 $sql1.="JOIN alkis_beziehungen bng ON nn.gml_id=bng.beziehung_von "; 342 $sql1.="JOIN ax_buchungsblatt gb ON bng.beziehung_zu=gb.gml_id "; 343 $sql1.="JOIN alkis_beziehungen vbg ON gb.gml_id=vbg.beziehung_zu "; 344 $sql1.="JOIN ax_buchungsstelle s1 ON vbg.beziehung_von=s1.gml_id "; 345 $sql1.="JOIN ax_buchungsblattbezirk b ON gb.land=b.land AND gb.bezirk=b.bezirk "; // quer-ab 346 347 // Baustein: Zwischen-JOIN (nur bei zweiter Abfrage) 348 $sqlz ="JOIN alkis_beziehungen vss ON vss.beziehung_von=s1.gml_id "; 349 $sqlz.="JOIN ax_buchungsstelle s2 ON vss.beziehung_zu=s2.gml_id "; 350 351 // Baustein: Auswahl 1 oder 2 352 $sqla1 ="JOIN alkis_beziehungen vfb ON s1.gml_id=vfb.beziehung_zu "; 353 $sqla2 ="JOIN alkis_beziehungen vfb ON s2.gml_id=vfb.beziehung_zu "; 354 355 // Baustein: SQL-Ende fuer beide Varianten 356 $sql2.="JOIN ax_flurstueck f ON vfb.beziehung_von=f.gml_id "; 357 $sql2.="JOIN pp_gemarkung ot ON f.land=ot.land AND f.gemarkungsnummer=ot.gemarkung "; // Ortsteil 358 $sql2.="WHERE bpn.beziehung_zu= $1 AND bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' "; 359 $sql2.="AND vbg.beziehungsart='istBestandteilVon' AND vfb.beziehungsart='istGebucht' "; 360 switch ($gfilter) { // Gemeinde-Filter 361 case 1: // Einzelwert 362 $sql2.="AND ot.gemeinde=".$gemeinde." "; break; 363 case 2: // Liste 364 $sql2.="AND ot.gemeinde in (".$gemeinde.") "; break; 365 } 366 $sql3 ="ORDER BY gb.bezirk, gb.buchungsblattnummermitbuchstabenerweiterung, cast(s1.laufendenummer AS integer), f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner LIMIT $2 ;"; 367 // Sortier-Problem: laufendenummer in varchar linksbÃŒndig 368 369 // Die Bausteine in 2 Varianten kombinieren 370 371 // BlÀttern mit folgenden Parametern: $bltbez, $bltblatt, $bltbvnr, $bltseite, $bltrecht 372 if ($bltbez.$bltblatt.$bltbvnr != "") { // BlÀttern, Fortsetzen bei ... 373 $bltwhere ="AND ((b.bezeichnung > '".$bltbez."') "; 374 $bltwhere.="OR (b.bezeichnung = '".$bltbez."' AND gb.buchungsblattnummermitbuchstabenerweiterung > '".$bltblatt."') "; 375 $bltwhere.="OR (b.bezeichnung = '".$bltbez."' AND gb.buchungsblattnummermitbuchstabenerweiterung = '".$bltblatt."' AND cast(s1.laufendenummer AS integer) >= ".$bltbvnr." )) "; 376 } // FlurstÃŒcke in der BVNR werden ggf. wiederholt 377 378 if ($bltseite == "") { // auf Seite 1 beide Teile ausgegeben 379 $bltseite = 1; 380 } else { // Folgegeseite: nur Teil 1 *oder* 2 381 echo "\n<p class='ein'>Teil ".$bltseite." - "; 382 switch ($bltrecht) { 383 case "nur": 384 echo "nur Rechte an .. Buchungen</p>"; break; 385 case "ohne": 386 echo "nur direkte Buchungen</p>"; break; 387 default: 388 echo "</p>"; break; 389 } 390 } 391 392 // FÀlle ohne "Rechte an" 393 if ($bltrecht != "nur") { // "nur"/"ohne" liefert nur den abgebrochene Teil der Auflistung 394 // Blatt <vbg/istBestandteilVon< Buchungsstelle <vfb/istGebucht< Flurstck. 395 $sql=$sql1.$sqla1.$sql2.$bltwhere.$sql3; // Direkte Buchungen 396 397 $v=array($person, $linelimit); 398 $res=pg_prepare("", $sql); 399 $res=pg_execute("", $v); 400 if (!$res) { 401 echo "\n<p class='err'>Fehler bei Buchung und Flurstück.</p>"; 402 if ($debug >= 3) {echo "\n<p class='err'>".$sql."</p>";} 403 return; 404 } 405 $zfs1=0; 406 $gwgb=""; 407 while($row = pg_fetch_array($res)) { 408 $gb_gml=$row["gml_g"]; 409 410 // Gruppenwechsel auf Ebene Grundbuch 411 if ($gwgb != $gb_gml) { 412 $beznam=$row["beznam"]; 413 $blatt=$row["blatt"]; 414 echo "\n<div class='gb'>"; // Ausgabe GB - B L A T T 415 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gemeinde=".$gemeinde."&gmlid=".$gb_gml."\")'>"; 416 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>"; 417 echo "\n\t</a> "; 418 echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$gb_gml."&person=".$person."'> Blatt ".$blatt." </a>"; 419 echo "\n</div>"; 420 $gwgb = $gb_gml; // Steuerg GW GB 421 $gwbv = ""; // Steuerg GW BVNR 422 } 423 424 // Gruppenwechsel auf Ebene Buchungs-Stelle (BVNR) 425 $bvnr=$row["lfd"]; 426 if ($gwbv != $bvnr) { 427 if ($bvnr == 0) { 428 $bvnra = "-"; 429 } else { 430 $bvnra = str_pad($bvnr, 4, "0", STR_PAD_LEFT); // auf 4 Stellen 431 } 432 $gwbv = $bvnr; // Steuerg GW BVNR 433 echo "\n<div class='gs' title='Grundstück'>"; 434 echo "<img class='nwlink' src='ico/Grundstueck.ico' width='16' height='16' alt='GS'> "; 435 echo "Buchung ".$bvnra."</div>"; 436 } 437 438 $fs_gml=$row["gml_id"]; 439 $gmkg=$row["gemarkungsname"]; 440 $flur=$row["flurnummer"]; 441 $fskenn=$row["zaehler"]; 442 if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // BruchNr 443 $x=$row["x"]; 444 $y=$row["y"]; 445 echo "\n<div class='fs'>"; // F L U R S T à C K 446 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; 447 echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; 448 echo "\n\t</a> "; 449 echo "\n\t".$gmkg." <a title='Flurstück positionieren 1:".$scalefs."' href='"; 450 echo "javascript:"; 451 echo "transtitle(\"auf Flurstück positioniert\"); "; 452 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 453 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 454 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; 455 echo "onmouseout='parent.parent.hideHighlight()'>"; 456 echo " Flur ".$flur." ".$fskenn."</a>"; 457 echo "\n</div>"; 458 $zfs1++; 459 } 460 if($zfs1 == 0) { 461 if ($bltrecht == "ohne") { 462 echo "\n<p class='anz'>Keine direkte Buchung gefunden.</p>"; 463 #if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} 464 } 465 } elseif($zfs1 >= $linelimit) { // das Limit war zu knapp, das B l À t t e r n anbieten 466 echo "\n<p class='blt'>".$zfs1." Flurstücke"; 467 $nxtbltbez=urlencode($beznam); 468 $nxtbltblatt=urlencode($blatt); 469 $nxtbltseite=$bltseite + 1; 470 echo "\n - <a class='blt' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$person."&bltbez=".$nxtbltbez."&bltblatt=".$nxtbltblatt."&bltbvnr=".$bvnr."&bltseite=".$nxtbltseite."&bltrecht=ohne' "; 471 echo "title='Blättern ab ".htmlentities($beznam)." Blatt ".$blatt." BVNR ".$bvnr."'>weitere</a>"; 472 echo "</p>"; 473 } elseif($zfs1 > 1) { // Meldung (Plural) ab 2 474 echo "\n<p class='anz'>".$zfs1." Flurstücke zum Eigentümer</p>"; // im Limit 475 } 476 } 477 478 if ($bltrecht == "" and $zfs1 > 0) { // beides 479 echo "<hr>"; // dann Trenner 480 } 481 482 // FÀlle mit "Rechte an" 483 if ($bltrecht != "ohne") { // "nur"/"ohne" liefert nur den abgebrochene Teil der Auflistung 484 // Zweite Abfrage (Variante) aus den Bausteinen zusammen bauen 485 // buchungsStelle2 < an < buchungsStelle1 486 $sql=$sql1.$sqlz.$sqla2.$sql2.$bltwhere.$sql3; // Rechte an 487 $v=array($person, $linelimit); 488 $res=pg_prepare("", $sql); 489 $res=pg_execute("", $v); 490 if (!$res) { 491 echo "\n<p class='err'>Fehler bei Recht an Buchung.</p>"; 492 if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} 493 return; 494 } 495 $zfs2=0; 496 $gwgb=""; 497 while($row = pg_fetch_array($res)) { 498 // Gruppenwechsel auf Ebene Grundbuch 499 $gb_gml=$row["gml_g"]; 500 if ($gwgb != $gb_gml) { 501 $beznam=$row["beznam"]; 502 $blatt=$row["blatt"]; 503 echo "\n<div class='gb'>"; // Ausgabe GB 504 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gemeinde=".$gemeinde."&gmlid=".$gb_gml."\")'>"; 505 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>"; 506 echo "\n\t</a> "; 507 echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$gb_gml."&person=".$person."'> Blatt ".$blatt." </a>"; 508 echo "\n</div>"; 509 $gwgb = $gb_gml; // Steuerg GW GB 510 $gwbv = ""; // Steuerg GW BVNR 511 } 512 513 // Gruppenwechsel auf Ebene Buchungs-Stelle (BVNR) 514 $bvnr=$row["lfd"]; 515 if ($gwbv != $bvnr) { 516 if ($bvnr == 0) { 517 $bvnra = "-"; 518 } else { 519 $bvnra = str_pad($bvnr, 4, "0", STR_PAD_LEFT); // auf 4 Stellen 520 } 521 $gwbv = $bvnr; // Steuerg GW BVNR 522 echo "\n<div class='gs' title='Grundstück'>"; 523 echo "<img class='nwlink' src='ico/Grundstueck.ico' width='16' height='16' alt='GS'> "; 524 echo "Buchung ".$bvnra."</div>"; 525 } 526 527 $fs_gml=$row["gml_id"]; 528 $gmkg=$row["gemarkungsname"]; 529 $flur=$row["flurnummer"]; 530 $fskenn=$row["zaehler"]; 531 if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer 532 $x=$row["x"]; 533 $y=$row["y"]; 534 echo "\n<div class='fs'>"; 535 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; 536 echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; 537 echo "\n\t</a> "; 538 echo "\n\tRecht an ".$gmkg." <a title='Flurstück positionieren 1:".$scalefs."' href='"; 539 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 540 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 541 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; 542 echo "onmouseout='parent.parent.hideHighlight()'>"; 543 echo " Flur ".$flur." ".$fskenn."</a>"; 544 echo "\n</div>"; 545 $zfs2++; 546 } 547 if($zfs2 == 0) { 548 if ($zfs1 == 0 or $bltrecht == "nur") { // keine Meldung wenn schon in Teil 1 eine Ausgabe 549 echo "\n<p class='anz'>Keine Rechte an Buchungen.</p>"; 550 #if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} 551 } 552 } elseif($zfs2 >= $linelimit) { // das Limit war zu knapp, das B l À t t e r n anbieten 553 echo "\n<p class='blt'>".$zfs2." Rechte an Flurst."; 554 $nxtbltbez=urlencode($beznam); 555 $nxtbltblatt=urlencode($blatt); 556 $nxtbltseite=$bltseite + 1; 557 echo "\n - <a class='blt' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&person=".$person."&bltbez=".$nxtbltbez."&bltblatt=".$nxtbltblatt."&bltbvnr=".$bvnr."&bltseite=".$nxtbltseite."&bltrecht=nur' "; 558 echo "title='Blättern ab ".htmlentities($beznam)." Blatt ".$blatt." BVNR ".$bvnr."'>weitere</a>"; 559 echo "</p>"; 560 } elseif($zfs2 > 1) { // ab 2 561 echo "\n<p class='anz'>".$zfs2." Rechte an Flurst.</p>"; // im Limit 562 } 563 } // ENDE FÀlle mit "Rechte an" 328 564 return; 329 565 } … … 332 568 // Start hier! 333 569 // =========== 570 334 571 // Parameter: 335 572 // 1. name = Suche nach Namensanfang oder -bestandteil. 336 573 // 2. person = gml_id der Person -> Suche nach GrundbÃŒchern 337 574 // 3. gb = gml_id des Grundbuches -> Suche nach FlurstÃŒcken 575 338 576 if(isset($epsg)) { 339 if ($debug >= 2) {echo "<p>aktueller EPSG='".$epsg."'</p>";} // aus MB577 #if ($debug >= 2) {echo "\n<p class='dbg'>aktueller EPSG='".$epsg."'</p>";} // aus MB 340 578 $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); 341 579 } else { 342 if ($debug >= 1) {echo "<p class='err'>kein EPSG gesetzt</p>";}580 #if ($debug >= 1) {echo "<p class='dbg'>kein EPSG gesetzt</p>";} 343 581 $epsg=$gui_epsg; // aus Conf 344 582 } 345 if ($debug >= 2) {echo "<p>Filter Gemeinde = ".$gemeinde."</p>";}583 #if ($debug >= 2) {echo "\n<p class='dbg'>Filter Gemeinde = '".$gemeinde."'</p>";} 346 584 if ($gemeinde == "") { 347 $gfilter = 0; // ungefiltert585 $gfilter = 0; // Gemeinde ungefiltert 348 586 } elseif(strpos($gemeinde, ",") === false) { 349 $gfilter = 1; // Einzelwert587 $gfilter = 1; // Gemeinde Einzelwert 350 588 } else { 351 $gfilter = 2; // Liste352 } 353 354 // Welche Parameter?355 // 3. Stufe: FlurstÃŒcke zum Grundbuch356 if(isset($gb)) { // gml_id 589 $gfilter = 2; // Gemeinde Filter-Liste 590 } 591 592 // Quo Vadis? 593 if(isset($blattgml)) { // 3. Stufe: FlurstÃŒcke zum Grundbuch 594 357 595 // Das Programm hat sich selbst verlinkt aus einer Liste der GB zu einem EigentÃŒmer. 358 596 // Wenn Parameter mitgegeben wurden, können diese fÃŒr einen "Link zurÃŒck" verwendet werden. 359 getFSbyGB(true); 360 } elseif(isset($person)) { // gml_id - 2. Stufe: GrundbÃŒcher zur Person 597 $trans="Flurstücke zum Grundbuch"; 598 getFSbyGB(true); // mit BackLink 599 600 } elseif(isset($person)) { // 2. Stufe: GrundbÃŒcher zur Person 361 601 // Das Programm hat sich selbst verlinkt aus einer Liste der Personen zu einer Suchmaske. 362 getGBbyPerson(); 363 if(isset($gb) ) { getFSbyGB(false);} // Es wurde nur EIN Grundbuch zu der Person gefunden. 364 } elseif(isset($name)) { // Suchbegriff aus Form - 1. Stufe: Suche nach Name 365 getEigByName(); 366 if(isset($person)) { getGBbyPerson();} 602 if ($debug >= 2) {echo "\n<p class='dbg'>Gemeinde-Filter-Steuerung = '".$gfilter."'</p>";} 603 604 // Die Filtereinstellung beeinflusst die Such-Strategie: 605 if ($gfilter == 0) { // Keine Filterung auf "Gemeinde": groÃe Datenmenge 606 607 $trans="Grundbücher zum Eigentümer"; 608 getGBbyPerson(); 609 // Also schrittweise erst mal Stufe 2 = GrundbÃŒcher zur Person suchen. 610 // Diese Function hat auch noch keine Gemeinde-Filter-Funktion auf GB-Ebene. 611 612 if(isset($blattgml) ) { // Es wurde nur EIN Grundbuch zu der Person gefunden. 613 $trans="1 Blatt zum Eigentümer"; 614 getFSbyGB(false); // Dann dazu auch gleich die Stufe 3 hinterher, aber ohne Backlink. 615 } 616 617 } else { // mit Filter auf Gemeinde: weniger Daten? 618 619 $trans="Grundb. und Flurst. zum Eigentümer"; 620 getGBuFSbyPerson(); // Schritte 2+3 gleichzeitig, dabei Gemeinde-Filter auf Stufe 3 621 } 622 623 } elseif(isset($name)) { // Suchbegriff aus Form - 1. Stufe: Suche nach Name 624 625 $trans="Namensuche \"".$name."\""; 626 getEigByName(); // Suchen nach Namensanfang 627 628 if(isset($person)) { // genau EIN Treffer 629 $trans="1 Grundbuch zum Namen"; 630 getGBbyPerson(); // Dann gleich das Grundbuch hinterher 631 } 632 367 633 } elseif ($debug >= 2) { 368 echo "\n<p>Parameter?</p>"; // Programmfehler 369 } 634 echo "\n<p class='dbg'>Parameter?</p>"; // Programmfehler, soll nicht vorkommen 635 } 636 // Titel im Kopf anzeigen 637 echo "\n<script type='text/javascript'>\n\ttranstitle('".$trans."')\n</script>"; 638 370 639 ?> 371 640 -
trunk/mapbender/http/nav/alkisnav_fls.php
r276 r278 1 1 <?php 2 2 /* Version vom 3 2011-10-24 4 2011-11-07 5 2011-11-09 3 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight 4 2011-11-07 optional auch Historische FS suchen, Link auf Buchauskunft-Modul alkisfshis.php 5 2011-11-09 "h" hinter Flur oder FlurstÃŒck sucht sofort in Historie 6 6 Ausgabe Flur in Varianten aktuell/historisch mit gegenseitigen Verweisen 7 2011-11-11 Nachfolger-Liste in der DB nachschlagen, und aktuelle FS als solche kennzeichnen 8 neue Icons fÃŒr Link mit Pfeil 9 Differenzierung mit/ohne Raumbezug bei Icons fuer Histor. FS 10 Gemarkung- und Flur-Zeile vor einzelnem FlurstÃŒck ausgeben 11 2011-11-17 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster 12 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4, 13 Fehlerkorrektur Komma in SQL bei FS-Suche. 7 2011-11-11 Nachfolger-Liste in der DB nachschlagen, und aktuelle FS als solche kennzeichnen 8 neue Icons fÃŒr Link mit Pfeil 9 Differenzierung mit/ohne Raumbezug bei Icons fuer Histor. FS 10 Gemarkung- und Flur-Zeile vor einzelnem FlurstÃŒck ausgeben 11 2011-11-17 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster 12 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4, 13 Fehlerkorrektur Komma in SQL bei FS-Suche. 14 2013-04-26 Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung" 15 ZurÃŒck-Link, Titel der Transaktion anzeigen 14 16 */ 15 17 $cntget = extract($_GET); … … 17 19 $con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password; 18 20 $con = pg_connect ($con_string) or die ("Fehler bei der Verbindung zur Datenbank ".$dbname.$dbvers.$gkz); 19 ?> 20 21 echo <<<END 21 22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 22 23 <html> … … 33 34 window.open(link,'','left=10,top=10,width=620,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes'); 34 35 } 36 function transtitle(trans) { 37 document.getElementById('transaktiontitle').innerHTML = trans; 38 } 35 39 </script> 36 40 </head> 37 41 <body> 38 39 <?php 42 <a title="zurück" href='javascript:history.back()'> 43 <img src="ico/zurueck.ico" width="16" height="16" alt="<<" /> 44 </a> 45 <dfn class='title' id='transaktiontitle'></dfn> 46 47 END; 40 48 41 49 function is_ne_zahl($wert) { … … 146 154 global $con, $gkz, $gemeinde, $epsg, $debug, $gfilter; 147 155 $linelimit=50; 148 $sql ="SELECT DISTINCT g.gemeinde AS key, g.bezeichnung FROM ax_gemeinde g "; 149 $sql.="JOIN gemeinde_gemarkung v ON g.regierungsbezirk=v.regierungsbezirk AND g.kreis=v.kreis AND g.gemeinde=v.gemeinde "; 150 // "ax_gemeinde" enthÀlt mehrfache Gemeinde-Schluessel (Filtern regierungsbezirk, kreis) 151 // "gemeinde_gemarkung" enthaelt nur gefÃŒllte Gemarkungen aber Gemeinde mehrfach 156 $sql ="SELECT gemeinde, gemeindename FROM pp_gemeinde "; 152 157 switch ($gfilter) { 153 158 case 1: // Einzelwert 154 $sql.="WHERE g .gemeinde=".$gemeinde." ";159 $sql.="WHERE gemeinde=".$gemeinde." "; 155 160 break; 156 161 case 2: // Liste 157 $sql.="WHERE g .gemeinde in (".$gemeinde.") ";162 $sql.="WHERE gemeinde in (".$gemeinde.") "; 158 163 break; 159 164 default: // kein Filter 160 165 break; 161 166 } 162 $sql.=" ORDER BY g .bezeichnungLIMIT $1 ;";167 $sql.=" ORDER BY gemeindename LIMIT $1 ;"; 163 168 $res=pg_prepare("", $sql); 164 169 $res=pg_execute("", array($linelimit)); … … 170 175 $cnt = 0; 171 176 while($row = pg_fetch_array($res)) { 172 $stadt=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); 173 $bez=urlencode($row["bezeichnung"]); // Uebergeben an ListGmkgInGemeinde 174 $gnr=$row["key"]; 177 $gemeindename=$row["gemeindename"]; 178 $stadt=htmlentities($gemeindename, ENT_QUOTES, "UTF-8"); 179 $bez=urlencode($gemeindename); // Uebergeben an ListGmkgInGemeinde 180 $gnr=$row["gemeinde"]; 175 181 echo "\n<div class='gm' title='Gemeinde'>"; 176 182 echo "\n\t\t<img class='nwlink' src='ico/Gemeinde.ico' width='16' height='16' alt='Stadt'>"; … … 181 187 } 182 188 if($cnt == 0){ 183 echo "\n<p class=' err'>Keine Gemeinde.</p>";189 echo "\n<p class='anz'>Keine Gemeinde.</p>"; 184 190 } elseif($cnt >= $linelimit) { 185 echo "\n<p title='Bitte eindeutiger qualifizieren'>... und weitere</p>"; 191 echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemeinden ... und weitere</p>"; 192 // +++ BlÀttern ? 186 193 } elseif($cnt == 1) { // Eindeutig! 187 194 return $gnr; 195 } else { 196 echo "\n<p class='anz'>".$cnt." Gemeinden</p>"; 188 197 } 189 198 return 0; … … 194 203 global $con, $gkz, $gemeinde, $epsg, $debug, $gfilter, $bez; 195 204 $linelimit=70; 196 $sql ="SELECT g.gemarkungsnummer, g.bezeichnung "; 197 $sql.="FROM ax_gemarkung g JOIN gemeinde_gemarkung v ON g.gemarkungsnummer=v.gemarkung "; 198 $sql.="WHERE v.gemeinde= $1 ORDER BY g.bezeichnung LIMIT $2 ;"; 205 $sql ="SELECT gemarkung, gemarkungsname FROM pp_gemarkung "; 206 $sql.="WHERE gemeinde= $1 ORDER BY gemarkungsname LIMIT $2 ;"; 199 207 $res=pg_prepare("", $sql); 200 208 $res=pg_execute("", array($gkey, $linelimit)); … … 211 219 $cnt = 0; 212 220 while($row = pg_fetch_array($res)) { 213 $gnam=htmlentities($row[" bezeichnung"], ENT_QUOTES, "UTF-8");214 $gnr=$row["gemarkung snummer"];221 $gnam=htmlentities($row["gemarkungsname"], ENT_QUOTES, "UTF-8"); 222 $gnr=$row["gemarkung"]; 215 223 echo "\n<div class='gk' title='Gemarkung'>"; 216 224 echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; … … 221 229 } 222 230 if($cnt == 0){ 223 echo "\n<p class=' err'>Keine Gemarkung.</p>";231 echo "\n<p class='anz'>Keine Gemarkung.</p>"; 224 232 } elseif($cnt >= $linelimit) { 225 echo "\n<p title='Bitte eindeutiger qualifizieren'>... und weitere</p>"; 233 echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemarkungen ... und weitere</p>"; 234 // +++ BlÀttern ? 226 235 } elseif($cnt == 1) { // Eindeutig! 227 236 return $gnr; 237 } else { 238 echo "\n<p class='anz'>".$cnt." Gemarkungen</p>"; 228 239 } 229 240 return 0; … … 239 250 $match = trim($fskennz)."%"; 240 251 } 241 $sql ="SELECT v.gemeindename, g.gemarkungsnummer, g.bezeichnung "; 242 $sql.="FROM ax_gemarkung g JOIN gemeinde_gemarkung v ON g.gemarkungsnummer=v.gemarkung "; 243 $sql.="WHERE bezeichnung ILIKE $1 "; 252 $sql ="SELECT g.gemeinde, g.gemarkung, g.gemarkungsname "; 253 If ($gfilter == 0 OR $gfilter == 2) { // Stadt anzeigen 254 $sql.=", s.gemeindename FROM pp_gemarkung g JOIN pp_gemeinde s ON g.gemeinde = s.gemeinde "; 255 } else { 256 $sql.="FROM pp_gemarkung g "; 257 } 258 $sql.="WHERE g.gemarkungsname ILIKE $1 "; 244 259 switch ($gfilter) { 245 260 case 1: // Einzelwert 246 $sql.="AND v.gemeinde=".$gemeinde." ";261 $sql.="AND g.gemeinde = ".$gemeinde." "; 247 262 break; 248 263 case 2: // Liste 249 $sql.="AND v.gemeinde in (".$gemeinde.") ";264 $sql.="AND g.gemeinde in (".$gemeinde.") "; 250 265 break; 251 266 default: // kein Filter 252 267 break; 253 268 } 254 $sql.=" ORDER BY g. bezeichnungLIMIT $2 ;";269 $sql.=" ORDER BY g.gemarkungsname LIMIT $2 ;"; 255 270 $v=array($match, $linelimit); 256 271 $res=pg_prepare("", $sql); … … 263 278 $cnt = 0; 264 279 while($row = pg_fetch_array($res)) { 265 $gnam=htmlentities($row[" bezeichnung"], ENT_QUOTES, "UTF-8");266 $gnr=$row["gemarkung snummer"];267 $stadt=$row["gemeindename"]; 280 $gnam=htmlentities($row["gemarkungsname"], ENT_QUOTES, "UTF-8"); 281 $gnr=$row["gemarkung"]; 282 268 283 echo "\n<div class='gk' title='Gemarkung'>"; 269 284 echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; … … 272 287 switch ($gfilter) { 273 288 case 0: // Kein Filter 274 echo " ".$ stadt;289 echo " ".$row["gemeindename"]; 275 290 break; 276 291 case 2: // Liste 277 echo " ".$ stadt;292 echo " ".$row["gemeindename"]; 278 293 break; 279 294 default: // Einzelwert … … 284 299 } 285 300 if($cnt == 0){ 286 echo "\n<p class=' err'>Keine Gemarkung.</p>";301 echo "\n<p class='anz'>Keine Gemarkung.</p>"; 287 302 } elseif($cnt >= $linelimit) { 288 echo "\n<p title='Bitte eindeutiger qualifizieren'>... und weitere</p>";303 echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemarkungen ... und weitere</p>"; 289 304 } elseif($cnt == 1) { // Eindeutig! 290 305 return $gnr; 306 } else { 307 echo "\n<p class='anz'>".$cnt." Gemarkungen</p>"; 291 308 } 292 309 return 0; … … 338 355 } 339 356 if($zfl == 0) { 340 echo "\n<p class='err'>Keine Flur.</p>"; 341 } elseif($cnt >= $linelimit) { 342 echo "\n<p>... und weitere</p>"; 357 echo "\n<p class='anz'>Keine Flur.</p>"; 358 } elseif($zfl >= $linelimit) { 359 echo "\n<p class='anz'>".$zfl." Fluren ... und weitere</p>"; 360 } elseif($zfl > 1) { 361 echo "\n<p class='anz'>".$zfl." Fluren</p>"; 343 362 } 344 363 return; … … 379 398 echo "\n\t</a> "; 380 399 echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; 381 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 400 echo "javascript:"; 401 echo "transtitle(\"auf Flurstück positioniert\"); "; 402 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 382 403 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 383 404 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; … … 387 408 } 388 409 if($zfs == 0) { 389 echo "\n<p class=' err'>Kein Flurstück.</p>";410 echo "\n<p class='anz'>Kein Flurstück.</p>"; 390 411 } elseif($zfs >= $linelimit) { 391 echo "\n<p>... und weitere</p>"; 412 echo "\n<p class='anz'>".$zfs." Flurstücke... und weitere</p>"; 413 } elseif($zfs > 1) { 414 echo "\n<p class='anz'>".$zfs." Flurstücke</p>"; 392 415 } 393 416 return; … … 444 467 } 445 468 if($zfs == 0) { 446 echo "\n<p class=' err'>Kein historisches Flurstück.</p>";447 if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = ".$fskzwhere."</p>";}469 echo "\n<p class='anz'>Kein historisches Flurstück.</p>"; 470 #if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = ".$fskzwhere."</p>";} 448 471 } elseif ($zfs >= $linelimit) { 449 echo "\n<p>... und weitere</p>"; 472 echo "\n<p class='anz'>".$zfs." historische Flurst. ... und weitere</p>"; 473 } elseif($zfs > 1) { 474 echo "\n<p class='anz'>".$zfs." historische Flurstücke</p>"; 450 475 } 451 476 return; … … 490 515 echo "\n\t</a> "; 491 516 echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; 492 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 517 echo "javascript:"; 518 echo "transtitle(\"auf Flurstück positioniert\"); "; 519 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 493 520 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 494 521 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; … … 578 605 // Kennzeichen -> Karte positionieren 579 606 echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; 580 echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 607 echo "javascript:"; 608 echo "transtitle(\"auf H-Flurstück positioniert\"); "; 609 echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; 581 610 echo "parent.parent.showHighlight(".$x.",".$y.");' "; 582 611 echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' "; … … 663 692 } 664 693 if ($zfsn == 0) { 665 echo " <p class='err'>keine Nachfolger gefunden</p>";666 if ($debug > 1) {echo " <p class='dbg'>SQL=<br>".$sqln."<br>Liste=<br> ".$stri."</p>";}694 echo "\n<p class='err'>keine Nachfolger gefunden</p>"; 695 if ($debug > 1) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>Liste=<br> ".$stri."</p>";} 667 696 } 668 697 } … … 672 701 if($zfs == 0) { 673 702 echo "\n<p class='err'>Kein historisches Flurstück.</p>"; 674 if ($debug > 2) {echo "<p class='dbg'>".$sql."</p>";}703 #if ($debug > 2) {echo "\n<p class='dbg'>".$sql."</p>";} 675 704 } 676 705 return; … … 684 713 $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); 685 714 } else { 686 if ($debug >= 1) {echo " <p class='dbg'>kein EPSG gesetzt</p>";}715 if ($debug >= 1) {echo "\n<p class='dbg'>kein EPSG gesetzt</p>";} 687 716 $epsg=$gui_epsg; // aus Conf 688 717 } … … 697 726 if ($hist == "j") {$phist = true;} else {$phist = false;} 698 727 699 if(isset($gm)) { // Self-Link aus Gemeinde-Liste 700 $gnr=ListGmkgInGemeinde($gm); // Gemarkungen zu dieser Gemeinde listen 728 if(isset($gm)) { // Self-Link aus Gemeinde-Liste 729 $trans="Gemarkungen zur Gemeinde"; 730 $gnr=ListGmkgInGemeinde($gm); 701 731 if ($gnr > 0) { 702 732 $zgemkg=$gnr; 703 733 EineGemarkung(false); 704 734 } 705 } else { 706 // Die Formular-Eingabe interpretieren (kann auch ein Link sein) 735 } else { // Die Formular-Eingabe interpretieren (kann auch ein Link sein) 707 736 $retzer=ZerlegungFsKennz($fskennz); 708 //if ($debug > 1) {echo "<p class='dbg'>Return Zerlegung (case) = '".$retzer."'</p>";}737 #if ($debug > 1) {echo "<p class='dbg'>Return Zerlegung (case) = '".$retzer."'</p>";} 709 738 switch ($retzer) { 710 739 case 0: // leere Eingabe 711 740 if ($gfilter == 1) { // Die GUI ist bereits auf eine Gemeinde gefiltert 712 SuchGmkgName(); // Gemarkungen listen 741 $trans="Liste der Gemarkungen"; 742 SuchGmkgName(); 713 743 } else { 714 ListGemeinden(); // alle Gemeinden Listen 744 $trans="Liste der Gemeinden"; 745 ListGemeinden(); 715 746 } 716 747 break; 717 748 case 1: 718 if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsname ".$zgemkg."</p>";} 749 #if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsname ".$zgemkg."</p>";} 750 $trans="Suche Gemarkungsname"; 719 751 $gnr=SuchGmkgName(); 720 752 if ($gnr > 0) { 753 $trans="1 Gemarkung, Fluren dazu"; 721 754 $zgemkg=$gnr; 722 755 EineGemarkung(false); … … 724 757 break; 725 758 case 2: 726 if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsnummer ".$zgemkg."</p>";} 759 #if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsnummer ".$zgemkg."</p>";} 760 $trans="Fluren in Gemarkung"; 727 761 EineGemarkung(true); 728 762 break; 729 763 case 3: 730 if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur."</p>";} 731 if ($phist) {HistFlur();} else {EineFlur();} 764 #if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur."</p>";} 765 if ($phist) { 766 $trans="historische Flurst. in Flur"; 767 HistFlur(); 768 } else { 769 $trans="Flurstücke in Flur"; 770 EineFlur(); 771 } 732 772 break; 733 773 case 4: 734 if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."</p>";} 735 if ($phist) {HistFlurstueck();} else {EinFlurstueck();} 774 #if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."</p>";} 775 if ($phist) { 776 $trans="historisches Flurstück"; 777 HistFlurstueck(); 778 } else { 779 $trans="Flurstück"; 780 EinFlurstueck(); 781 } 736 782 break; 737 783 case 5: 738 if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."/".$znenner."</p>";} 739 if ($phist) {HistFlurstueck();} else {EinFlurstueck();} 784 if ($phist) { 785 $trans="historisches Flurstück"; 786 HistFlurstueck(); 787 } else { 788 $trans="Flurstück"; 789 EinFlurstueck(); 790 } 740 791 break; 741 792 case 9: 742 echo "<p class='err'>Bitte ein Flurstückskennzeichen eingegeben, Format 'gggg-fff-zzzz/nnn</p>"; 793 $trans="falsche Eingabe"; 794 echo "\n<p class='err'>Bitte ein Flurstückskennzeichen eingegeben, Format 'gggg-fff-zzzz/nnn</p>"; 743 795 break; 744 796 } 745 797 } 798 // Titel im Kopf anzeigen 799 echo "\n<script type='text/javascript'>\n\ttranstitle('".$trans."')\n</script>"; 746 800 747 801 ?> -
trunk/mapbender/http/nav/alkisnav_grd.php
r276 r278 1 1 <?php 2 2 /* Version vom 3 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight 4 2011-11-17 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster 5 2011-12-14 "window.open(..,width=680" 6 2012-01-16 Blattnummer in 2 Varianten suchen 7 2012-01-17 Blattnummer ohne Buchstabe in 3 Varianten suchen 8 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4 3 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight 4 2011-11-17 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster 5 2011-12-14 "window.open(..,width=680" 6 2012-01-16 Blattnummer in 2 Varianten suchen 7 2012-01-17 Blattnummer ohne Buchstabe in 3 Varianten suchen 8 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4 9 2013-04-26 Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung" 10 Code aus _eig nach_fkt ausgelegert, hier mit nutzen. 11 Dazu Var-Namen harmonisieren: $gblatt wird $blattgml 12 ZurÃŒck-Link, Titel der Transaktion anzeigen. 9 13 */ 10 14 $cntget = extract($_GET); 11 include("../../conf/alkisnav_conf.php"); 15 16 include("../../conf/alkisnav_conf.php"); // Konfigurations-Einstellungen 17 include("alkisnav_fkt.php"); // Funktionen 18 12 19 $con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password; 13 20 $con = pg_connect ($con_string) or die ("Fehler bei der Verbindung zur Datenbank ".$dbname.$dbvers.$gkz); 14 ?> 15 21 echo <<<END 16 22 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 17 23 <html> … … 28 34 window.open(link,'','left=10,top=10,width=680,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes'); 29 35 } 36 function transtitle(trans) { 37 document.getElementById('transaktiontitle').innerHTML = trans; 38 } 30 39 </script> 31 40 </head> 32 41 <body> 33 34 <?php 42 <a title="zurück" href='javascript:history.back()'> 43 <img src="ico/zurueck.ico" width="16" height="16" alt="<<" /> 44 </a> 45 <dfn class='title' id='transaktiontitle'></dfn> 46 47 END; 48 35 49 function is_ne_zahl($wert) { 36 50 // Prueft, ob ein Wert ausschlieÃlich aus den Zahlen 0 bis 9 besteht … … 116 130 } 117 131 if($cnt == 0){ // falsch configuriert! 118 echo "\n<p class=' err'>Kein Amtsgericht aus Liste ".$$liste_ag.".</p>";132 echo "\n<p class='anz'>Kein Amtsgericht aus Liste ".$$liste_ag.".</p>"; 119 133 } elseif ($cnt >= $linelimit) { 120 echo "\n<p title='Bitte eindeutiger qualifizieren'>... und weitere</p>"; 134 echo "\n<p title='Bitte eindeutiger qualifizieren'>".$cnt." Amtsgerichte ... und weitere</p>"; 135 } elseif ($cnt > 1) { 136 echo "\n<p class='anz'>".$cnt." Amtsgerichte</p>"; 121 137 } 122 138 return 0; … … 125 141 function ListGBBez($liste_ag, $mit_ag) { 126 142 // Grundbuch-Bezirke auflisten. 143 // +++ auch wenn BlÀtter da sind, kann es eine Sackgasse sein. 144 // +++ manchmal haben die BlÀtter keine FlurstÃŒcke. 127 145 global $con, $gkz, $gemeinde, $epsg, $debug, $gbkennz; 128 $linelimit= 70;146 $linelimit=90; 129 147 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezirk, g.bezeichnung FROM ax_buchungsblattbezirk g "; 130 148 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle "; 131 149 $sql.="WHERE a.stelle IN (".$liste_ag.") AND a.stellenart = 1000 "; // Amtsgericht aus Liste 150 // Diese Subquery stellt sicher, dass nur Bezirke aufgelistett werden, die auch BlÀtter enthalten: 151 $sql.="AND NOT (SELECT gml_id FROM ax_buchungsblatt b WHERE b.land=g.land and b.bezirk=g.bezirk LIMIT 1) IS NULL "; 132 152 $sql.="ORDER BY g.bezeichnung LIMIT $1 ;"; 133 153 $res = pg_prepare("", $sql); … … 154 174 $cnt++; 155 175 } 156 if($cnt == 0){ // falsch configuriert157 echo "\n<p class=' err'>Kein Grundbuchbezirk zu den Amtsgerichten ".$liste_ag.".</p>";176 if($cnt == 0){ 177 echo "\n<p class='anz'>Kein Bezirk mit Blättern.</p>"; 158 178 } elseif ($cnt >= $linelimit) { 159 echo "\n<p title='Bitte eindeutiger qualifizieren'>... und weitere</p>"; 179 echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Bezirke ... und weitere</p>"; 180 } elseif($cnt > 1) { 181 echo "\n<p class='anz'>".$cnt." Bezirke</p>"; // im Limit 160 182 } 161 183 return 0; … … 194 216 $ag=htmlentities($row["ag"], ENT_QUOTES, "UTF-8"); 195 217 $anr=$row["stelle"]; 196 echo "\n<div class='gk' title='G B-Bezirk'>";218 echo "\n<div class='gk' title='Grundbuch-Bezirk'>"; 197 219 echo "\n\t\t<img class='nwlink' src='ico/GB-Bezirk.ico' width='16' height='16' alt='Gemkg'> "; 198 220 echo "Bezirk <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&gbkennz=".$gnr."'>"; … … 203 225 } 204 226 if($cnt == 0){ 205 echo "\n<p class=' err'>Kein Grundbuchbezirk.</p>";227 echo "\n<p class='anz'>Kein Grundbuchbezirk.</p>"; 206 228 } elseif ($cnt >= $linelimit) { 207 echo "\n<p title='Bitte eindeutiger qualifizieren'> ... und weitere</p>";229 echo "\n<p title='Bitte eindeutiger qualifizieren'>".$cnt." Bezirke ... und weitere</p>"; 208 230 } elseif ($cnt == 1) { 209 231 return $gnr; // Wenn eindeutig, gleich weiter 232 } elseif ($cnt > 1) { 233 echo "\n<p class='anz'>".$cnt." Bezirke</p>"; // im Limit 210 234 } 211 235 return 0; … … 216 240 global $con, $gkz, $gemeinde, $epsg, $debug, $zgbbez, $auskpath; 217 241 $linelimit=250; // max. Blatt je Bezirk 218 // Dies linelimit ist nicht ausreichend fuer alle Blaetter eines Bezirks, aber ...242 // Dies Limit ist nicht ausreichend fÃŒr alle BlÀtter eines Bezirks, aber ... 219 243 // Wenn man die Blatt-Nr nicht kennt, kommt man hier sowieso nicht weiter. 220 // Es nutzt also nichts, hier Tausende Nummern aufzulisten. 244 // Es nutzt also nichts, hier tausende Nummern aufzulisten. 245 // +++ BlÀtter-Funktion einfÃŒhren analog Modul _eig 221 246 if ($showParent) { 222 247 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezeichnung FROM ax_buchungsblattbezirk g "; 223 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle "; 224 $sql.="WHERE g.bezirk= $1 ;"; 248 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle WHERE g.bezirk= $1 ;"; 225 249 $v=array($zgbbez); 226 250 $res=pg_prepare("", $sql); … … 279 303 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='Blatt'>"; 280 304 echo "\n\t</a> "; 281 echo "Blatt <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."& gblatt=".$gml."&gbkennz=".$zgbbez."-".$blatt."'> ".$blattd." </a>";305 echo "Blatt <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$gml."&gbkennz=".$zgbbez."-".$blatt."'> ".$blattd." </a>"; 282 306 echo "\n</div>"; 283 307 $cntbl++; 284 308 } 285 309 if($cntbl == 0) { 286 echo "\n<p class='err'>Kein Blatt im Bezirk.</p>"; 287 } else { 288 if($cntbl >= $linelimit) { 289 echo "\n<p>... und weitere</p>"; 290 echo "\n<p>Geben sie ein: '".$zgbbez."-999A'<br>wobei '999A' = gesuchtes GB-Blatt</p>"; 291 } 310 echo "\n<p class='anz'>Kein Blatt im Bezirk.</p>"; 311 } elseif($cntbl >= $linelimit) { 312 echo "\n<p class='anz'>".$cntbl." Blätter ... und weitere</p>"; 313 // +++ Hier oft ÃŒberschritten! BlÀtter-Funktion einfÃŒhren 314 echo "\n<p>Geben sie ein: '".$zgbbez."-999A'<br>wobei '999A' = gesuchtes GB-Blatt</p>"; 315 } elseif ($cntbl > 1) { 316 echo "\n<p class='anz'>".$cntbl." Blätter</p>"; // im Limit 292 317 } 293 318 return; … … 320 345 if($cntbl == 0) { 321 346 echo "\n<p class='err'>Grundbuchblatt '".$zgbbez."-".$zblatt."' nicht gefunden.</p>"; 322 } elseif ($cntbl == 1) {347 } elseif ($cntbl == 1) { 323 348 return $bl_gml; 324 349 } … … 326 351 } 327 352 328 function EinBlatt($showParent) { 353 /* 354 function EinBlatt_ALT($showParent) { 329 355 // Kennzeichen Bezirk + Blatt wurde eingegeben 330 global $con, $gkz, $debug, $gemeinde, $epsg, $auskpath, $zgbbez, $zblatt, $zblattn, $zblattz, $gblatt, $zbvnr; 331 332 if ($showParent) { 333 echo "\n<div class='gk' title='GB-Bezirk'>"; 356 // UrsprÃŒngliche Version bis 2013-04-24 357 global $con, $gkz, $debug, $gemeinde, $epsg, $auskpath, $zgbbez, $zblatt, $zblattn, $zblattz, $blattgml, $zbvnr; 358 359 if ($showParent) { 360 // +++ nur der Schluessel ist bekannt. Bezirks-Namen und Amtsgericht noch ermitteln ++++ 361 echo "\n<div class='gk' title='Grundbuch-Bezirk'>"; 334 362 echo "\n\t\t<img class='nwlink' src='ico/GB-Bezirk.ico' width='16' height='16' alt='Bez.'> "; 335 363 echo "Bezirk <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&gbkennz=".$zgbbez."'>"; 336 364 echo $zgbbez."</a>"; 337 // Key ist bekannt. Sollte man sich die Muehe machen, Namen und Amtsgericht zu ermitteln?338 365 echo "\n</div>"; 339 366 echo "\n<div class='gb' title='GB-Blatt'>"; 340 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gmlid=".$ gblatt."\")'>";367 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gmlid=".$blattgml."\")'>"; 341 368 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='Blatt'>"; 342 369 echo "\n\t</a> "; 343 echo "Blatt <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."& gblatt=".$gblatt."&gbkennz=".$zgbbez."-".$zblatt."'> ".$zblattn.$zblattz." </a>";370 echo "Blatt <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$blattgml."&gbkennz=".$zgbbez."-".$zblatt."'> ".$zblattn.$zblattz." </a>"; 344 371 echo "\n</div>"; 345 372 } … … 351 378 // +++ Buchungen ohne FLST weglassen? 352 379 // +++ Counter FLST ausgeben, Buchungen mit 0 weglassen 353 $v=array($ gblatt);380 $v=array($blattgml); 354 381 $res=pg_prepare("", $sql); 355 382 $res=pg_execute("", $v); … … 369 396 } 370 397 if($cntbu == 0) { 371 echo "\n<p class=' err'>Keine Buchung gefunden.</p>";398 echo "\n<p class='anz'>Keine Buchung gefunden.</p>"; 372 399 } elseif($cntbu == 1) { 373 400 $zbvnr=$lfd; // mit dieser BVNR gleich weiter machen … … 380 407 $zblattz=strtoupper(substr($zblatt,$len-1,1)); 381 408 } 409 } else { 410 echo "\n<p class='anz'>".$cntbu."Buchungen.</p>"; 382 411 } 383 412 return $cntbu; 413 } 414 */ 415 416 function EinBlatt($showParent) { 417 // Kennzeichen Bezirk + Blatt wurde eingegeben 418 global $con, $gkz, $debug, $gemeinde, $epsg, $auskpath, $zgbbez, $zblatt, $zblattn, $zblattz, $blattgml, $zbvnr; 419 420 if ($showParent) { 421 // +++ nur der Schluessel ist bekannt. Bezirks-Namen und Amtsgericht noch ermitteln ++++ 422 echo "\n<div class='gk' title='Grundbuch-Bezirk'>"; 423 echo "\n\t\t<img class='nwlink' src='ico/GB-Bezirk.ico' width='16' height='16' alt='Bez.'> "; 424 echo "Bezirk <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&gbkennz=".$zgbbez."'>"; 425 echo $zgbbez."</a>"; 426 echo "\n</div>"; 427 echo "\n<div class='gb' title='GB-Blatt'>"; 428 echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&gmlid=".$blattgml."\")'>"; 429 echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='Blatt'>"; 430 echo "\n\t</a> "; 431 echo "Blatt <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&blattgml=".$blattgml."&gbkennz=".$zgbbez."-".$zblatt."'> ".$zblattn.$zblattz." </a>"; 432 echo "\n</div>"; 433 } 434 435 // Blatt -> Buchungsstelle -> Flurstueck 436 $linelimit = 200; // Max. Anzahl FS 437 GB_Buchung_FS($linelimit); // Externe Function 438 439 return 0; 440 384 441 } 385 442 … … 427 484 // Die gml_id der Buchungsstelle ist bekannt. 428 485 global $con, $gkz, $debug, $gemeinde, $epsg, $scalefs, $epsg, $auskpath, $gbuchung, $zgbbez, $zblatt, $zblattn, $zblattz, $zbvnr, $gfilter; 486 // NoLimit? 429 487 if ($showParent) { // wenn Kennzeichen bekannt ist, dann auch Blatt ausgeben 430 if (isset($zgbbez) and isset($zblatt)) { 488 489 if ($zgbbez.$zblatt != "") { 490 // +++ SchlÃŒssel ist bekannt. Namen und Amtsgericht dazu ermitteln 491 // +++ oder Namen als &bez= ÃŒbermitteln? 431 492 echo "\n<div class='gk' title='GB-Bezirk'>"; 432 493 echo "\n\t\t<img class='nwlink' src='ico/GB-Bezirk.ico' width='16' height='16' alt='Bez.'> "; 433 494 echo "<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&gbkennz=".$zgbbez."'>"; 434 495 echo "Bezirk ".$zgbbez."</a>"; 435 // Key ist bekannt. Sollte man sich die Muehe machen, Namen und Amtsgericht zu ermitteln?436 // ++++ Namen als &bez= ÃŒbermitteln?437 496 echo "\n</div>"; 438 497 echo "\n<div class='gb' title='GB-Blatt'>"; … … 443 502 echo "<p class='err'>Kennzeichen Bezirk und Blatt nicht gesetzt</p>"; 444 503 } 504 445 505 echo "\n<div class='gs'>"; 446 506 echo "\n\t\t<img class='nwlink' title='Grundstück' src='ico/Grundstueck.ico' width='16' height='16' alt='GS'> "; … … 452 512 // +++ Filter "Gemeinde" berÃŒcksichtigt!! Wenn gesetzt. 453 513 454 // Buchungsstelle -> Flurstueck455 $sql ="SELECT t.gemeinde, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, ";514 // SQL-Bausteine 515 $sql1 ="SELECT g.gemeinde, g.gemarkungsname, f.gml_id, f.flurnummer, f.zaehler, f.nenner, "; 456 516 if($epsg == "25832") { // Transform nicht notwendig 457 $sql .="st_x(st_Centroid(f.wkb_geometry)) AS x, ";458 $sql .="st_y(st_Centroid(f.wkb_geometry)) AS y ";517 $sql1.="st_x(st_Centroid(f.wkb_geometry)) AS x, "; 518 $sql1.="st_y(st_Centroid(f.wkb_geometry)) AS y "; 459 519 } else { 460 $sql.="st_x(st_transform(st_Centroid(f.wkb_geometry),".$epsg.")) AS x, "; 461 $sql.="st_y(st_transform(st_Centroid(f.wkb_geometry),".$epsg.")) AS y "; 462 } 463 $sql.="FROM ax_gemarkung g "; 464 $sql.="JOIN ax_flurstueck f ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; 465 $sql.="JOIN alkis_beziehungen v ON f.gml_id=v.beziehung_von "; 466 $sql.="LEFT JOIN gemeinde_gemarkung t ON g.gemarkungsnummer=t.gemarkung "; 467 $sql.="WHERE v.beziehungsart='istGebucht' AND v.beziehung_zu= $1 "; // id buchungsstelle 468 $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 520 $sql1.="st_x(st_transform(st_Centroid(f.wkb_geometry),".$epsg.")) AS x, "; 521 $sql1.="st_y(st_transform(st_Centroid(f.wkb_geometry),".$epsg.")) AS y "; 522 } 523 $sql1.="FROM "; 524 525 $sqla1 ="JOIN alkis_beziehungen vfb ON s1.gml_id = vfb.beziehung_zu "; 526 $sqla2 ="JOIN alkis_beziehungen vfb ON s2.gml_id = vfb.beziehung_zu "; 527 528 // Zwischen-JOIN (zusÀtzlich nur bei zweiter Abfrage) 529 $sqlz ="JOIN alkis_beziehungen vss ON vss.beziehung_von = s1.gml_id "; 530 $sqlz.="JOIN ax_buchungsstelle s2 ON vss.beziehung_zu = s2.gml_id "; 531 532 $sql2 ="JOIN ax_flurstueck f ON .... "; 533 $sql2.="JOIN pp_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkung "; 534 $sql2.="WHERE v.beziehungsart='istGebucht' AND v.beziehung_zu= $1 "; // id buchungsstelle 535 switch ($gfilter) { // Filter Gemeinde 536 case 1: // Einzelwert 537 $sql2.="AND g.gemeinde=".$gemeinde." "; break; 538 case 2: // Liste 539 $sql2.="AND g.gemeinde in (".$gemeinde.") "; break; 540 } 541 $sql2.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 542 543 $sql=$sql1.$sqla1.$sql2; // Direkte Buchungen 469 544 $v=array($gbuchung); 470 545 $res=pg_prepare("", $sql); … … 478 553 $fs_gml=$row["gml_id"]; 479 554 $gemei=$row["gemeinde"]; 480 $gmkg=$row[" bezeichnung"];555 $gmkg=$row["gemarkungsname"]; 481 556 $flur=$row["flurnummer"]; 482 557 $fskenn=$row["zaehler"]; … … 484 559 $x=$row["x"]; 485 560 $y=$row["y"]; 561 562 // FILTER OBEN, IN SQL - nicht HIER 486 563 if($gemeinde > 0 and $gemeinde != $gemei and $gfilter == 1) { // ex-territorial 487 // +++ Wie Abgleich mit Filter=Gemeinde-Liste? Als Array aufbereiten?488 if ($debug >= 2) {echo "<p class='dbg'>Gemkg ".$gmkg." liegt in Gemeinde '".$gemei."' nicht '".$gemeinde."'</p>";}489 564 if ($debug >= 2) { 565 echo "<p class='dbg'>Gemkg ".$gmkg." liegt in Gemeinde '".$gemei."' nicht '".$gemeinde."'</p>"; 566 } 490 567 echo "\n<div class='fs' title='Kein Zugriff! Liegt außerhalb des Gebietes.'>"; 491 568 echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Leer.ico' width='16' height='16' alt='FS'> (".$gmkg." ".$flur."-".$fskenn." )"; … … 506 583 $zfs++; 507 584 } 508 if($zfs == 0) {echo "\n<p class='err'>Kein Flurstück.</p>";} 585 if($zfs == 0) { 586 echo "\n<p class='anz'>Kein Flurstück.</p>"; 587 } elseif($zfs > 1) { 588 echo "\n<p class='anz'>".$zfs." Flurstück.</p>"; 589 } 509 590 return; 510 591 } … … 514 595 // =========== 515 596 if(isset($epsg)) { 516 if ($debug >= 2) {echo "<p class='dbg'>aktueller EPSG='".$epsg."'</p>";} // aus MB597 #if ($debug >= 2) {echo "<p class='dbg'>aktueller EPSG='".$epsg."'</p>";} // aus MB 517 598 $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); 518 599 } else { 519 if ($debug >= 1) {echo "<p class='err'>kein EPSG gesetzt</p>";}600 #if ($debug >= 1) {echo "<p class='err'>kein EPSG gesetzt</p>";} 520 601 $epsg=$gui_epsg; // aus Conf 521 602 } 522 if ($debug >= 2) { 523 if(isset($gemeinde)) {echo "<p class='dbg'>Filter Gemeinde = ".$gemeinde."</p>"; 524 } else {echo "<p class='dbg'>Kein Filter Gemeinde</p>";} 525 } 603 526 604 if ($gemeinde == "") { 527 605 $gfilter = 0; // ungefiltert 606 #if ($debug >= 2) {echo "<p class='dbg'>Kein Filter Gemeinde</p>";} 528 607 } elseif(strpos($gemeinde, ",") === false) { 529 608 $gfilter = 1; // Einzelwert 609 #if ($debug >= 2) {echo "<p class='dbg'>Filter Gemeinde Einzelwert = '".$gemeinde."'</p>";} 530 610 } else { 531 611 $gfilter = 2; // Liste 612 #if ($debug >= 2) {echo "<p class='dbg'>Filter Gemeinde Liste = '".$gemeinde."'</p>";} 532 613 } 533 614 534 615 // Auch wenn redundant: Das Kennzeichen fÃŒr Anzeige und weitere Links zerlegen 535 616 $kennztyp=ZerlegungGBKennz($gbkennz); 536 if ($debug >= 2) {echo "<p class='dbg'>GB-Kennzeichen Typ=".$kennztyp."</p>";}617 #if ($debug >= 2) {echo "<p class='dbg'>GB-Kennzeichen Typ=".$kennztyp."</p>";} 537 618 538 619 // Wurde eine gml_id (internes Kennzeichen) aus einem Self-Link verwendet? 539 // Dann hat das Prioritaet, nichtnach $gbkennz suchen.540 if ( isset($gbuchung)) { // gml der Buchungsstelle541 if ($debug >= 2) {echo "<p class='dbg'>Link Buchung(gml)=".$gbuchung."</p>";}620 // Dann hat das Prioritaet, also *nicht* nach $gbkennz suchen. 621 if ($gbuchung != "") { // gml der Buchungsstelle 622 $trans="Buchungsstelle"; 542 623 EinGrundstueck(true); 543 } elseif(isset($gblatt)) { // gml des GB-Blattes 544 if ($debug >= 2) {echo "<p class='dbg'>Link Blatt(gml)=".$gblatt."</p>";} 624 625 } elseif($blattgml != "") { // gml des GB-Blattes 626 627 // neue Version -> function GB_Buchung_FS 628 $trans="GB-Blatt mit Buchungen und Flst."; 629 EinBlatt(true); 630 631 /* alte Version (ohne die Function)) 545 632 if (EinBlatt(true) == 1) { // darauf genau eine Buchung 546 633 $gbuchung=gml_buchungsstelle(); // gml_id zum Kennzeichen 634 $trans="Grundbuch-Blatt und 1 Buchung"; 547 635 EinGrundstueck(false); 548 636 } 549 } elseif(isset($ag)) { // Key 'stelle' des Amtsgerichtes 550 if ($debug >= 2) {echo "<p class='dbg'>Link Amtsgericht=".$ag."</p>";} 637 */ 638 639 } elseif(isset($ag)) { // Key des Amtsgerichtes 640 #if ($debug >= 2) {echo "<p class='dbg'>Link Amtsgericht=".$ag."</p>";} 641 $trans="GB-Bezirke zum Amtsgericht"; 551 642 ListAG( "'".$ag."'" ); // noch mal Kopfzeile 552 643 ListGBBez("'".$ag."'", false); 553 } else { // Kein Self-Link 554 // (manuelle) Eingabe im Formular interpretieren. 555 switch ($kennztyp) { // +++ Wie kann Filter "Gemeinde" berÃŒcksichtigt werden? 556 case 0: // keine Eingabe, 2 Alternativen557 // +++ Alternativen-Auswahl konfigurieren?558 // ListGBBez($ag_liste, true); // gefilterte Liste der Bezirke559 ListAG($ag_liste); // gefilterte Liste der Amtsgerichte644 645 } else { // Kein Self-Link, Eingabe im Formular 646 647 switch ($kennztyp) { 648 case 0: // keine Eingabe 649 $trans="Liste der Amtsgerichte"; 650 ListAG($ag_liste); 560 651 break; 561 652 case 1: // Eingabe Bezirk-Name (-Teil) -> gefilterte Liste der Bezirke 562 if ($debug >= 2) {echo "<p class='dbg'>Eingabe Bez. ".$zgbbez."</p>";}653 $trans="Grundbuchbezirke gefiltert"; 563 654 $beznr=SuchGBBezName(); 564 655 if ($beznr > 0) { // eindeutig 565 656 $zgbbez=$beznr; 657 $trans="Bezirk gefunden, Blätter dazu"; 566 658 EinBezirk(false); // gleich weiter 567 }; 659 }; 568 660 break; 569 661 case 2: // Eingabe Bezirk-Nummer -> Liste der BlÀtter 570 if ($debug >= 2) {echo "<p class='dbg'>Eingabe Bez. ".$zgbbez."</p>";}662 $trans="Blätter im GB-Bezirk"; 571 663 EinBezirk(true); 572 664 break; 573 665 case 3: // Eingabe Blatt -> Liste der Buchungen 574 if ($debug >= 2) {echo "<p class='dbg'>Eingabe Bez. ".$zgbbez." Blatt ".$zblatt."</p>";}575 $ gblatt=gml_blatt(); // gml_id zum Blatt suchen576 if ($ gblatt!= "") { // gefunden666 $trans="Buchungen auf GB-Blatt"; 667 $blattgml=gml_blatt(); // gml_id zum Blatt suchen 668 if ($blattgml != "") { // gefunden 577 669 if (EinBlatt(true) == 1) { // darauf genau eine Buchung 670 $trans="GB-Blatt und 1 Buchung"; 578 671 $gbuchung=gml_buchungsstelle(); // gml_id zum Kennzeichen 579 672 EinGrundstueck(false); … … 582 675 break; 583 676 case 4: // Eingabe Buchung (Grundstueck) -> Liste der Flurstuecke 584 if ($debug >= 2) {echo "<p class='dbg'>Eingabe Bez. ".$zgbbez." Blatt ".$zblatt." BVNR ".$zbvnr."</p>";}677 $trans="Flurst. zur Buchungsstelle"; 585 678 $gbuchung=gml_buchungsstelle(); // gml_id zum Kennzeichen 586 679 if ($gbuchung != "") { // .. wurde geliefert 680 $trans="Buchungsstelle und 1 Flurst."; 587 681 EinGrundstueck(true); 588 682 } 589 683 break; 590 684 case 9: // Fehler 591 echo "<p class='err'>Bitte ein gültiges Grundbuchkennzeichen eingegeben, Format 'gggg-999999A-llll</p>"; 685 $trans="fehlerhafte Eingabe"; 686 echo "\n<p class='err'>Bitte ein gültiges Grundbuchkennzeichen eingegeben, Format 'gggg-999999A-llll</p>"; 592 687 break; 593 688 } 594 689 } 690 // Titel im Kopf anzeigen 691 echo "\n<script type='text/javascript'>\n\ttranstitle('".$trans."')\n</script>"; 595 692 596 693 ?> 694 597 695 </body> 598 696 </html> -
trunk/mapbender/http/nav/blank_eig.html
r136 r278 8 8 <body> 9 9 <p class='start'>Suche nach Eigentümern in ALKIS:<br><br> 10 Schritt 1: Anfang des Nachnamens eingeben<br> 11 oder Suche nach Nachname, Vorname<br> 12 oder Suche nach Namensbestandteilen mit Platzhalter "*", z.B. "*meier"<br><br> 13 Schritt 2: Auswahl Person<br><br> 14 Schritt 3: Auswahl Grundbuch-Blatt<br><br> 15 Schritt 4: Auswahl Flurstück</p> 10 Schritt 1:<br> Anfang des Nachnamens eingeben<br> 11 oder Nachname (Komma) Vorname<br> 12 oder Teile des Namens mit Platzhalter *<br> 13 z.B. *meier<br> 14 oder Kombination davon<br> 15 z.B. *meier, Ralf<br><br> 16 Schritt 2:<br> Auswahl Person<br><br> 17 Schritt 3:<br> Auswahl Grundbuch-Blatt<br><br> 18 Schritt 4:<br> Auswahl Flurstück<br><br> 19 Bei eindeutigen Treffern wird der nächste Schritt vom Programm sofort mit ausgeführt. 20 </p> 16 21 </body> 17 22 </html>
Note: See TracChangeset
for help on using the changeset viewer.