source: trunk/info/info/alkisn/alkisfsnw.php @ 362

Revision 362, 34.5 KB checked in by frank.jaeger, 8 years ago (diff)

Anpassung der ALKIS-Buchauskunft an die Datenbank-Struktur des norGIS-ALKIS-Importer.

Line 
1<?php
2/*      Modul: alkisfsnw.php
3
4        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
5        FlurstÃŒcksnachweis fuer ein FlurstÃŒckskennzeichen aus ALKIS PostNAS
6
7        Version:
8        2016-02-24 Version fuer norGIS-ALKIS-Import
9
10        ToDo:
11        - BodenschÀtzung anzeigen
12        - Bessere Differenzierung bei den Nutzungsarten (Tabelle dafÃŒr aufbauen)
13*/
14session_start();
15$id="n";
16$cntget = extract($_GET);
17require_once("alkis_conf_location.php");
18if ($auth == "mapbender") {require_once($mapbender);}
19include("alkisfkt.php");
20$keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
21if ($keys == "j") {$showkey=true;} else {$showkey=false;}
22?>
23<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
24<html>
25<head>
26        <meta name="author" content="b600352" >
27        <meta http-equiv="cache-control" content="no-cache">
28        <meta http-equiv="pragma" content="no-cache">
29        <meta http-equiv="expires" content="0">
30        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
31        <title>ALKIS Flurst&uuml;cksnachweis</title>
32        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
33        <link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico">
34        <script type="text/javascript">
35                function ALKISexport() {
36                        window.open(<?php echo "'alkisexport.php?gkz=".$gkz."&tabtyp=flurstueck&gmlid=".$gmlid."'"; ?>);
37                }
38        </script>
39        <style type='text/css' media='print'>
40                .noprint {visibility: hidden;}
41        </style>
42</head>
43<body>
44<?php
45// S t a r t
46$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
47if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
48
49// Ein (ALB- ?) FlurstÃŒcks-Kennzeichen wurde alternativ zur gml_id ÃŒbermittelt
50if ($gmlid == '' and $fskennz != '') {
51        // Übergabe Format z.B. "llgggg-fff-nnnn/zz.nn" oder "gggg-ff-nnn/zz"
52        $arr=explode("-", $fskennz, 4);
53        $zgemkg=trim($arr[0]);
54        if (strlen($zgemkg) == 20 and $arr[1] == "") { // Oh, ist wohl schon das Datenbank-Feldformat
55                $fskzdb=$zgemkg;
56        } else { // Nö, ist wohl eher ALB-Format
57                // Das Kennzeichen auseinander nehmen.
58                if (strlen($zgemkg) == 6) {
59                        $land=substr($zgemkg, 0, 2);
60                        $zgemkg=substr($zgemkg, 2, 4);
61                } else { // kein schöner Land ..
62                        $land=$defland; // Default-Land aus config
63                }
64                $zflur=str_pad($arr[1], 3 , "0", STR_PAD_LEFT); // Flur-Nr
65                $zfsnr=trim($arr[2]); // FlurstÃŒcke-Nr
66                $zn=explode("/", $zfsnr, 2); // Bruch?
67                $zzaehler=str_pad(trim($zn[0]), 5 , "0", STR_PAD_LEFT);
68                $znenner=trim($zn[1]);
69                if (trim($znenner, " 0.") == "") { // kein Bruch oder nur Nullen
70                        $znenner="____"; // in DB-Spalte mit Tiefstrich aufgefÃŒllt
71                } else {
72                        $zn=explode(".", $znenner, 2); // .00 wegwerfen
73                        $znenner=str_pad($zn[0], 4 , "0", STR_PAD_LEFT);
74                }
75                // nun die Teile stellengerecht wieder zusammen setzen         
76                $fskzdb=$land.$zgemkg.$zflur.$zzaehler.$znenner.'__'; // FS-Kennz. Format Datenbank
77        }
78        // Spalte "flurstueckskennzeichen" ist in DB indiziert
79        // Format z.B.'052647002001910013__' oder '05264700200012______'
80        $sql ="SELECT gml_id FROM ax_flurstueck WHERE flurstueckskennzeichen= $1 AND endet IS NULL ;";
81
82        $v = array($fskzdb);
83        $res = pg_prepare("", $sql);
84        $res = pg_execute("", $v);
85        if ($row = pg_fetch_array($res)) {
86                $gmlid=$row["gml_id"];
87        } else {
88                echo "<p class='err'>Fehler! Kein Treffer f&uuml;r Flurst&uuml;ckskennzeichen='".$fskennz."' (".$fskzdb.")</p>";
89        }
90        pg_free_result($res);
91}
92
93// F L U R S T U E C K
94$sql ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche, st_area(f.wkb_geometry) AS fsgeomflae, f.zeitpunktderentstehung, g.gemarkungsnummer, g.bezeichnung
95FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer
96WHERE f.gml_id= $1 AND f.endet IS NULL;";
97
98$v = array($gmlid); // mit gml_id suchen
99$res = pg_prepare("", $sql);
100$res = pg_execute("", $v);
101
102if (!$res) {
103        echo "\n<p class='err'>Fehler bei Flurstuecksdaten</p>\n";
104        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
105}
106if ($row = pg_fetch_array($res)) {
107        $gemkname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
108        $gmkgnr=$row["gemarkungsnummer"];
109        $bezirk=$row["regierungsbezirk"];
110        $kreis=$row["kreis"];
111        $gemeinde=$row["gemeinde"];
112        $flurnummer=$row["flurnummer"];
113        $zaehler=$row["zaehler"];
114        $nenner=$row["nenner"];
115        $flstnummer=$zaehler;
116        if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr
117        $fsbuchflae=$row["amtlicheflaeche"]; // amtliche Fl. aus DB-Feld
118        $fsgeomflae=$row["fsgeomflae"]; // aus Geometrie ermittelte FlÀche
119        $fsbuchflaed=number_format($fsbuchflae,0,",",".") . " m&#178;"; // Display-Format dazu
120        $fsgeomflaed=number_format($fsgeomflae,0,",",".") . " m&#178;";
121        $entsteh=$row["zeitpunktderentstehung"];
122        $name=$row["name"]; // Fortfuehrungsnummer(n)
123        $arrn = explode(",", trim($name, "{}") ); // PHP-Array
124} else {
125        echo "<p class='err'>Fehler! Kein Treffer f&uuml;r Flurst&uuml;ck mit gml_id=".$gmlid."</p>";
126        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
127        echo "</body></html>";
128        return;
129}
130pg_free_result($res);
131// Balken
132if ($eig=="j") {
133        echo "<p class='fsei'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
134        echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck mit Eigent&uuml;mer</h2>\n";
135} else {
136        echo "<p class='fskennz'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
137        echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck</h2>\n";
138}
139echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite
140        // darin Tabelle Kennzeichen
141        echo "\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>";
142                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>";
143                echo "\n\t<tr>\n\t\t<td title='Gemarkung'>";
144                if ($showkey) {
145                        echo "<span class='key'>".$gmkgnr."</span><br>";
146                }
147                echo $gemkname."&nbsp;</td>";
148                echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
149                echo "\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>";
150        echo "\n\t</table>";
151echo "\n\t</td>\n\t<td>"; // rechte Seite
152        // FS-Daten 2 Spalten
153        echo "\n\t<table class='fsd'>";
154                echo "\n\t<tr>\n\t\t<td>Entstehung</td>";
155                echo "\n\t\t<td>".$entsteh."</td>\n\t</tr>";
156                echo "\n\t<tr>";
157                        echo "\n\t\t<td>letz. Fortf</td>";
158                        echo "\n\t\t<td title='Jahrgang / Fortf&uuml;hrungsnummer - Fortf&uuml;hrungsart'>";
159                                foreach($arrn AS $val) { // Zeile f. jedes Element des Array
160                                        echo trim($val, '"')."<br>";
161                                }
162                        echo "</td>";
163                echo "\n\t</tr>";
164
165        echo "\n\t</table>";
166echo "\n\t</td>\n</tr>\n</table>";
167//      echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame  . "</td>\n</tr>";
168// Ende Seitenkopf
169
170echo "\n<hr>";
171echo "\n<p class='nwlink noprint'>weitere Auskunft:</p>"; // oben rechts von der Tabelle
172echo "\n<table class='fs'>";
173
174// ** G e b i e t s z u g e h o e r i g k e i t **
175// eine Tabellenzeile mit der Gebietszugehoerigkeit eines Flurstuecks wird ausgegeben
176// Schluessel "land" wird nicht verwendet, gibt es Bestaende wo das nicht einheitlich ist?
177echo "\n<tr>\n\t<td class='ll'><img title='Im Gebiet von' src='ico/Gemeinde.png' width='16' height='16' alt=''> Gebiet:</td>";
178
179// G e m e i n d e
180$sql="SELECT bezeichnung FROM ax_gemeinde WHERE regierungsbezirk= $1 AND kreis= $2 AND gemeinde= $3 AND endet IS NULL;";
181
182$v = array($bezirk,$kreis,$gemeinde);
183$res = pg_prepare("", $sql);
184$res = pg_execute("", $v);
185if (!$res) {
186        echo "\n<p class='err'>Fehler bei Gemeinde</p>\n";
187        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."</p>";}
188}
189$row = pg_fetch_array($res);
190$gnam = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
191echo "\n\t<td class='lr'>Gemeinde</td><td class='lr'>";
192if ($showkey) {
193        echo "<span class='key'>(".$gemeinde.")</span> ";
194}
195echo $gnam."</td><td width='80'>";  // Mindest-Breite der Spalte fuer die Links
196        // Link zur FlurstÃŒcks-Historie (passt nicht ganz in die Zeile "Gemeinde", aber gut unter "weitere Auskunft")
197        echo "\n<p class='nwlink noprint'>";
198                echo "\n\t<a href='alkisfshist.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
199                        if ($showkey)   {echo "&amp;showkey=j";}
200                        echo "' title='Vorg&auml;nger-Flurst&uuml;cke'>Historie ";
201                        echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>";
202                echo "</a>";
203        echo "\n</p>";
204echo "</td></tr>";
205pg_free_result($res);
206
207// K r e i s
208$sql="SELECT bezeichnung FROM ax_kreisregion WHERE regierungsbezirk= $1 AND kreis= $2 AND endet IS NULL;";
209$v = array($bezirk,$kreis);
210$res = pg_prepare("", $sql);
211$res = pg_execute("", $v);
212if (!$res) {
213        echo "\n<p class='err'>Fehler bei Kreis</p>\n";
214        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."</p>";}
215}
216$row = pg_fetch_array($res);
217$knam = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
218echo "<tr><td>&nbsp;</td><td>Kreis</td><td>";
219if ($showkey) {
220        echo "<span class='key'>(".$kreis.")</span> ";
221}
222echo $knam."</td><td>&nbsp;</td></tr>";
223pg_free_result($res);
224
225// R e g - B e z
226$sql="SELECT bezeichnung FROM ax_regierungsbezirk WHERE regierungsbezirk= $1 AND endet IS NULL;";
227$v = array($bezirk);
228$res = pg_prepare("", $sql);
229$res = pg_execute("", $v);
230if (!$res) {
231        echo "<p class='err'>Fehler bei Regierungsbezirk</p>";
232        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."</p>";}
233}
234$row=pg_fetch_array($res);
235$bnam=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
236echo "<tr><td>&nbsp;</td><td>Regierungsbezirk</td><td>";
237if ($showkey) {
238        echo "<span class='key'>(".$bezirk.")</span> ";
239}
240echo $bnam."</td><td>&nbsp;</td></tr>";
241pg_free_result($res);
242// ENDE G e b i e t s z u g e h o e r i g k e i t
243
244// ** L a g e b e z e i c h n u n g **
245
246// Lagebezeichnung MIT Hausnummer
247// ax_flurstueck  >weistAuf>  AX_LagebezeichnungMitHausnummer
248$sql="SELECT DISTINCT l.gml_id, l.gemeinde, l.lage, l.hausnummer, s.bezeichnung
249FROM ax_flurstueck f JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(f.weistauf) 
250JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage
251WHERE f.gml_id= $1 AND f.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL   
252ORDER BY l.gemeinde, l.lage, l.hausnummer;";
253
254$v = array($gmlid);
255$res = pg_prepare("", $sql);
256$res = pg_execute("", $v);
257
258if (!$res) {
259        echo "<p class='err'>Fehler bei Lagebezeichnung mit Hausnummer</p>";
260        if ($debug > 1) {
261                //echo "<p class='dbg'>Fehler:".pg_result_error($res)."</p>";
262                echo "<p class='dbg'>Fehler:".pg_last_error()."</p>";
263        }
264        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
265} else {
266        $j=0;
267        while($row = pg_fetch_array($res)) {
268                $sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
269                echo "\n<tr>\n\t";
270                        if ($j == 0) {
271                                echo "<td class='ll'><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Adresse:</td>";
272                        } else {
273                                echo "<td>&nbsp;</td>";
274                        }
275                        echo "\n\t<td>&nbsp;</td>";
276                        echo "\n\t<td class='lr'>";
277                        if ($showkey) {
278                                echo "<span class='key' title='Straßenschl&uuml;ssel'>(".$row["lage"].")</span>&nbsp;";
279                        }
280                        echo $sname."&nbsp;".$row["hausnummer"]."</td>";
281                        echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
282                                echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"];
283                                if ($showkey) {echo "&amp;showkey=j";}
284                                echo "'>Lage ";
285                                echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>";
286                        echo "\n\t\t</p>\n\t</td>";
287                echo "\n</tr>";
288                $j++;
289        }
290        $cnt_adressen=$j;
291        pg_free_result($res);
292}
293// +++ Verbesserung: mehrere HsNr zur gleichen Straße als Liste?
294
295// Lagebezeichnung OHNE Hausnummer  (Gewanne oder nur Strasse)
296// ax_flurstueck  >zeigtAuf>  AX_LagebezeichnungOhneHausnummer
297$sql ="SELECT l.gml_id, l.unverschluesselt, l.gemeinde, l.lage, s.bezeichnung
298FROM ax_flurstueck f JOIN ax_lagebezeichnungohnehausnummer l ON l.gml_id=ANY(f.zeigtauf)
299LEFT JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage
300WHERE f.gml_id = $1 AND f.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL;";
301
302$v = array($gmlid);
303$res = pg_prepare("", $sql);
304$res = pg_execute("", $v);
305if (!$res) {
306        echo "<p class='err'>Fehler bei Lagebezeichnung ohne Hausnummer</p>";
307        //if ($debug > 1) {echo "<p class='dbg'>Fehler:".pg_result_error($res)."</p>";}
308        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
309}
310$j=0;
311// Es wird auch eine Zeile ausgegeben, wenn kein Eintrag gefunden!
312while($row = pg_fetch_array($res)) {
313        $gewann = htmlentities($row["unverschluesselt"], ENT_QUOTES, "UTF-8");
314        $skey=$row["lage"]; // Strassenschl.
315        $lgml=$row["gml_id"]; // key der Lage
316        if (!$gewann == "") {
317                echo "\n<tr>";
318                        echo "\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>";
319                        echo "\n\t<td></td>";
320                        echo "\n\t<td class='lr'>".$gewann."</td>";
321                        echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
322                                echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
323                                if ($showkey) {echo "&amp;showkey=j";}                         
324                                echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>";
325                        echo "\n\t\t</p>\n\t</td>";
326                echo "\n</tr>";
327        }
328        // Gleicher DB-Eintrag in zwei HTML-Zeilen, besser nur ein Link
329        if ($skey > 0) {
330                echo "\n<tr>";
331                        echo "\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Stra&szlig;e:</td>";
332                        echo "\n\t<td></td>";
333                        echo "\n\t<td class='lr'>";
334                        if ($showkey) {
335                                echo "<span class='key'>(".$skey.")</span>&nbsp;";
336                        }
337                        echo $row["bezeichnung"]."</td>";
338                        echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
339                                echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
340                                if ($showkey) {echo "&amp;showkey=j";}                         
341                                echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>";
342                        echo "\n\t\t</p>\n\t</td>";
343                echo "\n</tr>";
344        }
345        $j++;
346}
347pg_free_result($res);
348// ENDE  L a g e b e z e i c h n u n g
349
350// ** N U T Z U N G ** Gemeinsame FlÀche von NUA und FS
351// Tabellenzeilen (3 Spalten) mit tats. Nutzung zu einem FS ausgeben
352
353/* N U T Z U N G   C l a s s i c (alt)
354$sql ="SELECT m.title, m.fldclass, m.fldinfo, n.gml_id, n.nutz_id, n.class, n.info, n.zustand, n.name, n.bezeichnung, m.gruppe,
355st_area(st_intersection(n.wkb_geometry,f.wkb_geometry)) AS schnittflae, c.label, c.blabla
356FROM ax_flurstueck f, nutzung n JOIN nutzung_meta m ON m.nutz_id=n.nutz_id
357LEFT JOIN nutzung_class c ON c.nutz_id=n.nutz_id AND c.class=n.class
358WHERE f.gml_id= $1 AND st_intersects(n.wkb_geometry,f.wkb_geometry) = true
359AND st_area(st_intersection(n.wkb_geometry,f.wkb_geometry)) > 0.05
360AND f.endet IS NULL ORDER BY schnittflae DESC;";
361
362$v = array($gmlid);
363$res = pg_prepare("", $sql);
364$res = pg_execute("", $v);
365if (!$res) {
366        echo "<p class='err'>Fehler bei Suche tats. Nutzung</p>\n";
367        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
368}
369$the_Xfactor=$fsbuchflae / $fsgeomflae; // geom. ermittelte FlÀche auf amtl. BuchflÀche angleichen
370$j=0;
371while($row = pg_fetch_array($res)) {
372        $grupp=$row["gruppe"]; // 4 Gruppen
373        $nutzid=$row["nutz_id"]; // 27 Tabellen, num. Key
374        $title=htmlentities($row["title"], ENT_QUOTES, "UTF-8"); // Titel der 27 Tabellen
375        $fldclass=$row["fldclass"]; // Name 1. Zusatzfeld
376        $fldinfo= $row["fldinfo"];  // Name 2. Zus.
377        $gml=$row["gml_id"];
378        $class=$row["class"]; // 1. Zusatzfeld verschlÃŒsselt -> nutzung_class
379        $info=$row["info"]; // 2. Zus. verschlÃŒsselt (noch keine Info zum entschl.)
380        $schnittflae=$row["schnittflae"];
381        $label=$row["label"]; // Nutzungsart entschlÃŒsselt
382        $zus=$row["zustand"]; // im Bau
383        $nam=$row["name"]; // Eigenname
384        $bez=$row["bezeichnung"]; // weiterer Name (unverschl.)
385        $blabla=htmlentities($row["blabla"], ENT_QUOTES, "UTF-8");
386        $label=str_replace("/", "<br>", $label); // Ersetzt "/" durch html-Zeilenwechsel
387
388        echo "\n<tr>\n\t";
389                if ($j == 0) {
390                        echo "<td class='ll' title='Abschnitt der tats&auml;chlichen Nutzung'><img src='ico/Abschnitt.png' width='16' height='16' alt=''> Nutzung:</td>";
391                } else {
392                        echo "<td>&nbsp;</td>";
393                }
394                $absflaebuch = $schnittflae * $the_Xfactor; // angleichen geometrisch an amtliche FlÀche
395                $schnittflae = number_format($schnittflae,1,",",".") . " m&#178;"; // geometrisch
396                $absflaebuch = number_format($absflaebuch,0,",",".") . " m&#178;"; // Abschnitt an BuchflÀche angeglichen
397                echo "\n\t<td class='fla' title='geometrisch berechnet: ".$schnittflae."'>".$absflaebuch."</td>";
398
399                echo "\n\t<td class='lr'>";
400                        if ($class == 0) {
401                                if ($showkey) {echo "<span class='key'>(".$nutzid.")</span> ";}
402                                echo $title; // Name der Tabelle
403                        } elseif ( ($fldclass == "Funktion" OR $fldclass == "Vegetationsmerkmal") AND $label != "") { // Kurze Anzeige
404                                if ($showkey) {echo "<span class='key' title='".$fldclass."'>(".$nutzid."-".$class.")</span> ";}
405                                if ($blabla = "") {
406                                        echo $label;
407                                } else {
408                                        echo "<span title='".$blabla."'>".$label."</span>";
409                                }
410                        } else { // ausfuehrlichere Anzeige
411                                echo $title; // NUA-Tabelle
412                                if ($class != "") { // NUA-SchlÃŒssel
413                                        echo ", ".$fldclass.": "; // Feldname
414                                        if ($showkey) {echo "<span class='key' title='".$fldclass."'>(".$nutzid."-".$class.")</span> ";}
415                                        if ($label != "") { // Bedeutung dazu wurde erfasst
416                                                if ($blabla = "") {
417                                                        echo $label;
418                                                } else {
419                                                        echo "<span title='".$blabla."'>".$label."</span>";
420                                                }
421                                        } else { // muss noch erfasst werden
422                                                echo $class." "; // SchlÃŒssel als Ersatz fÃŒr Bedeutung
423                                        }
424                                }
425                        }
426                        if ($info != "") { // manchmal ein zweites Zusatzfeld (wie entschlÃŒsseln?)
427                                echo ", ".$fldinfo."=".$info;
428                        }
429                        if ($zus != "") { // Zustand
430                                echo "\n\t\t<br>";
431                                if ($showkey) {echo "<span class='key'>(".$zus.")</span> ";}
432                                echo "<span title='Zustand'>";                         
433                                switch ($zus) {
434                                        case 2100: echo "Außer Betrieb, stillgelegt, verlassen"; break;
435                                        case 4000: echo "Im Bau"; break;
436                                        case 8000: echo "Erweiterung, Neuansiedlung"; break;
437                                        default: echo "Zustand: ".$zus; break;
438                                }
439                                echo "</span>";
440                        }
441                        if ($nam != "") {echo "<br>Name: ".$nam;}
442                        if ($bez != "") {echo "<br>Bezeichnung: ".$bez;}
443
444                echo "</td>";
445                echo "\n\t<td>";
446                        switch ($grupp) { // Icon nach 4 Objektartengruppen
447                                case "Siedlung":   $ico = "Abschnitt.png"; break;
448                                case "Verkehr":    $ico = "Strassen_Klassifikation.png"; break;
449                                case "Vegetation": $ico = "Wald.png"; break;
450                                case "GewÀsser":   $ico = "Wasser.png";        break;
451                                default:        $ico = "Abschnitt.png"; break;
452                        }
453                        // Icon ist auch im Druck sichtbar, class='noprint' ?           
454                        echo "<p class='nwlink'><img title='".$title."' src='ico/".$ico."' width='16' height='16' alt='NUA'></p>";
455                echo "</td>";
456        echo "\n</tr>";
457        $j++;
458}
459  E N D E   N U T Z U N G   C l a s s i c  */
460
461/* Status "Nutzung":
462
463 Die Classic-Tabelle "nutzung" ist eine Zusammenfassung aller Tabellen mit Nutzungs-FlÀchen
464 Die Classic-Tabelle "nutzung_meta" zeigt die Kategorie und Gruppe des Nutzungs-Abschnitts an.
465
466 Aus der norGIS-Struktur wird ersatzweise VORLÄUFIG die Tabelle "nutz_21" verwendet,
467 die das alte ALB-Format der Nutzungs-Abschnitte von FlurstÃŒcken simuliert.
468 Hier finden sich bereits verschnittene FlÀchen, aber die gml_id fehlt.
469
470 Die EntschlÃŒsselung der Nutzungsart in den verschiedenen ALKIS-Varianten ist darin unterentwickelt.
471 Diese ist eigentlich fÃŒr jede der getrennten Tabellen der Gruppe Nutzungsrt individuell.
472 Die Classic-Lösung mit 2 Zusatzfeldern war schon sehr pauschalisiert, aber
473 durch die RÃŒck-Konvertierung in ALB-Strukturen in der norGIS-Version ist das zu stark vereinfacht.
474 z.B. wird "WohnbauflÀche" mit der Zusatzeigenschaft "Art der Bebauung": 'Offen'
475 nun zur Nutzungsart "Offen".
476 Durch JOIN auf die "alkis_elemente" mit einem Teil des SchlÃŒssels wird das zur "WohnbauflÀche, Offen".
477 Es sollte eine Tabellen-Struktur bereit gestellt werden, die auch aussagt, dass der Wert "Offen" zur
478 Zusatz-Eigenschaft "Art der Bebauung" gehört. Dazu muss das PostProcessing erweitert werden. */
479
480$sql="SELECT e.definition, trim(both FROM n.nutzsl) AS nutzsl, trim(both FROM n.fl) AS fl, trim(both FROM s.nutzung) AS nutzung
481 FROM nutz_21 n JOIN nutz_shl s ON n.nutzsl = s.nutzshl
482 JOIN alkis_elemente e ON e.kennung = substring(n.nutzsl from 1 for 5)
483WHERE n.flsnr = $1 ORDER BY cast(n.fl AS integer) DESC;";
484// Flurstueckskennzeichen mit Trennzeichen im ALB-Format wie 'llgggg-fff-zzzzz/nnn'
485
486$fskennzalb=$defland.$gmkgnr."-".str_pad($flurnummer,3,"0",STR_PAD_LEFT)."-".str_pad($zaehler,5,"0",STR_PAD_LEFT)."/".str_pad($nenner,3,"0",STR_PAD_LEFT);
487// echo "<p class='err'>Kennz ALB='".$fskennzalb."'</p>";
488
489$v = array($fskennzalb);
490$res = pg_prepare("", $sql);
491$res = pg_execute("", $v);
492if (!$res) {
493        echo "<p class='err'>Fehler bei Suche tats. Nutzung</p>\n";
494        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = FS-Kennz = '".$fskennzalb."'</p>";}
495}
496
497$j=0;
498while($row = pg_fetch_array($res)) {
499        $flae=$row["fl"]; // BuchflÀche
500        $nutzsl=$row["nutzsl"]; // SchlÃŒssel
501        $nutzung=$row["nutzung"]; // Bezeichnung aus ALB-Tabelle, "fein"
502        $defi=$row["definition"]; // Langer Text mit Beschreibung
503        $title=htmlentities($defi, ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet
504
505        // Aus der Definition den String zwischen den ersten '' ausschneiden
506        $pos = strpos($defi, "'") + 1;
507        $len = strpos($defi, "'", $pos) - $pos;
508        $nutztab=substr($defi, $pos, $len); // Nutzungart Kategorie aus der Beschreibung ausschneiden
509
510        echo "\n<tr>\n\t";
511                if ($j == 0) {
512                        echo "<td class='ll' title='Abschnitt der tats&auml;chlichen Nutzung'><img src='ico/Abschnitt.png' width='16' height='16' alt=''> Nutzung:</td>";
513                } else {
514                        echo "<td>&nbsp;</td>";
515                }
516                $absflaebuch = number_format($flae,0,",",".") . " m&#178;"; // Formatierte Abschnitts-Buch-FlÀche
517                echo "\n\t<td class='fla' title='Buchfl&auml;che des Abschnitts'>".$absflaebuch."</td>";
518
519                echo "\n\t<td class='lr' title='".$title."'>";
520                        if ($showkey) {echo "<span class='key'>(".$nutzsl.")</span> ";}
521                        echo $nutztab.", ".$nutzung;
522                echo "</td>";
523                echo "\n\t<td>";
524/*              //      Derzeit ist keine Gruppe zugeordnet
525                        switch ($grupp) { // Icon nach 4 Objektartengruppen
526                                case "Siedlung":   $ico = "Abschnitt.png"; break;
527                                case "Verkehr":    $ico = "Strassen_Klassifikation.png"; break;
528                                case "Vegetation": $ico = "Wald.png"; break;
529                                case "GewÀsser":   $ico = "Wasser.png";        break;
530                                default:        $ico = "Abschnitt.png"; break;
531                        }
532                        // Icon ist auch im Druck sichtbar, class='noprint' ?           
533                        echo "<p class='nwlink'><img title='".$title."' src='ico/".$ico."' width='16' height='16' alt='NUA'></p>";
534*/
535                echo "</td>";
536        echo "\n</tr>";
537        $j++;
538}
539pg_free_result($res);
540// ENDE  N U T Z U N G
541
542echo "\n<tr>"; // Summenzeile
543        echo "\n\t<td class='ll' title='amtliche Fl&auml;che (Buchfl&auml;che)'>Fl&auml;che:</td>";
544        echo "\n\t<td class='fla sum'>";
545        echo "<span title='geometrisch berechnete Fl&auml;che = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>";
546
547        // Flaeche und Link auf GebÀude-Auswertung
548        echo "\n\t<td>&nbsp;</td>\n\t<td>";
549                echo "\n\t\t<p class='nwlink noprint'>"; // Gebaeude-Verschneidung
550                        echo "\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
551                        if ($showkey) {echo "&amp;showkey=j";}
552                        if ($cnt_adressen > 0) { // wenn Adresse vorgekommen ist
553                                echo "' title='Geb&auml;udenachweis'>Geb&auml;ude ";
554                        } else { // GebÀude mit Adresse gibt es NICHT, das ist klar
555                                echo "' title='Suche Geb&auml;ude ohne Adresse auf dem Flurst&uuml;ck oder angrenzende Geb&auml;ude'>Suche ";
556                        }
557                        echo "<img src='ico/Haus.png' width='16' height='16' alt=''></a>";
558                echo "\n\t\t</p>";
559        echo "\n\t</td>";
560echo "\n</tr>";
561
562// H i n w e i s  auf Bodenneuordnung oder eine strittige Grenze
563// b.name, b.artderfestlegung,
564
565$sql_boden ="SELECT a.k AS wert, a.v AS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez,
566b.name AS verf_name, d.bezeichnung AS stelle_bez, d.stelle AS stelle_key
567FROM ax_bauraumoderbodenordnungsrecht b
568LEFT JOIN alkis_wertearten a ON cast(b.artderfestlegung AS character varying)=a.k AND a.element='ax_bauraumoderbodenordnungsrecht' AND a.bezeichnung='artderfestlegung'
569LEFT JOIN ax_dienststelle d ON b.stelle=d.stelle
570WHERE b.endet IS NULL AND d.endet IS NULL 
571AND (ST_Within((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL ), wkb_geometry)
572 OR ST_Overlaps((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL), wkb_geometry));";
573
574pg_prepare($con, "bodeneuordnung", $sql_boden);
575$res_bodeneuordnung = pg_execute($con, "bodeneuordnung", array($gmlid));
576if (!$res_bodeneuordnung) {
577        echo "<p class='err'>Fehler bei Bau-, Raum- oder Bodenordnungsrecht</p>\n";
578        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql_boden."<br>$1 = gml_id = '".$gmlid."'</p>";}
579}
580
581$sql_str="SELECT gml_id FROM ax_besondereflurstuecksgrenze WHERE endet IS NULL AND 1000 = ANY(artderflurstuecksgrenze)
582AND ST_touches((SELECT wkb_geometry FROM ax_flurstueck WHERE gml_id = $1 AND endet IS NULL),wkb_geometry);";
583
584pg_prepare($con, "strittigeGrenze", $sql_str);
585$res_strittigeGrenze = pg_execute($con, "strittigeGrenze", array($gmlid));
586if (!$res_strittigeGrenze) {
587        echo "<p class='err'>Fehler bei strittige Grenze</p>\n";
588        if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql_str."<br>$1 = gml_id = '".$gmlid."'</p>";}
589}
590
591if (pg_num_rows($res_bodeneuordnung) > 0 OR pg_num_rows($res_strittigeGrenze) > 0) {
592        echo "\n<tr>";
593        echo "\n\t<td title='Hinweise zum Flurst&uuml;ck'><h6><img src='ico/Hinweis.png' width='16' height='16' alt=''> ";
594        echo "Hinweise:</td></h6>\n\t<td colspan=3>&nbsp;</td>";
595        echo "\n</tr>";
596
597        if (pg_num_rows($res_bodeneuordnung) > 0) {
598
599                while ($row = pg_fetch_array($res_bodeneuordnung)) { // 3 Zeilen je Verfahren
600
601                        // Zeile 1 - kommt immer, darum hier den Link
602                        echo "\n<tr title='Bau-, Raum- oder Bodenordnungsrecht'>"
603                                ."\n\t<td>Bodenrecht:</td>"
604                                ."\n\t<td>Festlegung</td>"; // "Art der Festlegung" zu lang
605                                echo "\n\t<td>";
606                                        if ($showkey) {echo "<span class='key'>(".$row['wert'].")</span> ";}
607                                        echo $row['art_verf']
608                                ."</td>\n\t<td>";
609                                // LINK:
610                                echo "\n\t\t<p class='nwlink noprint'>";
611                                        echo "\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&amp;gmlid=".$row['verf_gml'];
612                                        if ($showkey) {echo "&amp;showkey=j";}
613                                        echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>";
614                                echo "\n\t\t</p>"               
615                                ."</td>"
616                        ."\n</tr>";
617
618                        // Zeile 2
619                        $dstell=$row['stelle_key'];
620                        if ($dstell != "") { // Kann auch leer sein
621                                echo "\n<tr title='Flurbereinigungsbeh&ouml;rde'>";
622                                        echo "\n\t<td>&nbsp;</td>"
623                                        ."\n\t<td>Dienststelle</td>"
624                                        ."\n\t<td>";
625                                                if ($showkey) {echo "<span class='key'>(".$dstell.")</span> ";}
626                                                echo $row['stelle_bez'];
627                                        echo "</td>"
628                                        ."\n\t<td>&nbsp;</td>"
629                                ."\n</tr>";
630                        }
631
632                        // Zeile 3
633                        $vbez=$row['verf_bez']; // ist nicht immer gefÃŒllt
634                        $vnam=$row['verf_name']; // noch seltener
635                        if ($vbez != "") {
636                                echo "\n<tr title='Verfahrensbezeichnung'>";
637                                        echo "\n\t<td>&nbsp;</td>\n\t<td>Verfahren</td>";
638                                        echo "\n\t<td>";
639                                                if ($vnam == "") {
640                                                        echo $vbez; // nur die Nummer
641                                                } else {        // Name oder beides
642                                                        if ($showkey) {echo "<span class='key'>(".$vbez.")</span> ";}
643                                                        echo $vnam;
644                                                }
645                                        echo "</td>";
646                                        echo "\n\t<td>&nbsp;</td>";
647                                echo "\n</tr>";
648                        }
649                }
650        }
651        if (pg_num_rows($res_strittigeGrenze) > 0) { // 1 Zeile
652                echo "\n<tr>\n<td>Strittige Grenze:</td>"
653                ."<td colspan=2>Mindestens eine Flurst&uuml;cksgrenze ist als <b>strittig</b> zu bezeichnen. Sie kann nicht festgestellt werden, weil die Beteiligten sich nicht &uuml;ber den Verlauf einigen. Nach sachverst&auml;ndigem Ermessen der Katasterbeh&ouml;rde ist anzunehmen, dass das Liegenschaftskataster nicht die rechtm&auml;&szlig;ige Grenze nachweist.</td>"
654                ."\n<td>&nbsp;</td>\n</tr>";
655        }
656}
657echo "\n</table>";
658
659// G R U N D B U C H
660echo "\n<table class='outer'>"
661        ."\n<tr>"
662                ."\n\t<td>"
663                        ."\n\t\t<a name='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundb&uuml;cher</h3>"
664                ."\n\t</td>"
665                ."\n\t<td>"
666                        ."\n\t\t<p class='nwlink noprint'>"
667                                ."\n\t\t\t<a href='".$_SERVER['PHP_SELF']. "?gkz=".$gkz."&amp;gmlid=".$gmlid;
668                                if ($showkey) {echo "&amp;showkey=j";}
669
670                                // Umschalter: FS-Nachw ruft sich selbst mit geaend. Param. auf. Posit. auf Marke #gb
671                                if ($eig=="j") {
672                                        echo "&amp;eig=n#gb' title='Flurst&uuml;cksnachweis'>ohne Eigent&uuml;mer</a>";
673                                } else { // ++ könnte man sich sparen, wenn unten nur ein "fiktives Blatt" kommt
674                                        echo "&amp;eig=j#gb' title='Flurst&uuml;cks- und Eigent&uuml;mernachweis'>mit Eigent&uuml;mer "
675                                        ."<img src='ico/EigentuemerGBzeile.png' width='16' height='16' alt=''></a>";
676                                }
677                        echo "\n\t\t</p>"
678                ."\n\t</td>"
679        ."\n</tr>"
680."\n</table>\n";
681
682// B U C H U N G S S T E L L E N  zum FS (istGebucht)
683$sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer as lfd, s.zaehler, s.nenner, s.nummerimaufteilungsplan as nrpl, s.beschreibungdessondereigentums as sond, b.v AS bart, b.d AS barttitle
684FROM ax_flurstueck f JOIN ax_buchungsstelle s ON s.gml_id=f.istgebucht
685LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' AND b.bezeichnung='buchungsart'
686WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL ORDER BY s.laufendenummer;";
687
688$v = array($gmlid);
689$ress = pg_prepare("", $sql);
690$ress = pg_execute("", $v);
691if (!$ress) {
692        echo "\n<p class='err'>Keine Buchungsstelle.</p>\n";
693        if ($debug > 1) {
694                echo "<p class='dbg'>Fehler:".pg_result_error($ress)."</p>";
695                if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
696        }
697}
698$bs=0; // Z.BuchungsStelle
699while($rows = pg_fetch_array($ress)) {
700        $gmls=$rows["gml_id"]; // gml b-Stelle
701        $lfd=$rows["lfd"]; // BVNR
702        $barttitle=htmlentities($rows["barttitle"], ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet
703
704        // B U C H U N G S B L A T T  zur Buchungsstelle (istBestandteilVon)
705        $sql="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, wb.v AS blattartv, wb.d AS blattartd, z.bezeichnung
706        FROM ax_buchungsstelle s JOIN ax_buchungsblatt b ON b.gml_id=s.istbestandteilvon
707        LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk
708        LEFT JOIN alkis_wertearten wb ON cast(b.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart'
709        WHERE s.gml_id = $1 AND s.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL
710        ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung ;";
711
712        $v=array($gmls);
713        $resg=pg_prepare("", $sql);
714        $resg=pg_execute("", $v);
715        if (!$resg) {
716                echo "\n<p class='err'>Kein Buchungsblatt.</p>\n";
717                if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmls."'</p>";}
718        }
719        $bl=0; // Z.Blatt
720        while($rowg = pg_fetch_array($resg)) {
721                $gmlg=$rowg["gml_id"];
722                $beznam=$rowg["bezeichnung"];
723                $blattkeyg=$rowg["blattart"]; // Key
724                $blattartg=$rowg["blattartv"]; // Value
725                echo "\n<hr>"
726                ."\n<table class='outer'>"
727                ."\n<tr>"; // 1 row only
728                        echo "\n\t<td>"; // Outer linke Spalte:
729
730                                // Rahmen mit GB-Kennz
731                                if ($blattkeyg == 1000) {
732                                        echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>";
733                                }else {
734                                        echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted
735                                }
736                                        echo "\n\t<tr>\n\t\t<td class='head'>Bezirk</td>"
737                                                ."\n\t\t<td class='head' title='".$rowg["blattartd"]."'>";
738                                                if ($showkey) {echo "<span class='key'>".$blattkeyg."</span>&nbsp;";}
739                                                echo $blattartg."</td>"
740                                                ."\n\t\t<td class='head'>Lfd-Nr.</td>"
741                                                ."\n\t\t<td class='head'>Buchungsart</td>"
742                                        ."\n\t</tr>"
743                                        ."\n\t<tr>"
744                                                ."\n\t\t<td title='Grundbuchbezirk'>";
745                                                        if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";}
746                                                echo $beznam."&nbsp;</td>";
747
748                                                echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>";
749
750                                                echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rows["lfd"]."</td>";
751
752                                                echo "\n\t\t<td title='".$barttitle."'>";
753                                                if ($showkey) {echo "<span class='key'>".$rows["buchungsart"]."</span><br>";}
754                                                echo $rows["bart"]."</td>";
755                                        echo "\n\t</tr>";
756                                echo "\n\t</table>";
757
758                                // Miteigentumsanteil
759                                if ($rows["zaehler"] <> "") {
760                                        echo "\n<p class='ant'>".$rows["zaehler"]."/".$rows["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
761                                }
762                        echo "\n</td>\n<td>"; // Outer rechte Spalte: NW-Links
763                                echo "\n\t<p class='nwlink noprint'>weitere Auskunft:<br>"
764                                        ."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$gmlg."#bvnr".$lfd;
765                                                if ($showkey)   {echo "&amp;showkey=j";}
766                                                if ($blattkeyg == 1000) {
767                                                        echo "' title='Grundbuchnachweis mit kompletter Eigent&uuml;merangabe'>";
768                                                } else {
769                                                        echo "' title='Grundbuchnachweis'>";
770                                                }
771                                                echo $blattartg." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"
772                                        ."</a>"
773                                ."\n\t</p>";
774
775                                ber_bs_hinw($gmls); // berechtigte Buchungstellen Hinweis
776
777                        echo "\n</td>"
778                ."\n</tr>"
779                ."\n</table>";
780
781                // +++ Weitere Felder ausgeben? BeschreibungDesUmfangsDerBuchung
782                if ($rows["sond"] != "") {
783                        echo "<p class='sond' title='Sondereigentum'>Verbunden mit dem Sondereigentum<br>".$rows["sond"]."</p>";
784                }
785                if ($rows["nrpl"] != "") {
786                        echo "<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$rows["nrpl"]."</span> im Aufteilungsplan.</p>";
787                }
788
789                // E I G E N T U E M E R, zum GB
790                // Person <-benennt< AX_Namensnummer  >istBestandteilVon-> AX_Buchungsblatt
791                if ($eig=="j") { // Wahlweise mit/ohne EigentÃŒmer
792                        echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";
793                        $n = eigentuemer($con, $gmlg, false, ""); // ohne Adresse
794                        if ($n == 0) {
795                                if ($blattkeyg == 1000) {
796                                        echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
797                                } else {
798                                        echo "\n<p>ohne Eigent&uuml;mer.</p>";
799                                }
800                        }
801                }
802                $bl++;
803        }
804        if ($bl == 0) {echo "\n<p class='err'>Kein Buchungsblatt gefunden.</p>";}
805        $bs++;
806}
807pg_free_result($resg);
808if ($bs == 0) {echo "\n<p class='err'>Keine Buchungstelle gefunden.</p>";}
809pg_close($con);
810echo <<<END
811
812<form action=''>
813        <div class='buttonbereich noprint'>
814        <hr>
815                <a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
816                <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
817                <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_fs.png" width="32" height="16" alt="Export"></a>&nbsp;
818        </div>
819</form>
820END;
821
822footer($gmlid, $_SERVER['PHP_SELF']."?", "&amp;eig=".$eig);
823
824?>
825
826</body>
827</html>
Note: See TracBrowser for help on using the repository browser.