1 | <?php
|
---|
2 | /* Modul: alkisbestnw.php |
---|
3 | |
---|
4 | ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
|
---|
5 | Bestandsnachweis fuer ein Grundbuch aus ALKIS PostNAS |
---|
6 |
|
---|
7 | Version:
|
---|
8 | 14.09.2010 Grundbuch unter Flurstueck, BVNR in Tabelle anzeigen und als Sprungmarke |
---|
9 | 15.09.2010 Function "buchungsart" durch JOIN ersetzt |
---|
10 | 14.12.2010 Pfad zur Conf |
---|
11 | 17.12.2010 Astrid Emde: Prepared Statements (pg_query -> pg_prepare + pg_execute) |
---|
12 | 26.01.2011 Space in leere td |
---|
13 | 01.02.2011 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen
|
---|
14 | 07.02.2011 ggf. vereinfachte Kopfzeile "Flurstuecke" nach Vorpruefung "Rechte" |
---|
15 | ToDo: |
---|
16 | Zahler fuer Anzahl GB und FS in der Liste (ausgeben wenn > 10)
|
---|
17 | */
|
---|
18 | ini_set('error_reporting', 'E_ALL'); |
---|
19 | session_start(); |
---|
20 | $gkz=urldecode($_REQUEST["gkz"]);
|
---|
21 | require_once("alkis_conf_location.php"); |
---|
22 | if ($auth == "mapbender") { // Bindung an Mapbender-Authentifizierung
|
---|
23 | require_once($mapbender);
|
---|
24 | }
|
---|
25 | include("alkisfkt.php");
|
---|
26 | ?>
|
---|
27 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|
28 | <html>
|
---|
29 | <head>
|
---|
30 | <meta name="author" content="F. Jaeger krz" >
|
---|
31 | <meta http-equiv="cache-control" content="no-cache">
|
---|
32 | <meta http-equiv="pragma" content="no-cache">
|
---|
33 | <meta http-equiv="expires" content="0">
|
---|
34 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
---|
35 | <title>ALKIS Bestandsnachweis</title>
|
---|
36 | <link rel="stylesheet" type="text/css" href="alkisauszug.css"> |
---|
37 | <link rel="shortcut icon" type="image/x-icon" href="ico/Grundbuch.ico">
|
---|
38 | <style type='text/css' media='print'>
|
---|
39 | .noprint {visibility: hidden;}
|
---|
40 | </style>
|
---|
41 | </head>
|
---|
42 | <body>
|
---|
43 | <?php
|
---|
44 | $gmlid=urldecode($_REQUEST["gmlid"]); |
---|
45 | $id = isset($_GET["id"]) ? $_GET["id"] : "n"; |
---|
46 | if ($id == "j") { |
---|
47 | $idanzeige=true; |
---|
48 | } else { |
---|
49 | $idanzeige=false; |
---|
50 | }
|
---|
51 | $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
|
---|
52 | if ($keys == "j") { |
---|
53 | $showkey=true; |
---|
54 | } else { |
---|
55 | $showkey=false; |
---|
56 | }
|
---|
57 | $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
|
---|
58 | if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
|
---|
59 | |
---|
60 | // G R U N D B U C H
// Direkter JOIN zwischen den "ax_buchungsblattbezirk" und "ax_dienststelle".
|
---|
61 | // Ueber Feld "gehoertzu|ax_dienststelle_schluessel|land" und "stelle". |
---|
62 | // Bei JOIN ueber alkis_beziehungen entgegen Dokumentation keine Verbindung gefunden.
|
---|
63 | $sql ="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, "; // GB-Blatt
|
---|
64 | $sql.="b.gml_id, b.bezirk, b.bezeichnung AS beznam, "; // Bezirk
|
---|
65 | $sql.="a.gml_id, a.land, a.bezeichnung, a.stelle, a.stellenart "; // Amtsgericht
|
---|
66 | $sql.="FROM ax_buchungsblatt g ";
|
---|
67 | $sql.="LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk "; // BBZ
|
---|
68 | $sql.="LEFT JOIN ax_dienststelle a ON b.\"gehoertzu|ax_dienststelle_schluessel|land\"=a.land AND b.stelle=a.stelle ";
|
---|
69 | $sql.="WHERE g.gml_id= $1 ";
|
---|
70 | $sql.="AND a.stellenart=1000;"; // Amtsgericht
|
---|
71 |
|
---|
72 | $v = array($gmlid);
|
---|
73 | $res = pg_prepare("", $sql);
|
---|
74 | $res = pg_execute("", $v);
|
---|
75 |
|
---|
76 | if (!$res) { |
---|
77 | echo "<p class='err'>Fehler bei Grundbuchdaten<br>\n".$sql."</p>"; |
---|
78 | }
|
---|
79 | if ($row = pg_fetch_array($res)) {
|
---|
80 | $blattkey=$row["blattart"]; // Schluessel |
---|
81 | $blattart=blattart($blattkey);
|
---|
82 | echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]." </p>\n"; // Balken
|
---|
83 | echo "\n<h2><img src='ico/Grundbuch.ico' width='16' height='16' alt=''> Grundbuch</h2>";
echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Kennzeichen im Rahmen
|
---|
84 | if ($blattkey == 1000) { |
---|
85 | echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; |
---|
86 | } else { |
---|
87 | echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted |
---|
88 | }
|
---|
89 | echo "\n\t<tr>";
|
---|
90 | echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>";
|
---|
91 | echo "\n\t\t<td class='head'>Bezirk</td>";
|
---|
92 | echo "\n\t\t<td class='head'>".$blattart."</td>"; |
---|
93 | echo "\n\t</tr>\n\t<tr>";
|
---|
94 | echo "\n\t\t<td title='Amtsgerichtsbezirk'>"; |
---|
95 | if ($showkey) { |
---|
96 | echo "<span class='key'>".$row["stelle"]."</span><br>"; |
---|
97 | } |
---|
98 | echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>";
|
---|
99 | echo "\n\t\t<td title='Grundbuchbezirk'>"; |
---|
100 | if ($showkey) { |
---|
101 | echo "<span class='key'>".$row["bezirk"]."</span><br>"; |
---|
102 | } |
---|
103 | echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>";
|
---|
104 | echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>";
|
---|
105 | echo "\n\t</tr>"; |
---|
106 | echo "\n\t</table>"; |
---|
107 | |
---|
108 | echo "\n\n\t</td>\n\t<td>";
|
---|
109 | if ($idanzeige) {linkgml($gkz, $gmlid, "Buchungsblatt");}
|
---|
110 | echo "\n\t</td>\n</tr>\n</table>";
|
---|
111 | }
|
---|
112 | |
---|
113 | if ($blattkey == 5000) { // fikt. Blatt |
---|
114 | echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt.</p>\n"; |
---|
115 | } else { // E I G E N T U E M E R |
---|
116 | echo "\n<h3><img src='ico/Eigentuemer_2.ico' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";
|
---|
117 | // MIT Adressen. Im offiziellen ALKIS-Buchnachweis hier ohne Adressen. |
---|
118 | $n = eigentuemer($con, $gkz, $idanzeige, $gmlid, true); |
---|
119 | |
---|
120 | if ($n == 0) { // keine Namensnummer, kein Eigentuemer
|
---|
121 | echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
|
---|
122 | echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>";
|
---|
123 | linkgml($gkz, $gmlid, "Buchungsblatt");
|
---|
124 | } |
---|
125 | }
|
---|
126 |
// Vorab pruefen, ob Sonderfall "Rechte an .." vorliegt.
|
---|
127 | if ($blattkey == 1000) { // Grundbuchblatt |
---|
128 | $sql ="SELECT count(z.laufendenummer) AS anzahl "; |
---|
129 | $sql.="FROM alkis_beziehungen v ";
|
---|
130 | $sql.="JOIN ax_buchungsstelle s ON v.beziehung_von=s.gml_id "; // Blatt |
---|
131 | $sql.="JOIN alkis_beziehungen x ON x.beziehung_von=s.gml_id "; |
---|
132 | $sql.="JOIN ax_buchungsstelle z ON x.beziehung_zu=z.gml_id "; // andere B-Stelle |
---|
133 | $sql.="WHERE v.beziehung_zu= $1 AND v.beziehungsart='istBestandteilVon' AND (x.beziehungsart='an' OR x.beziehungsart='zu');";
|
---|
134 | $v=array($gmlid);
|
---|
135 | $res=pg_prepare("", $sql);
|
---|
136 | $res=pg_execute("", $v); |
---|
137 | if (!$res) echo "<p class='err'>Fehler bei Suche nach Buchungen.</p>\n";
$row=pg_fetch_array($res); |
---|
138 | $anz=$row["anzahl"]; |
---|
139 | //echo "<p>Zeilen : ".$anz." zu Blattart ".$blattkey."</p>"; |
---|
140 | } else { // 2000: Katasterblatt, 3000: Pseudoblatt, 5000: Fiktives Blatt |
---|
141 | $anz=0; |
---|
142 | } |
---|
143 | if ($anz > 0) { |
---|
144 | echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Rechte und Flurstücke</h3>"; |
---|
145 | echo "\n<table class='fs'>"; |
---|
146 | echo "\n<tr>"; // 2 Kopfzeilen |
---|
147 | echo "\n\t<td> </td>";
|
---|
148 | echo "\n\t<td class='dien' title='herrschendes Grundstück'>herrschende Buchungsart</td>";
|
---|
149 | echo "\n\t<td> </td>";
|
---|
150 | echo "\n\t<td class='dien'>Bezirk</td>";
|
---|
151 | echo "\n\t<td class='dien'>Blatt</td>";
|
---|
152 | echo "\n\t<td class='dien'>BVNR</td>";
|
---|
153 | echo "\n\t<td class='dien' title='dienendes Grundstück'>Buchungsart</td>";
|
---|
154 | echo "\n\t<td> </td>"; |
---|
155 | echo "\n</tr>"; |
---|
156 | } else { |
---|
157 | echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Flurstücke</h3>"; |
---|
158 | echo "\n<table class='fs'>"; |
---|
159 | } |
---|
160 | |
---|
161 | echo "\n<tr>"; |
---|
162 | echo "\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundstück'><span class='wichtig'>BVNR</span></td>";
|
---|
163 | echo "\n\t<td class='head'>Buchungsart</td>";
|
---|
164 | echo "\n\t<td class='head'>Anteil</td>";
|
---|
165 | echo "\n\t<td class='head'>Gemarkung</td>";
|
---|
166 | echo "\n\t<td class='head'>Flur</td>";
|
---|
167 | echo "\n\t<td class='head' title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>Flurst.</span></td>";
|
---|
168 | echo "\n\t<td class='head fla'>Fläche</td>"; // 7
|
---|
169 | echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; |
---|
170 | echo "\n</tr>";
|
---|
171 |
|
---|
172 | // Blatt -> B u c h u n g s s t e l l e
|
---|
173 | // ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle
|
---|
174 | $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, "; |
---|
175 | $sql.="s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond, b.bezeichner as bart ";
|
---|
176 | $sql.="FROM ax_buchungsstelle s ";
|
---|
177 | $sql.="JOIN alkis_beziehungen v ON s.gml_id=v.beziehung_von ";
|
---|
178 | $sql.="LEFT JOIN ax_buchungsstelle_buchungsart b ON s.buchungsart = b.wert "; |
---|
179 | $sql.="WHERE v.beziehung_zu= $1 AND v.beziehungsart='istBestandteilVon' ";
|
---|
180 | $sql.="ORDER BY s.laufendenummer;";
|
---|
181 |
|
---|
182 | $v=array($gmlid);
|
---|
183 | $res=pg_prepare("", $sql);
|
---|
184 | $res=pg_execute("", $v); |
---|
185 |
|
---|
186 | if (!$res) echo "<p class='err'>Fehler bei Buchung.</p>\n";
|
---|
187 | $i=0;
|
---|
188 | while($row = pg_fetch_array($res)) { |
---|
189 | $lfdnr = $row["lfd"]; |
---|
190 | $bvnr = str_pad($lfdnr, 4, "0", STR_PAD_LEFT); |
---|
191 | $gml_bs = $row["gml_id"]; // id der buchungsstelle |
---|
192 | $ba = $row["bart"]; // Buchungsart aus Schluesseltabelle |
---|
193 | |
---|
194 | if ($row["zaehler"] == "") { |
---|
195 | $anteil = ""; |
---|
196 | } else { |
---|
197 | $anteil = $row["zaehler"]."/".$row["nenner"]; |
---|
198 | } |
---|
199 | // F l u r s t u e c k s d a t e n zur direkten Buchungsstelle
$j = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnr, $gml_bs, $ba, $anteil, true, $showkey); // return = Anzahl der FS |
---|
200 |
if ($j == 0) { // k e i n e Flurstuecke gefunden (Miteigentumsnteil usw.)
// Bei "normalen" Grundstuecken wurden Flurstuecksdaten gefunden und ausgegeben. |
---|
201 | // Bei Miteigentumsanteil, Erbbaurecht usw. muss nach weiteren Buchungsstellen gesucht werden: |
---|
202 | // Buchungsstelle >an/zu> (andere)Buchungsstelle >istBestandTeilVon> "FiktivesBlatt (ohne) Eigentuemer" |
---|
203 | |
---|
204 | // andere Buchungsstellen
|
---|
205 | // ax_buchungsstelle >zu> ax_buchungsstelle (des gleichen Blattes)
|
---|
206 | // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) |
---|
207 | |
---|
208 | // aktuelles Blatt (herrschendes GB) hat Recht "an" fiktives Blatt (dienendes GB-Blatt) |
---|
209 | // a n d e r e Buchungsstelle |
---|
210 | $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, "; |
---|
211 | $sql.="v.beziehungsart, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond, b.bezeichner AS bart ";
$sql.="FROM ax_buchungsstelle s ";
|
---|
212 | $sql.="JOIN alkis_beziehungen v ON s.gml_id=v.beziehung_zu ";
$sql.="LEFT JOIN ax_buchungsstelle_buchungsart b ON s.buchungsart = b.wert "; |
---|
213 | $sql.="WHERE v.beziehung_von='".$gml_bs."' "; // id buchungsstelle (fiktives Blatt)
$sql.="AND (v.beziehungsart='an' OR v.beziehungsart='zu') ";
|
---|
214 | $sql.="ORDER BY s.laufendenummer;"; |
---|
215 |
|
---|
216 | $resan=pg_query($con,$sql);
|
---|
217 | if (!$resan) { |
---|
218 | echo "<p class='err'>Fehler bei 'andere Buchungsstelle'<br>".$sql."</p>\n"; |
---|
219 | }
|
---|
220 | $a=0; // count: andere BS
|
---|
221 | $altbvnr=""; // Gruppenwechsel |
---|
222 | while($rowan = pg_fetch_array($resan)) {
|
---|
223 | $lfdnran = $rowan["lfd"]; // BVNR an |
---|
224 | $gml_bsan= $rowan["gml_id"]; // id der buchungsstelle an |
---|
225 | $baan= $rowan["bart"]; // Buchungsart an, entschluesselt |
---|
226 | |
---|
227 | // a n d e r e s B l a t t (an dem das aktuelle Blatt Rechte hat) |
---|
228 | // dienendes Grundbuch |
---|
229 | $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, z.bezeichnung AS beznam ";
|
---|
230 | $sql.="FROM ax_buchungsblatt b ";
|
---|
231 | $sql.="JOIN alkis_beziehungen v ON b.gml_id=v.beziehung_zu "; |
---|
232 | $sql.="LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk ";
|
---|
233 | $sql.="WHERE v.beziehung_von='".$gml_bsan."' ";
|
---|
234 | $sql.="AND v.beziehungsart='istBestandteilVon' ";
|
---|
235 | $sql.="ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; |
---|
236 |
|
---|
237 | $fbres=pg_query($con,$sql);
|
---|
238 | if (!$fbres) {echo "<p class='err'>Fehler bei fiktivem Blatt<br>".$sql."</p>\n";}
|
---|
239 | $b=0;
|
---|
240 | while($fbrow = pg_fetch_array($fbres)) { // genau 1 |
---|
241 | $fbgml = $fbrow["gml_id"]; |
---|
242 | $fbland = $fbrow["land"]; |
---|
243 | $fbbez = $fbrow["bezirk"]; |
---|
244 | $fbblatt = $fbrow["blatt"]; |
---|
245 | $fbbart = blattart($fbrow["blattart"]); |
---|
246 | $beznam = $fbrow["beznam"]; |
---|
247 | $b++; |
---|
248 | } |
---|
249 | if ($b != 1) { |
---|
250 | echo "<p class='err'>Anzahl fiktive Blätter zu anderer Buchungstelle = ".$b."</p>"; |
---|
251 | } |
---|
252 | |
---|
253 | // G r u n d b u c h d a t e n zur a n d e r e n Buchungsstelle |
---|
254 | echo "\n<tr>"; |
---|
255 | echo"\n\t<td>"; |
---|
256 | if($bvnr == $altbvnr) { // gleiches Grundstueck |
---|
257 | echo " "; // Anzeige unterdruecken |
---|
258 | } else { |
---|
259 | echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke |
---|
260 | echo "<span class='wichtig'>".$bvnr."</span>"; // Sp.1 Erbbau BVNR |
---|
261 | if ($idanzeige) {linkgml($gkz, $gml_bs, "Buchungsstelle");} |
---|
262 | $altbvnr = $bvnr; // Gruppenwechsel merken |
---|
263 | } |
---|
264 | echo "</td>"; |
---|
265 | echo "\n\t<td class='dien'>"; // Sp.2 Buchung |
---|
266 | if ($showkey) { |
---|
267 | echo "<span class='key'>".$row["buchungsart"]."</span> "; |
---|
268 | } |
---|
269 | echo $ba." an</td>"; |
---|
270 | echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil |
---|
271 | echo "\n\t<td class='dien'>"; // Sp.4 Gemarkg. hier Bezirk |
---|
272 | if ($showkey) { |
---|
273 | echo "<span class='key'>".$fbbez."</span> "; |
---|
274 | } |
---|
275 | echo $beznam; |
---|
276 | echo "</td>"; // Sp.4 hier Bezirk |
---|
277 | echo "\n\t<td class='dien'>"; // Sp. 5 Blatt |
---|
278 | echo $fbblatt; // Sp.6 BVNR |
---|
279 | if ($idanzeige) { |
---|
280 | linkgml($gkz, $fbgml, "Buchungsblatt"); |
---|
281 | } |
---|
282 | echo "</td>"; |
---|
283 | echo "\n\t<td class='dien'>"; // BVNR |
---|
284 | echo str_pad($lfdnran, 4, "0", STR_PAD_LEFT); |
---|
285 | if ($idanzeige) { |
---|
286 | linkgml($gkz, $gml_bsan, "Buchungsstelle"); |
---|
287 | } |
---|
288 |
|
---|
289 | echo "</td>"; |
---|
290 | echo "\n\t<td class='dien'>"; // Sp.7 Buchungsart |
---|
291 | if ($showkey) { |
---|
292 | echo "<span class='key'>".$rowan["buchungsart"]."</span> "; |
---|
293 | } |
---|
294 | echo $baan." "; |
---|
295 | echo "</td>"; |
---|
296 | echo "\n\t<td>"; // Sp.8 Link ("an" oder "zu" ?) |
---|
297 | echo "<p class='nwlink'>".$rowan["beziehungsart"]; |
---|
298 | echo " <a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$fbgml;
|
---|
299 | if ($idanzeige) {echo "&id=j";} |
---|
300 | if ($showkey) {echo "&showkey=j";} |
---|
301 | echo "#bvnr".$lfdnran; // Sprungmarke auf der Seite
|
---|
302 | echo "' title='Grundbuchnachweis des dienenden Blattes'>"; |
---|
303 | echo $fbbart; |
---|
304 | echo " <img src='ico/GBBlatt_link.ico' width='16' height='16' alt=''></a></p>"; |
---|
305 | echo "</td>"; |
---|
306 | echo "\n</tr>"; |
---|
307 | |
---|
308 | // F l u r s t u e c k s d a t e n zur a n d e r e n Buchungsstelle |
---|
309 | // Buchungsart wird nur in erster Zeile ausgegeben, hier leer |
---|
310 | $aj = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnran, $gml_bsan, "", $anteil, false); // return = Anzahl der FS |
---|
311 | // +++ Gibt es ueberhaupt Sondereigentum beim fiktiven Blatt??
if ($rowan["nrap"] != "") {
|
---|
312 | echo "\n<tr>"; |
---|
313 | echo "\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>"; |
---|
314 | echo "\n</tr>";
|
---|
315 | }
|
---|
316 | if ($rowan["sond"] != "") {
|
---|
317 | echo "\n<tr>"; |
---|
318 | echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>"; |
---|
319 | echo "\n</tr>";
|
---|
320 | }
|
---|
321 | $a++; |
---|
322 | } |
---|
323 | if ($a == 0) {
|
---|
324 | echo "\n<tr>"; |
---|
325 | echo "\n\t<td><span class='wichtig'>".$bvnr."</span>"; |
---|
326 | if ($idanzeige) { |
---|
327 | linkgml($gkz, $gml_bs, "Buchungsstelle"); |
---|
328 | } |
---|
329 | echo "</td>"; |
---|
330 | echo "\n\t<td colspan=7>"; |
---|
331 | echo "<p class='warn'>Flurstücke zu ".$bvnr." nicht im Datenbestand.</p>"; |
---|
332 | echo "</td>"; |
---|
333 | echo "\n</tr>"; |
---|
334 | } |
---|
335 | } |
---|
336 | $i++;
if ($row["nrap"] != "") { // Nummer im Aufteilungsplan |
---|
337 | echo "\n<tr>"; |
---|
338 | echo "\n\t<td class='nrap' colspan=8>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td>"; |
---|
339 | echo "\n</tr>"; |
---|
340 | } |
---|
341 | if ($row["sond"] != "") { // Sondereigentumsbeschreibung |
---|
342 | echo "\n<tr>"; |
---|
343 | echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>"; |
---|
344 | echo "\n</tr>"; |
---|
345 | } |
---|
346 | } // Ende Buchungsstelle
|
---|
347 | echo "\n</table>"; |
---|
348 |
|
---|
349 | if ($i == 0) {
|
---|
350 | echo "\n<p class='err'>Keine Buchung gefunden.</p>\n";
|
---|
351 | linkgml($gkz, $gmlid, "Buchungsblatt");
|
---|
352 | } |
---|
353 | // b e r e c h t i g t e Grundbuecher (Buchungsblatt) |
---|
354 | // mit Recht "an"/"zu" dem aktuellen fiktiven GB |
---|
355 | |
---|
356 | // bf vf sf vs sb vb bb |
---|
357 | // Blatt <istBestandteilVon< Stelle <an< Stelle >istBestandteilVon> Blatt |
---|
358 | // Fiktiv Fiktiv <zu< Berechtigt Berechtigt |
---|
359 | $sql ="SELECT bb.gml_id, bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung AS blatt, bb.blattart, ";
$sql.="vs.beziehungsart, "; |
---|
360 | $sql.="sb.gml_id AS gml_s, sb.laufendenummer AS lfdnr, sb.buchungsart, ba.bezeichner AS bart, "; // berechtigte Buchungsstelle |
---|
361 | $sql.=" bz.bezeichnung AS beznam, ag.bezeichnung, ag.stelle, ag.stellenart "; // Bezirk, Amtsgericht |
---|
362 | $sql.="FROM alkis_beziehungen vf "; // Verbindung fiktiv |
---|
363 | $sql.="JOIN ax_buchungsstelle sf ON sf.gml_id = vf.beziehung_von "; // Stelle fiktiv |
---|
364 | $sql.="JOIN alkis_beziehungen vs ON sf.gml_id = vs.beziehung_zu "; // Verbindung Stellen |
---|
365 | $sql.="JOIN ax_buchungsstelle sb ON sb.gml_id = vs.beziehung_von "; // Stelle berechtigt |
---|
366 | $sql.="JOIN alkis_beziehungen vb ON sb.gml_id = vb.beziehung_von "; // Verbindung berechtigt |
---|
367 | $sql.="JOIN ax_buchungsblatt bb ON bb.gml_id = vb.beziehung_zu "; // Blatt berechtigt |
---|
368 | $sql.="LEFT JOIN ax_buchungsblattbezirk bz ON bb.land = bz.land AND bb.bezirk = bz.bezirk ";
|
---|
369 | $sql.="LEFT JOIN ax_dienststelle ag ON bz.\"gehoertzu|ax_dienststelle_schluessel|land\" = ag.land AND bz.stelle=ag.stelle "; |
---|
370 | $sql.="LEFT JOIN ax_buchungsstelle_buchungsart ba ON sb.buchungsart = ba.wert "; |
---|
371 | $sql.="WHERE vf.beziehung_zu= $1 "; |
---|
372 | $sql.="AND vf.beziehungsart='istBestandteilVon' ";
|
---|
373 | $sql.="AND (vs.beziehungsart='an' OR vs.beziehungsart='zu') "; |
---|
374 | $sql.="AND vb.beziehungsart= 'istBestandteilVon' "; |
---|
375 | $sql.="ORDER BY bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung;"; |
---|
376 |
|
---|
377 | $v = array($gmlid);
|
---|
378 | $resb = pg_prepare("", $sql);
|
---|
379 | $resb = pg_execute("", $v);
|
---|
380 | if (!$resb) { |
---|
381 | echo "<p class='err'>Fehler bei 'andere Berechtigte Blätter:'<br>".$sql."</p>\n"; |
---|
382 | }
|
---|
383 | $b=0; // count: Blaetter |
---|
384 | while($rowb = pg_fetch_array($resb)) {
|
---|
385 | if ($b == 0) { // Ueberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde |
---|
386 | echo "\n<h3><img src='ico/Grundbuch_zu.ico' width='16' height='16' alt=''> Berechtigte Grundbücher</h3>\n"; |
---|
387 | echo "\n<table class='outer'>"; |
---|
388 | echo "\n<tr>"; // Tabelle Kopf |
---|
389 | echo "\n\t<td class='head'>Land</td>"; |
---|
390 | echo "\n\t<td class='head'>Dienststelle</td>"; |
---|
391 | echo "\n\t<td class='head'>Bezirk</td>"; |
---|
392 | echo "\n\t<td class='head'>Blatt</td>"; |
---|
393 | echo "\n\t<td class='head'>BVNR</td>"; // Neu |
---|
394 | echo "\n\t<td class='head'>Buchungsart</td>"; // Neu |
---|
395 | echo "\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>"; |
---|
396 | echo "\n</tr>"; |
---|
397 | } |
---|
398 | $gml_b=$rowb["gml_id"]; // id des berechtigten Blattes |
---|
399 | $gml_s=$rowb["gml_s"]; // id der berechtigten Buchungsstelle |
---|
400 | $blart=$rowb["blattart"]; |
---|
401 | $buch=$rowb["buchungsart"]; // Buchungsart Stelle berechtigt |
---|
402 | $bart=$rowb["bart"]; // Buchungsart entschluesselt |
---|
403 | $lfdnr=$rowb["lfdnr"]; |
---|
404 | $bvnr = str_pad($lfdnr, 4, "0", STR_PAD_LEFT); |
---|
405 |
|
---|
406 | echo "\n<tr>"; |
---|
407 | echo "\n\t<td>".$rowb["land"]."</td>"; |
---|
408 | echo "\n\t<td>"; // Amtsgericht |
---|
409 | echo dienststellenart($rowb["stellenart"])." "; |
---|
410 | if ($showkey) { |
---|
411 | echo "<span class='key'>".$rowb["stelle"]."</span> "; |
---|
412 | } |
---|
413 | echo $rowb["bezeichnung"]; |
---|
414 | echo "</td>"; |
---|
415 | echo "\n\t<td>"; |
---|
416 | if ($showkey) { |
---|
417 | echo "<span class='key'>".$rowb["bezirk"]."</span> "; |
---|
418 | } |
---|
419 | echo $rowb["beznam"]; |
---|
420 | echo "</td>"; |
---|
421 | echo "\n\t<td><span class='wichtig'>".$rowb["blatt"]."</span>"; |
---|
422 | if ($idanzeige) {linkgml($gkz, $gml_b, "Buchungsblatt");} |
---|
423 | echo "</td>"; |
---|
424 | echo "\n\t<td>".$bvnr; |
---|
425 | if ($idanzeige) {linkgml($gkz, $gml_s, "Buchungsstelle");} |
---|
426 | echo "</td>"; |
---|
427 | echo "\n\t<td>"; |
---|
428 | if ($showkey) { |
---|
429 | echo "<span class='key'>".$buch."</span> "; |
---|
430 | } |
---|
431 | echo $bart; |
---|
432 | echo "</td>"; |
---|
433 | echo "\n\t<td>"; |
---|
434 | echo "\n\t\t<p class='nwlink'>"; |
---|
435 | // echo $rowb["beziehungsart"]." "; // "an"/"zu" ? |
---|
436 | echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gml_b."#bvnr".$lfdnr;
|
---|
437 | if ($idanzeige) {echo "&id=j";} |
---|
438 | if ($showkey) {echo "&showkey=j";}
|
---|
439 | echo "' title='Nachweis des berechtigten Blattes ".$rowb["beziehungsart"]." ".$blattart."'>"; |
---|
440 | echo blattart($blart); |
---|
441 | echo " \n\t\t\t<img src='ico/GBBlatt_link.ico' width='16' height='16' alt=''></a>"; |
---|
442 | echo "\n\t\t</p>"; |
---|
443 | echo "</td>"; |
---|
444 | echo "\n</tr>"; |
---|
445 | $b++; |
---|
446 | } |
---|
447 | if ($b == 0) { |
---|
448 | if ($blattkey > 2000 ) { // Warnung nicht bei Grundbuchblatt 1000 und Katasterblatt 2000 |
---|
449 | echo "<p class='err'>Keine berechtigten Blätter zu ".$blattart." (".$blattkey.") gefunden.</p>"; |
---|
450 | } |
---|
451 | } else { |
---|
452 | echo "\n</table>"; |
---|
453 | } |
---|
454 |
|
---|
455 | ?>
|
---|
456 |
|
---|
457 | <form action=''>
|
---|
458 | <div class='buttonbereich noprint'>
|
---|
459 | <hr>
|
---|
460 | <input type='button' name='back' value='<<' title='Zurück' onClick='javascript:history.back()'>
|
---|
461 | <input type='button' name='print' value='Druck' title='Seite Drucken' onClick='window.print()'>
|
---|
462 | <input type='button' name='close' value='X' title='Fenster schließen' onClick='window.close()'>
|
---|
463 | </div>
|
---|
464 | </form> |
---|
465 |
|
---|
466 | <?php footer($gkz, $gmlid, $idumschalter, $idanzeige, $_SERVER['PHP_SELF']."?", $hilfeurl, "", $showkey); ?> |
---|
467 | |
---|
468 | </body>
|
---|
469 | </html> |
---|