source: trunk/var/www/info/alkis/alkisfsnw.php @ 43

Revision 43, 16.2 KB checked in by frank.jaeger, 14 years ago (diff)
Line 
1<?php
2/*      Modul: alkisfsnw.php
3        Version:
4        31.08.2010      $style=ALKIS entfernt, alles Kompakt
5        02.09.2010  Mit Icons
6        07.09.2010  Kennzeichen-Rahmen f. fiktives Blatt, Schluessel anschaltbar
7        08.09.2010  ..
8
9        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
10        FlurstÃŒcksnachweis fuer ein FlurstÃŒckskennzeichen aus ALKIS PostNAS
11        Parameter:      &gkz= &gmlid= &eig=j/n
12
13        ToDo: NamNum >bestehtAusRechtsverhaeltnissenZu> NamNum */
14ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');
15session_start();
16// Bindung an Mapbender-Authentifizierung
17require_once("/data/mapwww/http/php/mb_validateSession.php");
18require_once("/data/conf/alkis_www_conf.php");
19include("alkisfkt.php");
20?>
21<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
22<html>
23<head>
24        <meta name="author" content="Frank Jaeger" >
25        <meta http-equiv="cache-control" content="no-cache">
26        <meta http-equiv="pragma" content="no-cache">
27        <meta http-equiv="expires" content="0">
28        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
29        <title>ALKIS Flurst&uuml;cksnachweis</title>
30        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
31        <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico">
32        <style type='text/css' media='print'>
33                .noprint { visibility: hidden;}
34        </style>
35</head>
36<body>
37<?php
38$gkz=urldecode($_REQUEST["gkz"]);
39$gmlid=urldecode($_REQUEST["gmlid"]);
40$eig=urldecode($_REQUEST["eig"]);
41
42// getswitch($idanzeige, $showkey);
43$id = isset($_GET["id"]) ? $_GET["id"] : "n";
44if ($id == "j") {
45        $idanzeige=true;
46} else {
47        $idanzeige=false;
48}
49$keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
50if ($keys == "j") {
51        $showkey=true;
52} else {
53        $showkey=false;
54}
55
56$dbname = 'alkis05' . $gkz;
57$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
58
59// F L U R S T U E C K
60$sql ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche, f.zeitpunktderentstehung, ";
61$sql.="g.gemarkungsnummer, g.bezeichnung ";
62$sql.="FROM ax_flurstueck f ";
63$sql.="JOIN ax_gemarkung  g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ";
64$sql.="WHERE f.gml_id='".$gmlid."';";
65$res=pg_query($con,$sql);
66if (!$res) echo "\n<p class='err'>Fehler bei Flurstuecksdaten\n<br>".$sql."</p>\n";
67if ($row = pg_fetch_array($res)) {
68        $gemkname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
69        $gmkgnr=$row["gemarkungsnummer"];
70        $flurnummer=$row["flurnummer"];
71        $flstnummer=$row["zaehler"];
72        $nenner=$row["nenner"];
73        if ($nenner > 0) $flstnummer.="/".$nenner; // BruchNr
74        $flae=number_format($row["amtlicheflaeche"],0,",",".") . " m&#178;";
75} else {echo "Fehler! Kein Treffer fuer gml_id=".$gmlid;}
76
77// Balken
78if ($eig=="j") {
79        echo "<p class='fsei'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
80        echo "\n<h2><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Flurst&uuml;ck mit Eigent&uuml;mer</h2>\n";
81} else {
82        echo "<p class='fskennz'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
83        echo "\n<h2><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Flurst&uuml;ck</h2>\n";
84}
85echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite
86
87        // darin Tabelle Kennzeichen
88        echo "\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>";
89                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>";
90                echo "\n\t<tr>\n\t\t<td title='Gemarkung'>";
91                if ($showkey) {         
92                        echo "<span class='key'>".$gmkgnr."</span><br>";
93                }               
94                echo $gemkname."</td>";
95                echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
96                echo "\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>";
97        echo "\n\t</table>";
98
99echo "\n\t</td>\n\t<td>"; // rechte Seite
100
101        // FS-Daten 2 Spalten
102        echo "\n\t<table class='fsd'>";
103                echo "\n\t<tr>\n\t\t<td>Entstehung</td>";
104                echo "\n\t\t<td>".$row["zeitpunktderentstehung"]."</td>\n\t</tr>";
105                echo "\n\t<tr>\n\t\t<td>letz. Fortf</td>";
106                echo "\n\t\t<td title='Jahrgang / Fortf&uuml;hrungsnummer - Fortf&uuml;hrungsart'>".$row["name"]."</td>\n\t</tr>";
107        echo "\n\t</table>";
108        if ($idanzeige) {linkgml($gkz, $gmlid, "Flurst&uuml;ck"); }
109echo "\n\t</td>\n</tr>\n</table>";
110
111//      echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame  . "</td>\n</tr>";
112// Ende Seitenkopf
113
114echo "\n<hr>";
115echo "\n<p class='nwlink noprint'>weitere Auskunft:</p>"; // oben rechts von der Tabelle
116echo "\n<table class='fs'>";
117       
118        fs_gebietszug($con, $row["gemeinde"], $row["kreis"], $row["regierungsbezirk"], $showkey); // Gebietszugehoerigkeit
119
120        fs_lage($con, $gmlid, $gkz, $showkey); // Adresse, Lagebezeichnung
121
122        fs_nutz($con, $gmlid, $showkey); // Tatsaechliche Nutzung
123
124        // Flaeche und Link auf GebÀude-Auswertung
125        echo "\n<tr>";
126                echo "\n\t<td class='ll'>Fl&auml;che:</td>"; // Sp. 1
127                echo "\n\t<td class='lr'>".$flae."</td>"; // Sp. 2
128                echo "\n\t<td>"; // Sp. 3
129                        echo "\n\t\t<p class='nwlink noprint'>"; // Gebaeude-Verschneidung
130                                echo "\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
131                                if ($idanzeige) {echo "&amp;id=j";}
132                                if ($showkey)   {echo "&amp;id=j";}
133                                echo "' title='Geb&auml;udenachweis'>Geb&auml;ude <img src='ico/Haus.ico' width='16' height='16' alt=''></a>";
134                        echo "\n\t\t</p>";
135                echo "\n\t</td>";
136        echo "\n</tr>";
137
138echo "\n</table>";
139 // ALB: KLASSIFIZIERUNG  BAULASTEN  HINWEISE  TEXTE  VERFAHREN
140
141// G R U N D B U C H
142echo "\n<table class='outer'>";
143        echo "\n<tr>";
144                echo "\n\t<td>";
145                        echo "\n\t\t<a name='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.ico' width='16' height='16' alt=''> Grundb&uuml;cher</h3>";
146                echo "\n\t</td>";
147                echo "\n\t<td>";
148                        echo "\n\t\t<p class='nwlink noprint'>";
149                                echo "\n\t\t\t<a href='".$self."gkz=".$gkz."&amp;gmlid=".$gmlid;
150                                if ($idanzeige) { echo "&amp;id=j";}
151                                if ($showkey)   {echo "&amp;showkey=j";}
152                                // Umschalter: FS-Nachw ruft sich selbst mit geaend. Param. auf. Posit. auf Marke #gb
153                                if ($eig=="j") {
154                                        echo "&amp;eig=n#gb' title='Flurst&uuml;cksnachweis'>ohne Eigent&uuml;mer</a>";
155                                } else {       
156                                        echo "&amp;eig=j#gb' title='Flurst&uuml;cks- und Eigent&uuml;mernachweis'>mit Eigent&uuml;mer";
157                                        echo "<img src='ico/EigentuemerGBzeile.ico' width='16' height='16' alt=''></a>";
158                                }                         echo "\n\t\t</p>";
159                echo "\n\t</td>";
160        echo "\n</tr>";
161echo "\n</table>\n";
162
163// B U C H U N G S S T E L L E N  zum FS (istGebucht)
164$sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer as lfd, s.zaehler, s.nenner, ";
165$sql.="s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond ";
166//  s.beschreibungdesumfangsderbuchung as umf,  ?
167$sql.="FROM  alkis_beziehungen  v "; // Bez Flurst.- Stelle.
168$sql.="JOIN  ax_buchungsstelle  s ON v.beziehung_zu=s.gml_id ";
169$sql.="WHERE v.beziehung_von='".$gmlid."' "; // id FS
170$sql.="AND   v.beziehungsart='istGebucht' ";
171$sql.="ORDER BY s.laufendenummer;";
172$ress=pg_query($con,$sql);
173if (!$ress) {
174        echo "\n<p class='err'>Keine Buchungsstelle.<br>\nSQL= ".$sql."</p>\n";
175}
176$bs=0; // Z.Buchungsstelle
177while($rows = pg_fetch_array($ress)) {
178        // B U C H U N G S B L A T T  zur Buchungsstelle (istBestandteilVon)
179        $sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, ";
180        $sql.="z.bezeichnung ";  // stelle -> amtsgericht
181        $sql.="FROM  alkis_beziehungen      v "; // Bez. Stelle - Blatt
182        $sql.="JOIN  ax_buchungsblatt       b ON v.beziehung_zu=b.gml_id ";
183        $sql.="JOIN  ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk ";
184        $sql.="WHERE v.beziehung_von='".$rows["gml_id"]."' "; // id Buchungsstelle
185        $sql.="AND   v.beziehungsart='istBestandteilVon' ";
186        $sql.="ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;";
187
188        $resg=pg_query($con,$sql);
189        if (!$resg) echo "\n<p class='err'>Keine Buchungsblatt.<br>\nSQL= ".$sql."</p>\n";
190        $bl=0; // Z.Blatt
191        while($rowg = pg_fetch_array($resg)) {
192                $beznam=$rowg["bezeichnung"];
193                $blattkeyg=$rowg["blattart"];
194                $blattartg=blattart($blattkeyg);
195                echo "\n<hr>\n<table class='outer'>";
196                echo "\n<tr>"; // 1 row only
197                        echo "\n\t<td>"; // Outer linke Spalte:
198
199                                // Rahmen mit GB-Kennz
200                                if ($blattkeyg == 1000) {
201                                        echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>";
202                                }else {
203                                        echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted
204                                }                               
205                                        echo "\n\t<tr>\n\t\t<td class='head'>Bezirk</td>";
206                                                echo "\n\t\t<td class='head'>".$blattartg."</td>";
207                                                echo "\n\t\t<td class='head'>Lfd-Nr,</td>";
208                                                echo "\n\t\t<td class='head'>Buchungsart</td>";
209                                        echo "\n\t</tr>";
210                                        echo "\n\t<tr>";
211                                                echo "\n\t\t<td title='Grundbuchbezirk'>";
212                                                if ($showkey) {                                         
213                                                        echo "<span class='key'>".$rowg["bezirk"]."</span><br>";                                               
214                                                }                                               
215                                                echo $beznam."</td>";
216                                                echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>";
217                                                echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rows["lfd"]."</td>";
218                                                echo "\n\t\t<td title='Buchungsart'>";
219                                                if ($showkey) {
220                                                        echo "<span class='key'>".$rows["buchungsart"]."</span><br>";
221                                                }
222                                                echo buchungsart($rows["buchungsart"])."</td>";
223                                        echo "\n\t</tr>";
224                                echo "\n\t</table>";
225
226                                if ($rows["zaehler"] <> "") {
227                                        echo "\n<p class='ant'>".$rows["zaehler"]."/".$rows["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
228                                }
229                        echo "\n</td>";
230
231                        echo "\n<td>"; // Outer rechte Spalte: NW-Links
232                                if ($idanzeige) {
233                                        linkgml($gkz, $rows["gml_id"], "Buchungsstelle");
234                                        echo "<br>";
235                                        linkgml($gkz, $rowg["gml_id"], "Buchungsblatt");
236                                }
237                                echo "\n\t<p class='nwlink'>weitere Auskunft:<br>";
238                                        echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowg[0];
239                                                if ($idanzeige) {echo "&amp;id=j";}
240                                                if ($showkey)   {echo "&amp;showkey=j";}
241                                                if ($blattkeyg == 1000) {                                               
242                                                        echo "' title='Grundbuchnachweis mit kompletter Eigent&uuml;merangabe'>";
243                                                } else {
244                                                        echo "' title='Grundbuchnachweis'>";
245                                                }                                               
246                                                echo $blattartg." <img src='ico/GBBlatt_link.ico' width='16' height='16' alt=''></a>";
247                                echo "\n\t</p>";
248                        echo "\n</td>";
249                echo "\n</tr>";
250                echo "\n</table>";
251
252                // +++ Weitere Felder ausgeben ?? beschreibungdesumfangsderbuchung                 if ($rows["sond"] != "") {
253                        echo "<p class='sond' title='Sondereigentum'>Verbunden mit dem Sondereigentum<br>".$rows["sond"]."</p>";
254                }
255                if ($rows["nrpl"] != "") {
256                        echo "<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$rows["nrpl"]."</span> im Aufteilungsplan.</p>";         
257                }
258                 // E I G E N T U E M E R, zum GB
259                // Person <-benennt< AX_Namensnummer  >istBestandteilVon-> AX_Buchungsblatt
260                if ($eig=="j") { // Wahlweise mit/ohne EigentÃŒmer                         $gmlblatt = $rowg["gml_id"]; // id blatt
261                        $n = eigentuemer($con, $gkz, $idanzeige, $gmlblatt, false); // hier aber ohne Adresse
262                        if ($n == 0) {
263                                if ($blattkeyg == 1000) {
264                                        echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
265                                        linkgml($gkz, $rowg["gml_id"], "Buchungsblatt");
266                                } else {
267                                        echo "\n<p>ohne Eigent&uuml;mer.</p>";                                 }
268                        }
269                }
270                $bl++;         }
271        if ($bl == 0) {
272                echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>";
273                linkgml($gkz, $rows["gml_id"], "Buchungstelle");
274        }
275
276        // Buchungstelle  >an> Buchungstelle  >istBestandteilVon> BLATT -> Bezirk
277        $sql ="SELECT s.gml_id AS s_gml, s.buchungsart, s.laufendenummer as lfd, ";
278        // , s.beschreibungdesumfangsderbuchung as umf   ?
279        $sql.="s.zaehler, s.nenner, s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond, ";
280        $sql.="b.gml_id AS g_gml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, ";
281        $sql.="z.bezeichnung ";  // stelle -> amtsgericht
282        $sql.="FROM  alkis_beziehungen an "; // Bez. Stelle - Stelle
283        $sql.="JOIN  ax_buchungsstelle s ON an.beziehung_von=s.gml_id ";
284        $sql.="JOIN  alkis_beziehungen v ON s.gml_id=v.beziehung_von "; // Bez. Stelle - Blatt
285        $sql.="JOIN  ax_buchungsblatt  b ON v.beziehung_zu=b.gml_id ";
286        $sql.="JOIN  ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk ";
287        $sql.="WHERE an.beziehung_zu='".$rows["gml_id"]."' "; // id herrschende Buchungsstelle
288        $sql.="AND   an.beziehungsart='an' ";
289        $sql.="AND   v.beziehungsart='istBestandteilVon' ";
290        $sql.="ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;";
291        $resan=pg_query($con,$sql);
292        if (!$resan) {
293                echo "\n<p class='err'>Keine weiteren Buchungsstellen.<br>\nSQL=<br>".$sql."</p>\n";
294        }
295        $an=0; // Stelle an Stelle
296        while($rowan = pg_fetch_array($resan)) {
297                $beznam=$rowan["bezeichnung"];
298                $blattkeyan=$rowan["blattart"]; // Schluessel von Blattart
299                $blattartan=blattart($blattkeyan);
300                echo "\n<hr>\n<table class='outer'>";
301                echo "\n<tr>"; // 1 row only
302                        echo "\n<td>"; // outer linke Spalte
303
304                                // Rahmen mit Kennzeichen GB
305                                if ($blattkeyan == 1000) {
306                                        echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>";
307                                } else {
308                                        echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted
309                                }                               
310                                        echo "\n\t<tr>";
311                                                echo "\n\t\t<td class='head'>Bezirk</td>";
312                                                echo "\n\t\t<td class='head'>".$blattartan."</td>";
313                                                echo "\n\t\t<td class='head'>Lfd-Nr,</td>";
314                                                echo "\n\t\t<td class='head'>Buchungsart</td>";
315                                        echo "\n\t</tr>";
316                                        echo "\n\t<tr>";
317                                                echo "\n\t\t<td title='Grundbuchbezirk'>";
318                                                if ($showkey) {                                         
319                                                        echo "<span class='key'>".$rowan["bezirk"]."</span><br>";
320                                                }                                               
321                                                echo $beznam."</td>";
322                                                echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowan["blatt"]."</span></td>";
323                                                echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rowan["lfd"]."</td>";
324                                                echo "\n\t\t<td title='Buchungsart'>";
325                                                if ($showkey) {                                         
326                                                        echo "<span class='key'>".$rowan["buchungsart"]."</span><br>";
327                                                }
328                                                echo buchungsart($rowan["buchungsart"])."</td>";
329                                        echo "\n\t</tr>";
330                                echo "\n\t</table>";
331                                if ($rowan["zaehler"] <> "") {
332                                        echo "\n<p class='ant'>".$rowan["zaehler"]."/".$rowan["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
333                                }
334                        echo "\n</td>";
335                        echo "\n<td>"; // outer rechte Spalte
336                                if ($idanzeige) {
337                                        linkgml($gkz, $rowan["s_gml"], "Buchungsstelle");
338                                        echo "<br>";
339                                        linkgml($gkz, $rowan["g_gml"], "Buchungsblatt");
340                                }
341                                echo "\n<br>";
342                                echo "\n\t<p class='nwlink'>";
343                                        echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowan["g_gml"];
344                                                if ($idanzeige) {echo "&amp;id=j";}
345                                                if ($showkey)   {echo "&amp;showkey=j";}
346                                                echo "' title='Grundbuchnachweis mit kompletter Eigent&uuml;merangabe'>";
347                                                echo $blattartan;
348                                                echo " <img src='ico/GBBlatt_link.ico' width='16' height='16' alt=''>";                         
349                                        echo "</a>";
350                                echo "\n\t</p>";
351                        echo "\n\t</td>";
352                echo "\n</tr>";
353                echo "\n</table>";
354
355                if ($blattkeyan != 1000) {
356                        echo "\n<p>Blattart: ".$blattartan." (".$blattkeyan.").<br>\n";
357                }
358
359                // +++ Weitere Felder ausgeben ?? beschreibungdesumfangsderbuchung                 if ($rowan["sond"] != "") {
360                        echo "<p class='sond' title='Sondereigentum'>Verbunden mit dem Sondereigentum<br>".$rowan["sond"]."</p>";
361                }
362                if ($rowan["nrpl"] != "") {
363                        echo "<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$rowan["nrpl"]."</span> im Aufteilungsplan.</p>";
364                }
365
366                if ($eig=="j") {
367                        $gmlblatt = $rowan["g_gml"]; // id blatt
368                        $n = eigentuemer($con, $gkz, $idanzeige, $gmlblatt, false, $showkey); // ohne Adresse
369                        // Anzahl $n kontrollieren? Warnen?
370                }
371                $an++;
372        }
373        // Zaehler $an==0 ist hier der Normalfall
374        $bs++;
375}
376if ($bs == 0) {
377        echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>";
378        linkgml($gkz, $gmlid, "Flurst&uuml;ck");
379}
380?>
381
382<form action=''>
383        <div class='buttonbereich noprint'>
384        <hr>
385                <input type='button' name='back'  value='&lt;&lt;' title='Zur&uuml;ck'  onClick='javascript:history.back()'>&nbsp;
386                <input type='button' name='print' value='Druck' title='Seite Drucken' onClick='window.print()'>&nbsp;
387                <input type='button' name='close' value='X' title='Fenster schlie&szlig;en' onClick='window.close()'>
388        </div>
389</form>
390
391<?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, "&amp;eig=".$eig, $showkey); ?>
392
393</body>
394</html>
Note: See TracBrowser for help on using the repository browser.