[26] | 1 | <?php
|
---|
| 2 | /* alkisfsnw.php
|
---|
| 3 | ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
|
---|
| 4 | FlurstÃŒcksnachweis fuer ein FlurstÃŒckskennzeichen aus ALKIS PostNAS
|
---|
| 5 | Parameter: &gkz= &gmlid= &eig=j/n
|
---|
| 6 | Version:
|
---|
| 7 | 26.01.2010 internet-Version mit eigener conf
|
---|
| 8 |
|
---|
| 9 | ToDo: NamNum >bestehtAusRechtsverhaeltnissenZu> NamNum
|
---|
| 10 |
|
---|
| 11 | */
|
---|
| 12 | ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');
|
---|
| 13 | session_start();
|
---|
| 14 | // Bindung an Mapbender-Authentifizierung
|
---|
| 15 | require_once("/data/mapwww/http/php/mb_validateSession.php");
|
---|
| 16 | require_once("/data/conf/alkis_www_conf.php");
|
---|
| 17 | include("alkisfkt.php");
|
---|
| 18 | ?>
|
---|
| 19 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|
| 20 | <html>
|
---|
| 21 | <head>
|
---|
| 22 | <meta name="author" content="F. Jaeger">
|
---|
| 23 | <meta http-equiv="cache-control" content="no-cache">
|
---|
| 24 | <meta http-equiv="pragma" content="no-cache">
|
---|
| 25 | <meta http-equiv="expires" content="0">
|
---|
| 26 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
---|
| 27 | <title>ALKIS Flurstücksnachweis</title>
|
---|
| 28 | <link rel="stylesheet" type="text/css" href="alkisauszug.css">
|
---|
| 29 | <style type='text/css' media='print'>
|
---|
| 30 | .noprint { visibility: hidden;}
|
---|
| 31 | </style>
|
---|
| 32 | </head>
|
---|
| 33 | <body>
|
---|
| 34 | <?php
|
---|
| 35 | $gkz=urldecode($_REQUEST["gkz"]);
|
---|
| 36 | $gmlid=urldecode($_REQUEST["gmlid"]);
|
---|
| 37 | $eig=urldecode($_REQUEST["eig"]);
|
---|
| 38 | $id = isset($_GET["id"]) ? $_GET["id"] : "n";
|
---|
| 39 | $idanzeige=false;
|
---|
| 40 | if ($id == "j") {$idanzeige=true;}
|
---|
| 41 | $style=isset($_GET["style"]) ? $_GET["style"] : "kompakt";
|
---|
| 42 | $dbname = 'alkis05' . $gkz;
|
---|
| 43 | $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
|
---|
| 44 |
|
---|
| 45 | // F L U R S T U E C K
|
---|
| 46 | $sql ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, f.amtlicheflaeche, f.zeitpunktderentstehung, ";
|
---|
| 47 | $sql.="g.gemarkungsnummer, g.bezeichnung ";
|
---|
| 48 | $sql.="FROM ax_flurstueck f ";
|
---|
| 49 | $sql.="JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ";
|
---|
| 50 | $sql.="WHERE f.gml_id='".$gmlid."';";
|
---|
| 51 | $res=pg_query($con,$sql);
|
---|
| 52 | if (!$res) echo "\n<p class='err'>Fehler bei Flurstuecksdaten\n<br>".$sql."</p>\n";
|
---|
| 53 | if ($row = pg_fetch_array($res)) {
|
---|
| 54 | $gemkname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
|
---|
| 55 | $gmkgnr=$row["gemarkungsnummer"];
|
---|
| 56 | $flurnummer=$row["flurnummer"];
|
---|
| 57 | $flstnummer=$row["zaehler"];
|
---|
| 58 | $nenner=$row["nenner"];
|
---|
| 59 | if ($nenner > 0) $flstnummer.="/".$nenner; // BruchNr
|
---|
| 60 | $flae=number_format($row["amtlicheflaeche"],0,",",".") . " m²";
|
---|
| 61 | } else {echo "Fehler! Kein Treffer fuer gml_id=".$gmlid;}
|
---|
| 62 | if ($eig=="j") {
|
---|
| 63 | echo "<p class='fsei'>Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n";
|
---|
| 64 | echo "\n<h2>ALKIS Flurstücks- und Eigentümernachweis</h2>\n";
|
---|
| 65 | }
|
---|
| 66 | else {
|
---|
| 67 | echo "<p class='fskennz'>Flurstück ".$gmkgnr."-".$flurnummer."-".$flstnummer." </p>\n";
|
---|
| 68 | echo "\n<h2>ALKIS Flurstücksnachweis</h2>\n";
|
---|
| 69 | }
|
---|
| 70 | echo "\n<table class='outer'>\n<tr>\n<td>";
|
---|
| 71 |
|
---|
| 72 | echo "\n\t<table class='kennz' title='Flurstückskennzeichen'>\n\t<tr>";
|
---|
| 73 | 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>";
|
---|
| 74 | echo "\n\t<tr>\n\t\t<td title='Gemarkung'>".$gmkgnr."<br>".$gemkname."</td>";
|
---|
| 75 | echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
|
---|
| 76 | echo "\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'>".$flstnummer."</td>\n\t</tr>";
|
---|
| 77 | echo "\n\t</table>\n";
|
---|
| 78 |
|
---|
| 79 | echo "</td>\n<td>";
|
---|
| 80 |
|
---|
| 81 | // Kopf Rechts: FS-Daten 2 Spalten
|
---|
| 82 | echo "\n\t<table class='fsd'>";
|
---|
| 83 | echo "\n\t<tr>\n\t\t<td>Entstehung</td>";
|
---|
| 84 | echo "\n\t<td>".$row["zeitpunktderentstehung"]."</td>\n</tr>";
|
---|
| 85 |
|
---|
| 86 | echo "\n\t<tr>\n\t\t<td>letz. Fortf</td>";
|
---|
| 87 | echo "\n\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>".$row["name"]."</td>\n\t</tr>";
|
---|
| 88 | echo "\n\t</table>";
|
---|
| 89 | if ($idanzeige) { linkgml($gkz, $gmlid, "Flurstück"); }
|
---|
| 90 | echo "\n\t</td>\n</tr>\n</table>";
|
---|
| 91 | // Ende Seitenkopf
|
---|
| 92 |
|
---|
| 93 | echo "\n<hr>\n\n<table>";
|
---|
| 94 |
|
---|
| 95 | /* echo "\n<tr>\n\t<td>Gemeinde</td>\n\t<td>".$gemeinde." ".$gemeindename."</td>\n</tr>";
|
---|
| 96 | echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame . "</td>\n</tr>";
|
---|
| 97 | */
|
---|
| 98 | echo "\n<tr>\n\t<td class='ll'>Gebietszugehörigkeit:</td>";
|
---|
| 99 | echo "\n\t<td class='lr'>Gemeinde ".$row["gemeinde"]."</td>\n</tr>"; // +++ Entschluesseln
|
---|
| 100 |
|
---|
| 101 | // L A G E Adressen
|
---|
| 102 | // ax_flurstueck >weistAuf> AX_LagebezeichnungMitHausnummer
|
---|
| 103 | // <gehoertZu<
|
---|
| 104 | $sql ="SELECT l.gml_id, l.gemeinde, l.lage, l.hausnummer, s.bezeichnung ";
|
---|
| 105 | $sql.="FROM alkis_beziehungen v ";
|
---|
| 106 | $sql.="JOIN ax_lagebezeichnungmithausnummer l ON v.beziehung_zu=l.gml_id "; // Strassennamen JOIN
|
---|
| 107 | // Theoretisch JOIN notwendig ÃŒber den kompletten SchlÃŒssel bestehend aus land+regierungsbezirk+kreis+gemeinde+lage
|
---|
| 108 | // bei einem SekundÀrbestand fÌr eine Gemeinde oder einen Kreis reicht dies hier:
|
---|
| 109 |
|
---|
| 110 | //$sql.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.gemeinde=s.gemeinde AND l.lage=s.lage ";
|
---|
| 111 | // Problem: ax_lagebezeichnungkatalogeintrag.lage ist char,ax_lagebezeichnungmithausnummer = integer,
|
---|
| 112 |
|
---|
| 113 | // cast() scheitert weil auch nicht numerische Inhalte
|
---|
| 114 | //$sql.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.gemeinde=s.gemeinde AND l.lage=cast(s.lage AS integer) ";
|
---|
| 115 |
|
---|
| 116 | $sql.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.gemeinde=s.gemeinde AND to_char(l.lage, 'FM00000')=s.lage ";
|
---|
| 117 | $sql.="WHERE v.beziehung_von='".$gmlid."' "; // id FS";
|
---|
| 118 | $sql.="AND v.beziehungsart='weistAuf' ";
|
---|
| 119 | $sql.="ORDER BY l.gemeinde, l.lage, l.hausnummer;";
|
---|
| 120 | //$sql.="ORDER ;";
|
---|
| 121 | $res=pg_query($con, $sql);
|
---|
| 122 | if (!$res) {echo "<p class='err'>Fehler bei Lagebezeichnung mit Hausnummer<br>\n".$sql."</p>";}
|
---|
| 123 | $j=0;
|
---|
| 124 | while($row = pg_fetch_array($res)){
|
---|
| 125 | $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
|
---|
| 126 | echo "\n<tr>\n\t<td class='ll'>Lage:</td>";
|
---|
| 127 | echo "\n\t<td class='lr'>(".$row["lage"].") ".$sname." ".$row["hausnummer"]."</td>\n</tr>";
|
---|
| 128 | $j++;
|
---|
| 129 | }
|
---|
| 130 | // L A G E Gewanne
|
---|
| 131 | // ax_flurstueck >zeigtAuf> AX_LagebezeichnungOhneHausnummer
|
---|
| 132 | // <gehoertZu<
|
---|
| 133 | $sql ="SELECT l.gml_id, l.unverschluesselt ";
|
---|
| 134 | $sql.="FROM ax_lagebezeichnungohnehausnummer l ";
|
---|
| 135 | $sql.="JOIN alkis_beziehungen v ON l.gml_id=v.beziehung_zu ";
|
---|
| 136 | $sql.="WHERE v.beziehung_von='".$gmlid."' "; // id FS";
|
---|
| 137 | $sql.="AND v.beziehungsart='zeigtAuf';";
|
---|
| 138 | //$sql.="ORDER ";
|
---|
| 139 | $res=pg_query($con, $sql);
|
---|
| 140 | if (!$res) {echo "<p class='err'>Fehler bei Lagebezeichnung ohne Hausnummer<br>\n".$sql."</p>";}
|
---|
| 141 | $j=0;
|
---|
| 142 | while($row = pg_fetch_array($res)){
|
---|
| 143 | $gewann = htmlentities($row["unverschluesselt"], ENT_QUOTES, "UTF-8");
|
---|
| 144 | echo "\n<tr>\n\t<td class='ll'>Lage:</td>";
|
---|
| 145 | echo "\n\t<td class='lr'>".$gewann."</td>\n</tr>";
|
---|
| 146 | $j++;
|
---|
| 147 | }
|
---|
| 148 | //Flurstuecksflaeche
|
---|
| 149 | echo "\n<tr>\n\t<td class='ll'>Fläche:</td>";
|
---|
| 150 | echo "\n\t<td class='lr'>".$flae."</td>\n</tr>";
|
---|
| 151 |
|
---|
| 152 | echo "\n</table>";
|
---|
| 153 |
|
---|
| 154 | // N U T Z U N G
|
---|
| 155 | //echo "\n\n<h3>Tatsächliche Nutzung</h3>\n";
|
---|
| 156 |
|
---|
| 157 | /*
|
---|
| 158 | $sql="SELECT n.nutzungsart, n.flaeche, v.bez1, v.bez2, v.bez3, v.bez4, v.kurz1, v.kurz2, v.kurz3, v.kurz4 ";
|
---|
| 159 | $sql.="FROM v_Nutzungsarten as v INNER JOIN f_Nutzungen as n ON v.nutzungsart = n.nutzungsart ".$sqlwhere;
|
---|
| 160 | $res=pg_query($con, $sql);
|
---|
| 161 | if (!$res) {echo "<p class='err'>Fehler bei tats. Nutzung<br>\n".$sql."</p>";}
|
---|
| 162 |
|
---|
| 163 | echo "<table class='nua'>\n";
|
---|
| 164 | // FlÀche hier oder oben?
|
---|
| 165 | echo "<tr>\n\t<td class='fla sum'>" .$flae."</td>\n\t<td class='key'> </td>\n\t<td>Flurstücksfläche</td>\n\t<td class='kurz'> </td>\n</tr>";
|
---|
| 166 | echo "\n</table>\n";
|
---|
| 167 | */
|
---|
| 168 |
|
---|
| 169 | /*
|
---|
| 170 | // ** K L A S S I F I Z I E R U N G
|
---|
| 171 | $sql="SELECT DISTINCT k.tabkenn, t.art_der_klassifizierung ";
|
---|
| 172 | $sql.="FROM k_arten_der_klassifizierung as t RIGHT JOIN f_klassifizierungen as k ON t.TabKenn = k.tabkenn ";
|
---|
| 173 | $sql.=$sqlwhere." ORDER BY k.tabkenn";
|
---|
| 174 | $resg=pg_query($con, $sql);
|
---|
| 175 | if (!$resg) {
|
---|
| 176 | echo "<p class='err'>Fehler bei Klassifizierung Gruppen<br>\n".$sql."</p>";
|
---|
| 177 | }
|
---|
| 178 | $i=0;
|
---|
| 179 | while($rowg = pg_fetch_row($resg)){
|
---|
| 180 | if ($i==0) {
|
---|
| 181 | echo "\n<h3>Klassifizierung</h3>\n<table class='klas'>\n";
|
---|
| 182 | }
|
---|
| 183 | $tabkeng = pg_fetch_result($resg,$i,"tabkenn");
|
---|
| 184 | $tabbez = pg_fetch_result($resg,$i,"art_der_klassifizierung");
|
---|
| 185 | echo "<tr>\n\t<td class='fla'> </td>\n\t<td class='key head'>".$tabkeng."</td>";
|
---|
| 186 | if ($tabkeng == "32") {
|
---|
| 187 | echo "\n\t<td class='head'>Land- und Forstwirtschaft</td>";
|
---|
| 188 | echo "\n\t<td class='head'>Bodenschätzung</td>\n\t";
|
---|
| 189 | echo "<td class='emz head' title='ErtragsmeÃzahl'>EMZ</td>";
|
---|
| 190 | }
|
---|
| 191 | else {
|
---|
| 192 | echo "\n\t<td class='head'>".$tabbez."</td>";
|
---|
| 193 | echo "\n\t<td class='head'>Angaben</td>\n\t";
|
---|
| 194 | echo "<td class='head'> </td>";
|
---|
| 195 | }
|
---|
| 196 | echo "\n\t<td class='kurz'> </td>\n</tr>\n";
|
---|
| 197 | // inner Loop: je Gruppe
|
---|
| 198 | $sql="SELECT k.klass, k.flaeche, v.bez1, v.bez2, v.bez3, v.kurz1, v.kurz2, v.kurz3, k.angaben ";
|
---|
| 199 | $sql.="FROM v_klassifizierungen as v INNER JOIN f_klassifizierungen as k ON v.klass = k.klass AND v.tabkenn = k.tabkenn ";
|
---|
| 200 | $sql.= $sqlwhere." AND k.tabkenn = '".$tabkeng."'";
|
---|
| 201 | $res=pg_query($con, $sql);
|
---|
| 202 | if (!$res) {
|
---|
| 203 | echo "<p class='err'>Fehler bei Klassifizierung Abschnitt<br>\n".$sql."</p>";
|
---|
| 204 | }
|
---|
| 205 | $j=0;
|
---|
| 206 | $flaesum=0;
|
---|
| 207 | $emzsum=0;
|
---|
| 208 | while($row = pg_fetch_row($res)){
|
---|
| 209 | $klass = pg_fetch_result($res,$j,"klass");
|
---|
| 210 | $flae = pg_fetch_result($res,$j,"flaeche");
|
---|
| 211 | $flaesum = $flaesum + $flae;
|
---|
| 212 | $bez1 = htmlentities(pg_fetch_result($res,$j,"bez1"), ENT_QUOTES, "UTF-8");
|
---|
| 213 | $bez2 = htmlentities(pg_fetch_result($res,$j,"bez2"), ENT_QUOTES, "UTF-8");
|
---|
| 214 | $bez3 = htmlentities(pg_fetch_result($res,$j,"bez3"), ENT_QUOTES, "UTF-8");
|
---|
| 215 | $kurz1 = pg_fetch_result($res,$j,"kurz1");
|
---|
| 216 | $kurz2 = pg_fetch_result($res,$j,"kurz2");
|
---|
| 217 | $kurz3 = pg_fetch_result($res,$j,"kurz3");
|
---|
| 218 | $angab = pg_fetch_result($res,$j,"angaben");
|
---|
| 219 | if ($tabkeng == "32" and strlen($angab) > 0) {
|
---|
| 220 | $woslash = strpos($angab, "/");
|
---|
| 221 | if ($woslash > 0) {
|
---|
| 222 | // Streng genommen: Kataster-Rundung anwenden: .50 zum geraden Wert runden
|
---|
| 223 | $emz = round(substr($angab, $woslash+1)*$flae/100);
|
---|
| 224 | $emzsum=$emzsum+$emz;
|
---|
| 225 | }
|
---|
| 226 | }
|
---|
| 227 | else {
|
---|
| 228 | $emz = "";
|
---|
| 229 | }
|
---|
| 230 | echo "<tr>\n\t<td class='fla'>".number_format($flae,0,",",".")." m²</td>";
|
---|
| 231 | //echo "\n\t<td class='key'>".$tabkeng."-".$klass."</td>";
|
---|
| 232 | echo "\n\t<td class='key'>".$klass."</td>";
|
---|
| 233 | echo "\n\t<td>".$bez1;
|
---|
| 234 | if ($bez2 != "") {
|
---|
| 235 | echo "<br>".$bez2;
|
---|
| 236 | }
|
---|
| 237 | if ($bez3 != "") {
|
---|
| 238 | echo "<br>".$bez3;
|
---|
| 239 | }
|
---|
| 240 | // Ãnderung: Angabe in eigene Spalte
|
---|
| 241 | echo "</td>\n\t<td>".$angab."</td>\n\t<td class='emz'>".$emz."</td>\n\t<td class='kurz'>".$kurz1;
|
---|
| 242 | if ($kurz2 != "") {
|
---|
| 243 | echo "<br>".$kurz2;
|
---|
| 244 | }
|
---|
| 245 | if ($kurz2 != "") {
|
---|
| 246 | echo "<br>".$kurz3;
|
---|
| 247 | }
|
---|
| 248 | echo "</td>\n</tr>\n";
|
---|
| 249 | $j++;
|
---|
| 250 | }
|
---|
| 251 | //Summenzeile bei mehreren Zeilen
|
---|
| 252 | if ($j > 1) {
|
---|
| 253 | echo "<tr>\n\t<td class='fla sum'>".number_format($flaesum,0,",",".")." m²</td>\n\t<td class='key'> </td>\n\t<td> </td>\n\t<td> </td>\n\t";
|
---|
| 254 | if ($tabkeng == "32") {
|
---|
| 255 | echo "<td class='emz sum' title='Summe Ertragsmeßzahl'>".number_format($emzsum,0,",",".")."</td>";
|
---|
| 256 | }
|
---|
| 257 | else {
|
---|
| 258 | echo "<td> </td>";
|
---|
| 259 | }
|
---|
| 260 | echo "\n\t<td class='kurz'> </td>\n</tr>\n";
|
---|
| 261 | }
|
---|
| 262 | if ($j > 0) {
|
---|
| 263 | echo "</table>\n";
|
---|
| 264 | }
|
---|
| 265 | $i++;
|
---|
| 266 | }
|
---|
| 267 | */
|
---|
| 268 |
|
---|
| 269 | // ALB: BAULASTEN HINWEISE TEXTE VERFAHREN
|
---|
| 270 |
|
---|
| 271 | // G R U N D B U C H
|
---|
| 272 | echo "\n<table class='outer'>\n<tr>\n\t<td>"; // link *neben* Ueberschrift
|
---|
| 273 | echo "\n\t\t<a name='gb'></a>\n\t\t<h3>Grundbücher</h3>";
|
---|
| 274 | echo "\n\t</td>\n\t<td>";
|
---|
| 275 | echo "\n\t\t<p class='nwlink noprint'>\n\t\t\t\t<a href='".$self."gkz=".$gkz."&gmlid=".$gmlid."&style=".$style;
|
---|
| 276 | if ($idanzeige) { echo "&id=j";}
|
---|
| 277 | // Umschalter. Ruft sich selbst mit geaend. Param. auf. Posit. auf Marke #gb
|
---|
| 278 | if ($eig=="j") {echo "&eig=n#gb' title='Flurstücksnachweis'>ohne Eigentümer</a>\n\t\t</p>";
|
---|
| 279 | } else { echo "&eig=j#gb' title='Flurstücks- und Eigentümernachweis'>mit Eigentümer</a>\n\t\t</p>";}
|
---|
| 280 | echo "\n\t</td>\n</tr>\n</table>\n";
|
---|
| 281 |
|
---|
| 282 |
|
---|
| 283 | // BUCHUNGSSTELLEn zum FS (istGebucht)
|
---|
| 284 | $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer as lfd, s.zaehler, s.nenner, ";
|
---|
| 285 | $sql.="s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond ";
|
---|
| 286 | // s.beschreibungdesumfangsderbuchung as umf, ?
|
---|
| 287 | $sql.="FROM alkis_beziehungen v "; // Bez Flurst.- Stelle.
|
---|
| 288 | $sql.="JOIN ax_buchungsstelle s ON v.beziehung_zu=s.gml_id ";
|
---|
| 289 | $sql.="WHERE v.beziehung_von='".$gmlid."' "; // id FS
|
---|
| 290 | $sql.="AND v.beziehungsart='istGebucht' ";
|
---|
| 291 | $sql.="ORDER BY s.laufendenummer;";
|
---|
| 292 | $ress=pg_query($con,$sql);
|
---|
| 293 | if (!$ress) echo "\n<p class='err'>Keine Buchungsstelle.<br>\nSQL= ".$sql."</p>\n";
|
---|
| 294 | $bs=0; // Z.Buchungsstelle
|
---|
| 295 | while($rows = pg_fetch_array($ress)) {
|
---|
| 296 | // BUCHUNGSBLATT zur Buchungsstelle (istBestandteilVon)
|
---|
| 297 | $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, ";
|
---|
| 298 | $sql.="z.bezeichnung "; // stelle -> amtsgericht
|
---|
| 299 | $sql.="FROM alkis_beziehungen v "; // Bez. Stelle - Blatt
|
---|
| 300 | $sql.="JOIN ax_buchungsblatt b ON v.beziehung_zu=b.gml_id ";
|
---|
| 301 | $sql.="JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk ";
|
---|
| 302 | $sql.="WHERE v.beziehung_von='".$rows["gml_id"]."' "; // id Buchungsstelle
|
---|
| 303 | $sql.="AND v.beziehungsart='istBestandteilVon' ";
|
---|
| 304 | $sql.="ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;";
|
---|
| 305 |
|
---|
| 306 | $resg=pg_query($con,$sql);
|
---|
| 307 | if (!$resg) echo "\n<p class='err'>Keine Buchungsblatt.<br>\nSQL= ".$sql."</p>\n";
|
---|
| 308 | $bl=0; // Z.Blatt
|
---|
| 309 | while($rowg = pg_fetch_array($resg)) {
|
---|
| 310 | $beznam=$rowg["bezeichnung"];
|
---|
| 311 | echo "\n<hr>\n<table class='outer'>\n<tr>\n<td>"; // link *neben* GB-Rahmen
|
---|
| 312 | echo "\n\t<table class='kennz' title='Bestandskennzeichen'>\n\t<tr>\n\t\t<td class='head'>Bezirk</td>";
|
---|
| 313 | echo "\n\t\t<td class='head'>".blattart($rowg["blattart"])."</td>\n\t\t<td class='head'>Lfd-Nr,</td>\n\t\t<td class='head'>Buchungsart</td>\n\t</tr>";
|
---|
| 314 | echo "\n\t<tr>\n\t\t<td title='Grundbuchbezirk'>".$rowg["bezirk"]."<br>".$beznam."</td>";
|
---|
| 315 | echo "\n\t\t<td title='Grundbuch-Blatt'>".$rowg["blatt"]."</td>";
|
---|
| 316 | echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rows["lfd"]."</td>";
|
---|
| 317 | echo "\n\t\t<td title='Buchungsart'>".$rows["buchungsart"]."<br>".buchungsart($rows["buchungsart"])."</td>\n\t</tr>\n\t</table>";
|
---|
| 318 | if ($rows["zaehler"] <> "") {
|
---|
| 319 | echo "\n<p class='ant'>".$rows["zaehler"]."/".$rows["nenner"]." Anteil am Flurstück</p>";
|
---|
| 320 | }
|
---|
| 321 | echo "\n</td>\n<td>";
|
---|
| 322 | if ($idanzeige) {
|
---|
| 323 | linkgml($gkz, $rows["gml_id"], "Buchungsstelle");
|
---|
| 324 | linkgml($gkz, $rowg["gml_id"], "Buchungsblatt");
|
---|
| 325 | }
|
---|
| 326 | echo "<br>\n";
|
---|
| 327 | echo "\n\t<p class='nwlink'>weitere Auskunft:<br>\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0]."&style=".$style;
|
---|
| 328 | if ($idanzeige) echo "&id=j";
|
---|
| 329 | echo "' title='Grundbuchnachweis mit kompletter Eigentümerangabe'>GB-Nachweis</a>\n\t</p>\n</td>\n";
|
---|
| 330 | echo "</table>";
|
---|
| 331 |
|
---|
| 332 | if ($rowg["blattart"] <> "1000") {
|
---|
| 333 | echo "\n<p>Blattart: ".blattart($rowg["blattart"])." (".$rowg["blattart"].").<br>\n";
|
---|
| 334 | }
|
---|
| 335 |
|
---|
| 336 | // ++++++Weitere Felder ausgeben ?????? oder in SQL weglassen
|
---|
| 337 | // +++ STYLE ?
|
---|
| 338 | if ($rows["sond"] != "") {echo "<p>Sondereigentum: ".$rows["sond"]."</p>";}
|
---|
| 339 | if ($rows["nrpl"] != "") {echo "<p>Nr im A-Plan: ".$rows["nrpl"]."</p>";}
|
---|
| 340 |
|
---|
| 341 |
|
---|
| 342 | // E I G E N T U E M E R, zum GB
|
---|
| 343 | if ($eig=="j") { // Wahlweise mit/ohne EigentÃŒmer
|
---|
| 344 | //echo "\n\n<h4>Eigentümer:</h4>\n";
|
---|
| 345 | // Person <-benennt< AX_Namensnummer >istBestandteilVon-> AX_Buchungsblatt
|
---|
| 346 |
|
---|
| 347 | // Schleife 1: N a m e n s n u m m e r
|
---|
| 348 | // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt
|
---|
| 349 | $sql="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, ";
|
---|
| 350 | $sql.="n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass ";
|
---|
| 351 | $sql.="FROM ax_namensnummer n ";
|
---|
| 352 | $sql.="JOIN alkis_beziehungen b ON b.beziehung_von=n.gml_id ";
|
---|
| 353 | $sql.="WHERE b.beziehung_zu='".$rowg["gml_id"]."' "; // id blatt
|
---|
| 354 | $sql.="AND b.beziehungsart='istBestandteilVon' ";
|
---|
| 355 | $sql.="ORDER BY laufendenummernachdin1421;";
|
---|
| 356 | $resn=pg_query($con, $sql);
|
---|
| 357 | if (!$resn) {echo "<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";}
|
---|
| 358 | echo "\n<table class='eig'>";
|
---|
| 359 | $n=0; // Z.NamNum.
|
---|
| 360 | while($rown = pg_fetch_array($resn)) {
|
---|
| 361 | echo "\n<tr>\n\t<td class='nanu' title='Namens-Nummer'>";
|
---|
| 362 | // VOR die Tabelle: "EigentÃŒmer"
|
---|
| 363 | $namnum=kurz_namnr($rown["lfd"]);
|
---|
| 364 | echo "\n\t\t<p>".$namnum."</p>";
|
---|
| 365 | if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer");}
|
---|
| 366 | echo "\n\t</td>\n\t<td>";
|
---|
| 367 | $rechtsg=$rown["adr"];
|
---|
| 368 | if ($rechtsg != "" ) {
|
---|
| 369 | if ($rechtsg == 9999) { // sonstiges
|
---|
| 370 | echo "\n\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>";
|
---|
| 371 | } else {
|
---|
| 372 | echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>";
|
---|
| 373 | }
|
---|
| 374 | }
|
---|
| 375 |
|
---|
| 376 | // Schleife 2: P e r s o n
|
---|
| 377 | // Beziehung: ax_person <benennt< ax_namensnummer
|
---|
| 378 | $sql="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad ";
|
---|
| 379 | $sql.="FROM ax_person p ";
|
---|
| 380 | $sql.="JOIN alkis_beziehungen v ON v.beziehung_zu=p.gml_id ";
|
---|
| 381 | $sql.="WHERE v.beziehung_von='".$rown["gml_id"]."' "; // id num
|
---|
| 382 | $sql.="AND v.beziehungsart='benennt';";
|
---|
| 383 | $rese=pg_query($con, $sql);
|
---|
| 384 | if (!$rese) echo "\n\t<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";
|
---|
| 385 | $i=0; // Z.Eig.
|
---|
| 386 | while($rowe = pg_fetch_array($rese)) {
|
---|
| 387 | $diePerson="";
|
---|
| 388 | if ($rowe["akademischergrad"] <> "") $diePerson=$rowe["akademischergrad"]." ";
|
---|
| 389 | $diePerson.=$rowe["nachnameoderfirma"];
|
---|
| 390 | if ($rowe["vorname"] <> "") $diePerson.=", ".$rowe["vorname"];
|
---|
| 391 | if ($rowe["namensbestandteil"] <> "") $diePerson.=". ".$rowe["namensbestandteil"];
|
---|
| 392 | if ($rowe["geburtsdatum"] <> "") $diePerson.=", geb. ".$rowe["geburtsdatum"];
|
---|
| 393 | if ($rowe["geburtsname"] <> "") $diePerson.=", geb. ".$rowe["geburtsname"];
|
---|
| 394 | $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute
|
---|
| 395 | // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0
|
---|
| 396 | if ($i > 0) {echo "\n<tr>\n\t<td></td>\n\t<td>";}
|
---|
| 397 | // Spalte 2 = Angaben
|
---|
| 398 | echo "\n\t\t<p class='geig' title='Eigentümerart ".eigentuemerart($rown["eigentuemerart"])."'>".$diePerson."</p>\n\t</td>";
|
---|
| 399 | // Spalte 3 = Link
|
---|
| 400 | echo "\n\t<td>\n\t\t<p class='nwlink noprint'>\n\t\t\t<a href='alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowe[0]."&style=".$style;
|
---|
| 401 | if ($idanzeige) { echo "&id=j";}
|
---|
| 402 | echo "' title='vollständiger Name und Adresse eines Eigentümers'>Person</a>\n\t\t</p>";
|
---|
| 403 | if ($idanzeige) { linkgml($gkz, $rowe["gml_id"], "Person");}
|
---|
| 404 | echo "\n\t</td>\n</tr>";
|
---|
| 405 | $i++; // Z. Person
|
---|
| 406 | if ($rown["zaehler"] <> "") {
|
---|
| 407 | echo "\n<tr>\n\t<td></td>\n\t<td><p class='avh' title='Anteil'>".$rown["zaehler"]."/".$rown["nenner"]." Anteil</p>";
|
---|
| 408 | echo "\n</td>\n\t<td></td>\n</tr>";
|
---|
| 409 | }
|
---|
| 410 | }
|
---|
| 411 | /* Wann warnen ?
|
---|
| 412 | Beispiel: NamNum mit "Erbengemeinschaft" >bestehtAusRechtsverhaeltnissenZu> andere NamNum
|
---|
| 413 | if ($i == 0) { // keine Pers zur NamNum
|
---|
| 414 | if ($rechtsg != 9999) { // Normal bei Sondereigentum
|
---|
| 415 | echo "\n<tr>\n<td>";
|
---|
| 416 | linkgml($gkz, $rown["gml_id"], "Namensnummer");
|
---|
| 417 | echo "</td>\n<td>\n\t\t<p class='err'>Kein Eigentümer gefunden.</p>";
|
---|
| 418 | echo "\n\t\t\n\t</td>\n\t<td></td>\n<tr>";
|
---|
| 419 | }
|
---|
| 420 | }
|
---|
| 421 | */
|
---|
| 422 | $n++; // Z.NamNum
|
---|
| 423 | }
|
---|
| 424 | echo "\n</table>\n";
|
---|
| 425 | if ($n == 0) {
|
---|
| 426 | if ($rowg["blattart"] == 1000) {
|
---|
| 427 | echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
|
---|
| 428 | linkgml($gkz, $rowg["gml_id"], "Buchungsblatt");
|
---|
| 429 | } else {
|
---|
| 430 | echo "\n<p>dazu keine Eigentümer.</p>";
|
---|
| 431 | linkgml($gkz, $rowg["gml_id"], "Buchungsblatt");
|
---|
| 432 | }
|
---|
| 433 | }
|
---|
| 434 | } // Ende Option EigentuemerNW
|
---|
| 435 | $bl++;
|
---|
| 436 | }
|
---|
| 437 | if ($bl == 0) {
|
---|
| 438 | echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>";
|
---|
| 439 | linkgml($gkz, $rows["gml_id"], "Buchungstelle");
|
---|
| 440 | }
|
---|
| 441 | // Test BEGINN
|
---|
| 442 | //echo "\n<p>Buchungsstelle ".$rows["gml_id"]."</p>";
|
---|
| 443 | //if ($idanzeige) {linkgml($gkz, $rows["gml_id"], "Buchungsstelle");}
|
---|
| 444 | // Test ENDE
|
---|
| 445 |
|
---|
| 446 | // Buchungstelle >an> Buchungstelle >istBestandteilVon> BLATT -> Bezirk
|
---|
| 447 | $sql ="SELECT s.gml_id AS s_gml, s.buchungsart, s.laufendenummer as lfd, ";
|
---|
| 448 | // , s.beschreibungdesumfangsderbuchung as umf ?
|
---|
| 449 | $sql.="s.zaehler, s.nenner, s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond, ";
|
---|
| 450 | $sql.="b.gml_id AS g_gml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, ";
|
---|
| 451 | $sql.="z.bezeichnung "; // stelle -> amtsgericht
|
---|
| 452 | $sql.="FROM alkis_beziehungen an "; // Bez. Stelle - Stelle
|
---|
| 453 | $sql.="JOIN ax_buchungsstelle s ON an.beziehung_von=s.gml_id ";
|
---|
| 454 | $sql.="JOIN alkis_beziehungen v ON s.gml_id=v.beziehung_von "; // Bez. Stelle - Blatt
|
---|
| 455 | $sql.="JOIN ax_buchungsblatt b ON v.beziehung_zu=b.gml_id ";
|
---|
| 456 | $sql.="JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk ";
|
---|
| 457 | $sql.="WHERE an.beziehung_zu='".$rows["gml_id"]."' "; // id herrschende Buchungsstelle
|
---|
| 458 | $sql.="AND an.beziehungsart='an' ";
|
---|
| 459 | $sql.="AND v.beziehungsart='istBestandteilVon' ";
|
---|
| 460 | $sql.="ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;";
|
---|
| 461 | $resan=pg_query($con,$sql);
|
---|
| 462 | if (!$resan) echo "\n<p class='err'>Keine weiteren Buchungsstellen.<br>\nSQL=<br>".$sql."</p>\n";
|
---|
| 463 | $an=0; // Stelle an Stelle
|
---|
| 464 | while($rowan = pg_fetch_array($resan)) {
|
---|
| 465 | $beznam=$rowan["bezeichnung"];
|
---|
| 466 | echo "\n<hr>\n<table class='outer'>\n<tr>\n<td>"; // link *neben* GB-Rahmen
|
---|
| 467 | echo "\n\t<table class='kennz' title='Bestandskennzeichen'>\n\t<tr>\n\t\t<td class='head'>Bezirk</td>";
|
---|
| 468 | echo "\n\t\t<td class='head'>".blattart($rowan["blattart"])."</td>\n\t\t<td class='head'>Lfd-Nr,</td>\n\t\t<td class='head'>Buchungsart</td>\n\t</tr>";
|
---|
| 469 | echo "\n\t<tr>\n\t\t<td title='Grundbuchbezirk'>".$rowan["bezirk"]."<br>".$beznam."</td>";
|
---|
| 470 | echo "\n\t\t<td title='Grundbuch-Blatt'>".$rowan["blatt"]."</td>";
|
---|
| 471 | echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowan["lfd"]."</td>";
|
---|
| 472 | echo "\n\t\t<td title='Buchungsart'>".$rowan["buchungsart"]."<br>".buchungsart($rowan["buchungsart"])."</td>\n\t</tr>\n\t</table>";
|
---|
| 473 | if ($rowan["zaehler"] <> "") {
|
---|
| 474 | echo "\n<p class='ant'>".$rowan["zaehler"]."/".$rowan["nenner"]." Anteil am Flurstück</p>";
|
---|
| 475 | }
|
---|
| 476 | echo "\n</td>\n<td>";
|
---|
| 477 | if ($idanzeige) {
|
---|
| 478 | linkgml($gkz, $rowan["s_gml"], "Buchungsstelle");
|
---|
| 479 | linkgml($gkz, $rowan["g_gml"], "Buchungsblatt");
|
---|
| 480 | }
|
---|
| 481 | echo "<br>\n";
|
---|
| 482 | echo "\n\t<p class='nwlink'>weitere Auskunft:<br>\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowan["g_gml"]."&style=".$style;
|
---|
| 483 | if ($idanzeige) echo "&id=j";
|
---|
| 484 | echo "' title='Grundbuchnachweis mit kompletter Eigentümerangabe'>GB-Nachweis</a>\n\t</p>\n</td>\n";
|
---|
| 485 | echo "</table>";
|
---|
| 486 |
|
---|
| 487 | if ($rowan["blattart"] <> "1000") {
|
---|
| 488 | echo "\n<p>Blattart: ".blattart($rowan["blattart"])." (".$rowan["blattart"].").<br>\n";
|
---|
| 489 | }
|
---|
| 490 |
|
---|
| 491 | // +++ Weitere Felder ausgeben oder in SQL weglassen??
|
---|
| 492 | // +++ STYLE ?
|
---|
| 493 | if ($rowan["sond"] != '') {echo "<p>Sondereigentum: ".$rowan["sond"]."</p>";}
|
---|
| 494 | if ($rowan["nrpl"] != '') {echo "<p>Nr im A-Plan: ".$rowan["nrpl"]."</p>";}
|
---|
| 495 |
|
---|
| 496 | if ($eig=="j") {
|
---|
| 497 | echo "\n<p>Eigentümer vorlÀufig dem GB-Nachweis entnehmen.</p>";
|
---|
| 498 | }
|
---|
| 499 | // +++ Lösung: Den Teil EigentÌmer (Namensnummer > Person, siehe oben)
|
---|
| 500 | // als Funktion auslagern und hier erneut aufrufen
|
---|
| 501 |
|
---|
| 502 | $an++;
|
---|
| 503 | }
|
---|
| 504 | // Zaehler $an==0 ist hier der Normalfall
|
---|
| 505 | $bs++;
|
---|
| 506 | }
|
---|
| 507 | if ($bs == 0) {
|
---|
| 508 | echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>";
|
---|
| 509 | linkgml($gkz, $gmlid, "Flurstück");
|
---|
| 510 | }
|
---|
| 511 | ?>
|
---|
| 512 |
|
---|
| 513 | <form action=''>
|
---|
| 514 | <div class='buttonbereich noprint'>
|
---|
| 515 | <hr>
|
---|
| 516 | <input type='button' name='back' value='<<' title='Zurück' onClick='javascript:history.back()'>
|
---|
| 517 | <input type='button' name='print' value='Druck' title='Seite Drucken' onClick='window.print()'>
|
---|
| 518 | <input type='button' name='close' value='X' title='Fenster schließen' onClick='window.close()'>
|
---|
| 519 | </div>
|
---|
| 520 | </form>
|
---|
| 521 |
|
---|
| 522 | <?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl,$style); ?>
|
---|
| 523 |
|
---|
| 524 | </body>
|
---|
| 525 | </html> |
---|