Index: trunk/info/info/alkisn/alkisfkt.php
===================================================================
--- trunk/info/info/alkisn/alkisfkt.php	(revision 405)
+++ trunk/info/info/alkisn/alkisfkt.php	(revision 412)
@@ -16,5 +16,7 @@
 	2018-04-23 Berechtigte Buchungen im FS-Nachw. verbessern. Neue Spalte statt Ãberschriften fÃŒr "EigentÃŒmer" und "Berechtigte Buchungen".
 	2018-05-03 GrundstÃŒcksnachweis
-++ ToDo: Parameter $lnkclass in eigentuemer() und $jfenster in buchung_anzg() vereinheitlichen
+	2018-11-09 Umstellung Full-Schema
+
+	++ ToDo: Parameter $lnkclass in eigentuemer() und $jfenster in buchung_anzg() vereinheitlichen
 */
 
@@ -93,10 +95,10 @@
 
 	$sqlbs="SELECT sh.gml_id AS hgml, 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, a.d AS barttitle, w.v AS blattartv "
+	."b.gml_id AS g_gml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, z.bezeichnung, a.beschreibung AS bart, a.dokumentation AS barttitle, w.beschreibung AS blattartv "
 	."FROM ax_buchungsstelle sh "
 	."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. Buchungsart
-	."LEFT JOIN alkis_wertearten w ON b.blattart=w.k AND w.element='ax_buchungsblatt' and w.bezeichnung='blattart' " // entschl. Blatt-Art
+	."LEFT JOIN ax_buchungsart_buchungsstelle a ON sh.buchungsart = a.wert " // entschl. Buchungsart
+	."LEFT JOIN ax_blattart_buchungsblatt w ON b.blattart = w.wert " // entschl. Blatt-Art
 	."WHERE sh.gml_id= $1 AND sh.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL;";
 
@@ -321,5 +323,5 @@
 		$v=array($gml_bs);
 	} else {
-		$sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // ZustÃ€ndiges Gebiet
+		$sql.="AND f.gemeindezugehoerigkeit_kreis = $2 AND f.gemeindezugehoerigkeit_gemeinde = $3 "; // ZustÃ€ndiges Gebiet
 		$v=array($gml_bs, $filtkreis, $filtgem);
 	}
@@ -415,8 +417,8 @@
 	}
 
-	$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 "
+	$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.beschreibung AS adrv, we.beschreibung 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' "
+	."LEFT JOIN ax_artderrechtsgemeinschaft_namensnummer wn ON n.artderrechtsgemeinschaft = wn.wert "
+	."LEFT JOIN ax_eigentuemerart_namensnummer we ON n.eigentuemerart = we.wert "
 	."WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;";
 	// +++	LEFT JOIN bis ax_Person statt Person als Schleife zu holen, 
@@ -579,14 +581,21 @@
 
 function werteliste ($element, $bezeichnung ,$sqlin) {
-	// Eine oder mehrere EntschlÃŒsselungen aus "alkis_wertearten" in eine Zeile ausgeben.
+	// Eine oder mehrere EntschlÃŒsselungen in eine Zeile ausgeben.
 	// Dient dazu, SchlÃŒssel-ARRAYs auflÃ¶sen ohne die Zeile mehrfach aufzulisten (JOIN)
 	// Anwendung: FS-Nachweis BodenschÃ€tzung "Klimastufe + WasserverhÃ€ltnisse"
+	// 2018-11-09: Umstellung von "alkis_wertearten" auf individuelle Tabellen
+
 	global $debug;
-	$sql="SELECT k, v FROM alkis_wertearten WHERE element = $1 AND bezeichnung = $2 AND k IN (".$sqlin.") ORDER BY k;";
-	$v = array($element, $bezeichnung);
+	if ($element == 'ax_bodenschaetzung' AND $bezeichnung = 'entstehungsartoderklimastufewasserverhaeltnisse' ) {
+		$tabelle = 'ax_entstehungsartoderklimastufewasserverhaeltnisse_bodensc';
+	} elseif ($element == 'ax_bodenschaetzung' AND $bezeichnung = 'sonstigeangaben' ) {
+		$tabelle = 'ax_sonstigeangaben_bodenschaetzung';
+	}
+	$sql="SELECT wert, beschreibung FROM ".$tabelle." WHERE wert IN (".$sqlin.") ORDER BY wert LIMIT $1 ;";
+	$v = array(100);
 	$res = pg_prepare("", $sql);
 	$res = pg_execute("", $v);
 	if (!$res) {
-		echo "\n<p class='err'>Fehler bei Werteliste aus alkis_wertearten.</p>";
+		echo "\n<p class='err'>Fehler bei Werteliste.</p>";
 		if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = '".$sqlin."'</p>";}
 		return;
@@ -594,9 +603,9 @@
 	$i=0;
 	while($row = pg_fetch_assoc($res)) {
-		echo " ".$row["v"];
+		echo " ".$row["beschreibung"];
 		$i++;	
 	}
 	pg_free_result($res);
-	if ($i == 0 ) {echo "(kein Treffer)";}
+	if ($i == 0) {echo "(kein Treffer)";}
 	return;
 }
