END; $erlaubnis = darf_ich(); if ($erlaubnis === 0) {die('

Abbruch

');} $dbg=$debug; if ($nodebug === "j") {$dbg=0;} $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbaurecht.php'"); if (!$con) echo "\n

Fehler beim Verbinden der DB

"; // Spalte "a.dokumentation" ist immer leer $sql ="SELECT r.ogc_fid, r.artderfestlegung as adfkey, r.name, r.stelle, r.bezeichnung AS rechtbez, a.beschreibung AS adfbez, d.bezeichnung AS stellbez, d.stellenart, wd.beschreibung, wd.dokumentation, round(st_area(r.wkb_geometry)::numeric,0) AS flae FROM ax_bauraumoderbodenordnungsrecht r LEFT JOIN ax_artderfestlegung_bauraumoderbodenordnungsrecht a ON r.artderfestlegung = a.wert LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle ".UnqKatAmt("r","d") ."LEFT JOIN ax_behoerde wd ON d.stellenart = wd.wert WHERE r.gml_id= $1 AND r.endet IS NULL AND d.endet IS NULL;"; $v = array($gmlid); $res = pg_prepare($con, "", $sql); $res = pg_execute($con, "", $v); if (!$res) { echo "\n

Fehler bei Baurecht.

"; if ($dbg > 2) {echo "\n

SQL=
".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."

";} } if ($dbg > 0) { $zeianz=pg_num_rows($res); if ($zeianz > 1){ echo "\n

Die Abfrage liefert mehr als ein (".$zeianz.") Baurecht-Objekt!

"; if ($dbg > 2) {echo "\n

SQL=
".htmlentities(str_replace("$1","'".$gmlid."'",$sql), ENT_QUOTES, "UTF-8")."

";} } } if ($row = pg_fetch_assoc($res)) { $artfest=$row["adfkey"]; // Art der Festlegung, Key $verfnr=$row["rechtbez"]; // Verfahrens-Nummer $enam=$row["name"]; $stellb=$row["stellbez"]; $stella=$row["stellenart"]; $behb=$row["beschreibung"]; $behd=$row["dokumentation"]; echo "

ALKIS Bau-, Raum- oder Bodenordnungsrecht ".$artfest."-".$verfnr." 

"; echo "\n

Bau-, Raum- oder Bodenordnungsrecht

"; echo "\n" ."\n" ."\n\t" ."\n\t" ."\n"; if ($enam != "") { echo "\n" ."\n\t" ."\n\t" . "\n"; } if ($verfnr != "") { echo "\n" ."\n\t" ."\n\t" ."\n"; } if ($stellb != "") { // z.B. Umlegung *mit* und Baulast *ohne* Dienststelle echo "\n" ."\n\t\n\t" ."\n"; if ($stella != "") { echo "\n" ."\n\t" ."\n\t" ."\n"; } } echo "\n" ."\n\t"; $flae=number_format($row["flae"],0,",",".")." m²"; echo "\n\t" ."\n" . "\n
Art der Festlegung:".DsKy($artfest, '* Art der Festlegung')."".$row["adfbez"]."
Eigenname des Gebietes:".$enam."
Verfahrensnummer:".$verfnr."
Dienststelle:".DsKy($row["stelle"], 'Dienststelle-*').$stellb."
Art der Dienststelle:".DsKy($stella, '* Art der Dienststelle')."".$behb.""."
Fläche:".$flae."
"; } else { echo "\n

Fehler! Kein Treffer bei gml_id=".$gmlid."

"; } echo "\n

betroffene Flurstücke

\n" ."\n

Ermittelt durch geometrische Verschneidung. Nach Größe absteigend.

"; $fslimit=200; $sql ="SELECT f.gml_id, g.bezeichnung, f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, round(st_area(ST_Intersection(r.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae FROM ax_flurstueck f JOIN ax_gemarkung g ON f.gemeindezugehoerigkeit_land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ".UnqKatAmt("f","g") ."JOIN ax_bauraumoderbodenordnungsrecht r ON st_intersects(r.wkb_geometry,f.wkb_geometry) = true AND st_area(st_intersection(r.wkb_geometry,f.wkb_geometry)) > 0.05 WHERE r.gml_id= $1 AND f.endet IS NULL AND r.endet IS NULL "; if ($filtgem === '' ) { $v=array($gmlid); } else { $sql.="AND f.gemeindezugehoerigkeit_kreis = $2 AND f.gemeindezugehoerigkeit_gemeinde = $3 "; // Zuständiges Gebiet $v=array($gmlid, $filtkreis, $filtgem); } $sql.="ORDER BY schnittflae DESC LIMIT ".$fslimit.";"; // > 0.0 ist gemeint, Ungenauigkeit durch st_simplify // Limit: Flurbereinig. kann groß werden! // Trotz Limit lange Antwortzeit, wegen OrderBy -> intersection $res=pg_prepare($con, "", $sql); $res=pg_execute($con, "", $v); if (!$res) { echo "\n

Keine Flurstücke ermittelt.

"; //if ($dbg > 2) {echo "\n

SQL=
".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."

";} // ggf. mehrere Parameter! } echo "\n" ."\n" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n"; $fscnt=0; while($row = pg_fetch_assoc($res)) { $fscnt++; $gmkgnr=$row["gemarkungsnummer"]; $gemarkung=$row["bezeichnung"]; $nen=$row["nenner"]; echo "\n" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n\t" ."\n"; } echo "\n
GemarkungFlurFlurstückFlächevon
".DsKy($gmkgnr, 'Gemarkungsnummer').$gemarkung."".$row["flurnummer"]."".$row["zaehler"]; if ($nen != "") {echo "/".$nen;} echo "".$row["schnittflae"]." m²".$row["amtlicheflaeche"]." m²
"; if ($fscnt === 0) { // nicht gefunden if ($filtgem === '' ) { // ungefiltert echo "\n

Kein Flurstück gefunden.

"; } else { // Wahrscheinliche Ursache = Filter echo "\n

Kein Flurstück im berechtigten Bereich.

"; // if ($dbg > 2) {echo "\n

SQL=
".htmlentities($sql, ENT_QUOTES, "UTF-8")."
$1 = ".$gmlid." $2 = ".$filtkreis." $3 = ".$filtgem."

";} } } elseif ($fscnt >= $fslimit) { echo "

... und weitere Flurstücke (Limit ".$fslimit." erreicht).

"; } pg_close($con); echo "
\n
" ."\n\tzurück "; if ($PrntBtn==true){echo "\n\tDrucken ";} echo "\n
"; footer($gmlid, selbstverlinkung()."?", ""); ?>