Index: trunk/info/info/alkisn/alkisfkt.php
===================================================================
--- trunk/info/info/alkisn/alkisfkt.php	(revision 377)
+++ trunk/info/info/alkisn/alkisfkt.php	(revision 387)
@@ -10,4 +10,5 @@
 	2016-03-14 Kleine Korrekturen
 	2016-11-29 Gemeinsam genutzte Datenbanken ermÃ¶glichen (Filter Gemeinde)
+	2017-06-08 gestreifte Tabelle, Feinkorrekturen
 */
 
@@ -19,18 +20,19 @@
 	global $gkz, $showkey, $hilfeurl, $auth;
 
+	// S c r e e n - Foot
 	echo "\n<div class='confbereich noprint'>"
-	."\n<table class='outer'>\n<tr>";
+	."\n\t<table class='outer'>\n\t<tr>";
 
 	// Spalte 1: Info Benutzerkennung
 	if ($auth == "mapbender") {
 		$customer=$_SESSION["mb_user_name"];
-		echo "\n\t<td title='Info'><i>Benutzer:&nbsp;".$customer."</i></td>";
+		echo "\n\t\t<td title='Info'><i>Benutzer:&nbsp;".$customer."</i></td>";
 	} else {
-		echo "\n\t<td>&nbsp;</td>";
+		echo "\n\t\t<td>&nbsp;</td>";
 	}
 
 	// Spalte 2: Umschalter
-	echo "\n\t<td title='Konfiguration'>";
-		$mylink ="\n\t\t<a class='gmlid' href='".$link."gkz=".$gkz."&amp;gmlid=".$gmlid.$append;
+	echo "\n\t\t<td title='Konfiguration'>";
+		$mylink ="\n\t\t\t<a class='keyswitch' href='".$link."gkz=".$gkz."&amp;gmlid=".$gmlid.$append;
 
 		if ($showkey) { // Umschalten SchlÃŒssel ein/aus
@@ -39,20 +41,27 @@
 			echo $mylink."&amp;showkey=j' title='Verschl&uuml;sselungen anzeigen'>Schl&uuml;ssel ein</a>";
 		}
-	echo "\n\t</td>";
+	echo "\n\t\t</td>";
 
 	// Spalte 3
-	echo "\n\t<td title='Hilfe'>"
-	."\n\t\t<p class='nwlink'>\n\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t</p>\n\t</td>"
-	."\n</tr>\n</table>\n</div>\n";
+	echo "\n\t\t<td title='Hilfe'>"
+		."\n\t\t\t<p class='nwlink'>\n\t\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t\t</p>\n\t\t</td>"
+		."\n\t</tr>\n\t</table>"
+	."\n</div>\n";
+
+	// P r i n t - Foot
+	if ($auth == "mapbender") {
+	//	$customer=$_SESSION["mb_user_name"];
+		echo "\n<p class='onlyprint'><i>Mapbender-Benutzer:&nbsp;".$customer."</i></p>";
+	}
+
 	return 0;
 }
 
-function ber_bs_hinw($gmls) {
-	// Unter einem Grundbuch-Link den Hinweis auf "berechtigte Buchungssstellen" anzeigen
-	// In FS-Nachweis wird nur der EigentÃŒmer des direkt gebuchten GrundstÃŒcks angezeigt.
-	// Den Erbbauberechtigten sieht man erst in der Grundbuch-Auskunft.
-	global $debug, $showkey;
-
-	// Buchungstelle dien. >an> Buchungstelle herr.
+function ber_bs_hinw($gmls, $gmlf) {
+	// Berechtigte Buchungs-Stellen - Hinweis.
+	// Unter dem Grundbuch-Link den Hinweis auf "berechtigte Buchungssstellen" anzeigen und einen Umschalter.
+	global $gkz, $debug, $showkey, $berbu, $eig;
+
+	// Buchungstelle dienend <(Recht)an< Buchungstelle herrschend
 	$sql ="SELECT count(sh.gml_id) AS anz, sh.buchungsart, a.v "
 	."FROM ax_buchungsstelle sd JOIN ax_buchungsstelle sh ON sd.gml_id=ANY(sh.an) " 
@@ -61,26 +70,167 @@
 	."GROUP BY sh.buchungsart, a.v;";
 
-	$v = array($gmls); // id dienende BS
+	$v = array($gmls); // GML dienende Buchungs-Stelle
 	$resan = pg_prepare("", $sql);
 	$resan = pg_execute("", $v);
 	if (!$resan) {
-		echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen'.</p>\n";
-		if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmls."'</p>";}
-	}
+		echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen'.</p>";
+		if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmls."'</p>";}
+	}
+	$zeile=0; // Vesrchiedene Arten
+	$cnt=0; // Summe der Buchugen
+	while($rowan = pg_fetch_array($resan)) {
+		$anz=$rowan["anz"];
+
+		// Einleitung
+		if ($zeile == 0) { // vor. 1. Zeile
+			// Diese Hinweise sollen mit gedruckt werden. Also KEIN "noprint"!
+			echo "\n\t\t<br>\n\t\t<p class='nwlink' title='Andere Grundst&uuml;cke mit Rechten an diesem.'>\n\t\t\tBerechtigte Buchungen ";
+			if ($berbu=="j") { // wechselndes Symbol
+				echo "<img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''>";
+			} else {
+				echo "<img src='ico/Grundbuch.png' width='16' height='16' alt=''>";
+			}
+			echo "\n\t\t\t<b>";
+		}
+
+		// Eine Zeile je Buchungs-Typ
+		echo "<br>".$anz." ".htmlentities($rowan["v"], ENT_QUOTES, "UTF-8");
+		if ($showkey) {echo " <span class='key'>(".$rowan["buchungsart"].")</span>";}
+		$zeile++;
+		$cnt = $cnt + $anz;
+	} // Ende Result
+	pg_free_result($resan);
+
+	// Ergebnis
+	if ($zeile == 0) { // kein Schleifen-Durchlauf
+		echo "\n\t<p class='nwlink' title='Kein anderes Grundst&uuml;ck hat ein Recht an diesem.'>Keine berechtigte Buchung</p>";
+	} else { // Schleife wurde durchlaufen,
+		echo "</b>\n\t\t</p>";
+
+		// Umschalter nicht drucken
+		echo "\n\t\t<p class='nwlink noprint'>"
+		."\n\t\t\t<a href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&amp;gmlid=".$gmlf."&eig=".$eig; // GML FlurstÃŒck
+		if ($showkey) {echo "&amp;showkey=j";}
+		// Der FS-Nachweis ruft sich selbst mit geaendertem Parameter auf.
+		if ($berbu=="j") {
+			echo "&amp;berbu=n' title='ohne berechtigte Buchungen'>nicht Anzeigen"; // Position: Top
+		} else {
+			echo "&amp;berbu=j#berbu' title='mit berechtigten Buchungen'>Anzeigen"; // Positionierung auf Marke #berbu
+		}
+		echo "</a>\n\t\t</p>";
+	}
+	return $cnt; // Funktionswert = Anzahl der berechtigten Buchungen
+}
+
+function ber_bs_anz($gmls, $eig) {
+	// Berechtigte Buchungsstellen (+ BlÃ€tter, EigentÃŒmer) anzeigen innerhalb eines FS-Nachw.
+	// Im FS-Nachweis werden auch die berechtigten GrundbÃŒcher mit ihren EigentÃŒmern angezeigt.
+	// Also z.B. zu einem "fiktiven Blatt" auch die GrundbuÃŒcher mit dem "Wohnungs-/Teileigentum"
+	global $gkz, $debug, $showkey, $idanzeige;
+
+	// Herrschende (berechtigte) Buchungsstellen ausgeben - Beginn
+	// sd=Buchungstelle herrschend >(Recht)an> sd=Buchungstelle dienend >istBestandteilVon> BLATT -> Bezirk
+	$sql="SELECT sd.gml_id AS s_gml, "  // Buchungs-Stelle dienend
+	."sh.buchungsart, sh.laufendenummer as lfd, sh.zaehler, sh.nenner, sh.nummerimaufteilungsplan as nrpl, sh.beschreibungdessondereigentums as sond, " // Buchungs-Stelle herrschend
+	."b.gml_id AS g_gml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, z.bezeichnung, a.v AS bart, w.v AS blattartv "
+	."FROM ax_buchungsstelle sd "
+	."JOIN ax_buchungsstelle sh ON sd.gml_id=ANY(sh.an) "
+	."JOIN ax_buchungsblatt b ON b.gml_id=sh.istbestandteilvon "
+	."LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk "
+	."LEFT JOIN alkis_wertearten a ON sh.buchungsart=cast(a.k AS integer) AND a.element='ax_buchungsstelle' and a.bezeichnung='buchungsart' " // entschlÃŒsseln Buchungsart
+	."LEFT JOIN alkis_wertearten w ON b.blattart=w.k AND w.element='ax_buchungsblatt' and w.bezeichnung='blattart' " // entschlÃŒsseln Blatt-Art
+	."WHERE sd.gml_id= $1 AND sd.endet IS NULL AND sh.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL "
+	."ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;";
+
+	$v = array($gmls); // id dienende Buchungsstelle
+	$resber = pg_prepare("", $sql);
+	$resber = pg_execute("", $v);
+	if (!$resber) {
+		echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen'.</p>";
+		if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmls."'</p>";}
+	}
+
 	$an=0;
-	while($rowan = pg_fetch_array($resan)) {
-		$an++;
-		if ($an == 1) {echo "\n\t<br>\n\t<p class='nwlink' title='Andere Grundst&uuml;cke mit Rechten an diesem.'>Berechtigte Buchungen:<br><b>";}
-		if ($an > 1) {echo",<br>";} // kann es gemischste Buchungsarten geben?
-		echo $rowan["anz"]." ".htmlentities($rowan["v"], ENT_QUOTES, "UTF-8");
-		if ($showkey) {echo " <span class='key'>(".$rowan["buchungsart"].")</span>";}
-	}
-	if ($an == 0) {
-		echo "<br><p class='nwlink' title='Kein anderes Grundst&uuml;ck hat ein Recht an diesem.'>Keine berechtigte Buchung</p>";
-	} else {
-		echo "</b></p>";
-	}
-	pg_free_result($resan);
+	while($rowan = pg_fetch_array($resber)) {
+		$beznam=$rowan["bezeichnung"];
+		$bart=$rowan["bart"]; // Buchungsart
+		$blattkeyber=$rowan["blattart"];  // Schluessel von Blatt-Art des berechtigten GB
+		$blattartber=$rowan["blattartv"]; // Wert von Blatt-Art des berechtigten GB
+		$nrpl=$rowan["nrpl"]; // Nummer im Aufteilungsplan
+		$sond=$rowan["sond"]; // Beschreibung des Sondereigentums
+
+		echo "\n<table class='outer'>" // \n<hr>
+		."\n<tr>" // 1 row only
+			."\n<td>"; // outer linke Spalte - Daten
+				// Rahmen mit Kennzeichen GB
+				if ($blattkeyber == 1000) {
+					echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>";
+				} else {
+					echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted
+				}
+				echo "\n\t<tr>"
+					."\n\t\t<td class='head'>Bezirk</td>"
+					."\n\t\t<td class='head'>".$blattartber."</td>"
+					."\n\t\t<td class='head'>Lfd-Nr,</td>"
+					."\n\t\t<td class='head'>Buchungsart</td>"
+				."\n\t</tr>";
+				echo "\n\t<tr>"
+					."\n\t\t<td title='Grundbuchbezirk'>";
+					if ($showkey) {echo "<span class='key'>".$rowan["bezirk"]."</span><br>";}
+					echo $beznam."</td>"
+					."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowan["blatt"]."</span></td>"
+					."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rowan["lfd"]."</td>"
+					."\n\t\t<td title='Buchungsart'>";
+						if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span><br>";}
+						echo $rowan["bart"]
+					."</td>"
+				."\n\t</tr>"
+				."\n\t</table>";
+				if ($rowan["zaehler"] <> "") {
+					echo "\n\t<p class='ant'>".$rowan["zaehler"]."/".$rowan["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
+				}
+			echo "\n</td>";
+
+			echo "\n<td>"; // outer rechte Spalte
+				if ($idanzeige) {
+					linkgml($gkz, $rowan["s_gml"], "Buchungsstelle", "ax_buchungsstelle");
+					echo "<br>";
+					linkgml($gkz, $rowan["g_gml"], "Buchungsblatt", "");
+				}
+				echo "\n\t<br>"
+				."\n\t<p class='nwlink noprint'>";
+					if ($showkey) {echo "<span class='key'>".$blattkeyber."</span> ";}
+					echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowan["g_gml"];
+						if ($idanzeige) {echo "&amp;id=j";}
+						if ($showkey)   {echo "&amp;showkey=j";}
+						echo "' title='Grundbuchnachweis mit Eigent&uuml;merangabe'>".$blattartber
+						." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"
+					."</a>";
+				echo "\n\t</p>"
+			."\n\t</td>"
+		."\n</tr>"
+		."\n</table>";
+
+		if ($blattkeyber != 1000) {
+			echo "\n<p>Blattart: ".$blattartber." (".$blattkeyber.").<br>"; 
+		}
+
+		if ($nrpl != "") {
+			echo "\n<p class='nrap' title='Nummer im Aufteilungsplan'>Nummer <span class='wichtig'>".$nrpl."</span> im Aufteilungsplan.</p>";
+		}
+
+		if ($sond != "") {
+			echo "\n<p class='sond' title='Sondereigentum'>Verbunden mit dem Sondereigentum<br>".$sond."</p>";
+		}
+
+		if ($eig == "j") {
+			$n = eigentuemer($rowan["g_gml"], true, ""); // mit Adresse
+		}
+		$an++;	
+	}
+	pg_free_result($resber);
+	return;
 }
+
 
 function kurz_namnr($lang) {
@@ -101,5 +251,5 @@
 	Weiterere Aufrufe ggf. bei Erbbaurecht fÃŒr die mit "an" verknuepften Buchungsstellen.
 	Table-Tag und Tabellenkopf werden im aufrufenden Programm ausgegeben. */
-	global $debug, $gkz, $showkey, $filtkreis, $filtgem;
+	global $debug, $gkz, $showkey, $filtkreis, $filtgem, $trclass; // $zpaar
 
 	// F L U R S T U E C K
@@ -117,5 +267,5 @@
 	$resf = pg_prepare("", $sql);
 	$resf = pg_execute("", $v);
-	if (!$resf) {echo "<p class='err'>Fehler bei Flurst&uuml;ck</p>\n";}
+	if (!$resf) {echo "\n<p class='err'>Fehler bei Flurst&uuml;ck</p>";}
 
 	if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben
@@ -124,25 +274,25 @@
 		$bvnr="";
 	}
-	$altlfdnr="";
+	$altbvnr="";
 	$j=0;
 	while($rowf = pg_fetch_array($resf)) {
 		$flur=str_pad($rowf["flurnummer"], 3, "0", STR_PAD_LEFT);
-		// ohne fuehrende Nullen?
 		$fskenn=$rowf["zaehler"];
-		if ($rowf["nenner"] != "") { // Bruchnummer
+		if ($rowf["nenner"] != "") { // Bruch
 			$fskenn.="/".$rowf["nenner"];
 		}
 		$flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m&#178;";
 
-		echo "\n<tr>"; // eine Zeile je Flurstueck
+		echo "\n<tr class='".$trclass."'>"; // eine Zeile je Flurstueck
 			// Sp. 1-3 der Tab. aus Buchungsstelle, nicht aus FS
-			if($lfdnr == $altlfdnr) { // gleiches Grundstueck
+			if($bvnr == $altbvnr) { // gleiches Grundstueck, leer lassen
 				echo "\n\t<td>&nbsp;</td>"
 				."\n\t<td>&nbsp;</td>"
 				."\n\t<td>&nbsp;</td>";
 			} else { // Sprungmarke, BVNR
-				echo "\n\t<td>"
-					."<a id='bvnr".$lfdnr."'></a><span class='wichtig'>".$bvnr."</span>" /// ++++ FEHLER?? $bvnr
-				."</td>";
+				echo "\n\t<td id='bvnr".$bvnr."'>"; // Sprungmarke
+				//	echo "\n\t\t<a id='bvnr".$bvnr."'></a>";
+					echo "<span class='wichtig'>".$bvnr."</span>"
+				."\n\t</td>";
 
 				echo "\n\t<td title ='".$bartstory."'>"; // Buchungsart 
@@ -151,7 +301,8 @@
 				echo "</td>"
 				."\n\t<td>&nbsp;</td>"; // Anteil
-				$altlfdnr=$lfdnr;
-			}
-			//Sp. 4-7 aus Flurstueck
+				$altbvnr=$bvnr;
+			}
+
+			// Sp. 4-7 aus Flurstueck
 			echo "\n\t<td>";
 			if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";}
@@ -160,27 +311,23 @@
 			."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span>"
 			."</td>"
-			."\n\t<td class='fla'>".$flae."</td>";
-
-			echo "\n\t<td><p class='nwlink noprint'>"
-				."<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$rowf["gml_id"]."&amp;eig=n";
+			."\n\t<td class='flag'>".$flae."</td>"; // "width" hier (flaG) erweiterbar, weil in andere Zeile die Buchungsart steht 
+
+			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"
+				."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$rowf["gml_id"]."&amp;eig=n";
 					if ($showkey)   {echo "&amp;showkey=j";}
 					echo "' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck "
 					."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"
 				."</a>"
-			."</p></td>"
+			."\n\t\t</p>"
+		."\n\t</td>"
 		."\n</tr>";
 
 		$j++;
-	} // Ende Flurstueck
-
-/*	if ($j == 0 ) { // nur Entw.
-		if ($debug > 1) {echo "<p class='dbg'>Keine FS gefunden</p>";}
-		if ($debug > 2) {echo "<p class='dbg'>SQL='".$sql."'<br>$1 = '".$gml_bs."'</p>";}
-	} */
+	} // Ende Loop Flurstueck
 	pg_free_result($resf);
 	return $j;
 }
 
-function eigentuemer($con, $gmlid, $mitadresse, $lnkclass) {
+function eigentuemer($gmlid, $mitadresse, $lnkclass) {
 	// Tabelle mit Eigentuemerdaten zu einem Grundbuchblatt ausgeben
 	// Sp.1 = Namennummer, Sp. 2 = Name / Adresse, Sp. 3 = Link
@@ -203,9 +350,9 @@
 	} // Beispiel-Link href='javascript:imFenster(\"alkislage.php?gkz= ... ."\")'>xxx ";
 
-	$sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass, n.benennt, wn.v AS adrv, we.v AS eiartv
-FROM ax_namensnummer n 
-LEFT JOIN alkis_wertearten wn ON cast(n.artderrechtsgemeinschaft AS character varying)=wn.k AND wn.element='ax_namensnummer' AND wn.bezeichnung='artderrechtsgemeinschaft' 
-LEFT JOIN alkis_wertearten we ON cast(n.eigentuemerart AS character varying)=we.k AND we.element='ax_namensnummer' AND we.bezeichnung='eigentuemerart'
-WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;";
+	$sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass, n.benennt, wn.v AS adrv, we.v AS eiartv "
+	."FROM ax_namensnummer n "
+	."LEFT JOIN alkis_wertearten wn ON cast(n.artderrechtsgemeinschaft AS character varying)=wn.k AND wn.element='ax_namensnummer' AND wn.bezeichnung='artderrechtsgemeinschaft' "
+	."LEFT JOIN alkis_wertearten we ON cast(n.eigentuemerart AS character varying)=we.k AND we.element='ax_namensnummer' AND we.bezeichnung='eigentuemerart' "
+	."WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;";
 
 	$v = array($gmlid); // 16 Stellen bei Relationen
@@ -214,12 +361,15 @@
 
 	if (!$resn) {
-		echo "\n<p class='err'>Fehler bei Eigent&uuml;mer</p>\n";
-		if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";}
-	}
-
-	echo "\n<table class='eig'>";
+		echo "\n<p class='err'>Fehler bei Eigent&uuml;mer</p>";
+		// kein Fehler bei Blattarten > 1000
+		//if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";}
+	}
+
 	$n=0; // Z.NamNum.
-
 	while($rown = pg_fetch_array($resn)) {
+		if($n == 0) { // Die Ãberschrift nur, wenn auch ein Inhalt folgt
+			echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>"
+			."\n<table class='eig'>";
+		}
 		$gmlnn=$rown["gml_id"];
 		$namnum=kurz_namnr($rown["lfd"]);
@@ -249,10 +399,4 @@
 		// Schleife 2: P e r s o n
 		// Beziehung: ax_person  <benennt<  ax_namensnummer
-
-	//	$sqlp="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "
-	//	."FROM ax_person p JOIN ax_namensnummer nn ON nn.benennt=p.gml_id WHERE nn.gml_id= $1 AND p.endet IS NULL AND nn.endet IS NULL;";
-	//	$v = array($gmlnn);
-
-	// 03.03.16:
 		$sqlp="SELECT gml_id, nachnameoderfirma, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad "
 		."FROM ax_person WHERE gml_id= $1 AND endet IS NULL;";
@@ -262,6 +406,6 @@
 		$resp = pg_execute("", $v);
 		if (!$resp) {
-			echo "\n\t<p class='err'>Fehler bei Person</p>\n";
-			if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gmlpers."'</p>";}
+			echo "\n\t<p class='err'>Fehler bei Person</p>";
+			if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gmlpers."'</p>";}
 		}
 
@@ -288,8 +432,8 @@
 			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
 				if ($showkey AND $eiartkey != '') { // oft leer
-						echo "<span class='key'>(".$eiartkey.")</span> ";
-				}
-				echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&amp;gmlid=".$rowp[0];
-				if ($showkey)   {echo "&amp;showkey=j";}
+					echo "<span class='key' title='Eigent&uuml;merart'>".$eiartkey."</span> ";
+				}
+				echo "\n\t\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&amp;gmlid=".$rowp[0];
+				if ($showkey) {echo "&amp;showkey=j";}
 				echo $lnknach."' title='vollst&auml;ndiger Name und Adresse eines Eigent&uuml;mers'>".$eiart
 				." <img src='ico/Eigentuemer.png' width='16' height='16' alt=''></a>\n\t\t</p>"
@@ -306,6 +450,6 @@
 
 				if (!$resa) {
-					echo "\n\t<p class='err'>Fehler bei Adressen</p>\n";
-					if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml= '".$gmlp."'</p>";}
+					echo "\n\t<p class='err'>Fehler bei Adressen</p>";
+					if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sqla."<br>$1=gml= '".$gmlp."'</p>";}
 				}
 				$j=0;
@@ -339,5 +483,4 @@
 			}
 			// 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG"
-
 			$i++; // cnt Person
 
@@ -353,5 +496,5 @@
 			}
 		} // End Loop Person
-		if ($i == 0) { // Kine Parson. Kommt vor hinter Zeile "Erbengemeinschaft", ist dann KEIN Fehler
+		if ($i == 0) { // Keine Person. Das kommt vor hinter der Zeile "Erbengemeinschaft" und ist dann KEIN Fehler
 			if ($rechtsg != 9999) {
 				echo "\n<p class='err'>(Die Person mit der ID '".$gmlpers."' fehlt im Datenbestand)</p>";
@@ -365,9 +508,10 @@
 		$n++; // cnt NamNum
 	} // End Loop NamNum
-	echo "\n</table>";
-	if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler 
+	if($n > 0) {
+		echo "\n</table>";
+	} else { // $n == 0, bei "Fiktives Blatt" KEIN Fehler 
 		if ($debug > 1) {
 			echo "\n<p class='dbg'>keine Namensnummern zum Blatt</p>";
-			if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";}
+			//if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";}
 		}
 	}
