" ."\n\n"; // Spalte 1: Info Benutzerkennung if ($auth == "mapbender") { $customer=$_SESSION["mb_user_name"]; echo "\n\t"; } else { echo "\n\t"; } // Spalte 2: Umschalter echo "\n\t"; // Spalte 3 echo "\n\t" ."\n\n
Benutzer: ".$customer." "; $mylink ="\n\t\tSchlüssel aus"; } else { echo $mylink."&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein"; } echo "\n\t" ."\n\t\t\n\t
\n\n"; 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. $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) " ."LEFT JOIN alkis_wertearten a ON sh.buchungsart=cast(a.k AS integer) " ."WHERE sd.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL AND a.element='ax_buchungsstelle' and a.bezeichnung='buchungsart' " ."GROUP BY sh.buchungsart, a.v;"; $v = array($gmls); // id dienende BS $resan = pg_prepare("", $sql); $resan = pg_execute("", $v); if (!$resan) { echo "\n

Fehler bei 'berechtigte Buchungsstellen'.

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

SQL=
".$sql."
$1 = gml_id = '".$gmls."'

";} } $an=0; while($rowan = pg_fetch_array($resan)) { $an++; if ($an == 1) {echo "\n\t
\n\t"; } else { echo "

"; } pg_free_result($resan); } function kurz_namnr($lang) { // Namensnummer kürzen. Nicht benötigte Stufen der Dezimalklassifikation abschneiden $kurz=str_replace(".00","",$lang); // leere Stufen (nur am Ende) $kurz=str_replace("0000","",$kurz); // ganz leer (am Anfang) $kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang $kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe $kurz=rtrim($kurz); // Leerzeichen hinten // echo "/n

lang='".$lang."'

/n

kurz='".$kurz."'

"; return $kurz; } function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus, $bartkey, $bartstory) { /* Bestandsnachweis - Flurstuecksdaten Die Tabellenzeilen mit den Flurstuecksdaten zu einer Buchungsstelle im Bestandsnachweis ausgeben. Die Funktion wird je einmal aufgerufen für die Buchungen direkt auf dem GB (Normalfall). 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; // F L U R S T U E C K $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer WHERE f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL AND s.gml_id= $1 "; if ($filtgem == '' ) { // ungefiltert $v=array($gml_bs); } else { $sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // Zuständiges Gebiet $v=array($gml_bs, $filtkreis, $filtgem); } $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; $resf = pg_prepare("", $sql); $resf = pg_execute("", $v); if (!$resf) {echo "

Fehler bei Flurstück

\n";} if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); } else { $bvnr=""; } $altlfdnr=""; $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 $fskenn.="/".$rowf["nenner"]; } $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; echo "\n"; // eine Zeile je Flurstueck // Sp. 1-3 der Tab. aus Buchungsstelle, nicht aus FS if($lfdnr == $altlfdnr) { // gleiches Grundstueck echo "\n\t " ."\n\t " ."\n\t "; } else { // Sprungmarke, BVNR echo "\n\t" ."".$bvnr."" /// ++++ FEHLER?? $bvnr .""; echo "\n\t"; // Buchungsart if ($showkey) {echo "".$bartkey." ";} // Schluessel echo $ba; // entschluesselt echo "" ."\n\t "; // Anteil $altlfdnr=$lfdnr; } //Sp. 4-7 aus Flurstueck echo "\n\t"; if ($showkey) {echo "".$rowf["gemarkungsnummer"]." ";} echo $rowf["bezeichnung"]."" ."\n\t".$flur."" ."\n\t".$fskenn."" ."" ."\n\t".$flae.""; echo "\n\t" ."\n"; $j++; } // Ende Flurstueck /* if ($j == 0 ) { // nur Entw. if ($debug > 1) {echo "

Keine FS gefunden

";} if ($debug > 2) {echo "

SQL='".$sql."'
$1 = '".$gml_bs."'

";} } */ pg_free_result($resf); return $j; } function eigentuemer($con, $gmlid, $mitadresse, $lnkclass) { // Tabelle mit Eigentuemerdaten zu einem Grundbuchblatt ausgeben // Sp.1 = Namennummer, Sp. 2 = Name / Adresse, Sp. 3 = Link // Parameter: // $gmlid = ID GB-Blattes // $mitadresse = Option (true/false) ob die Adresszeile ausgegeben werden soll // Return = Anzahl Namensnummern // Schleife 1: N a m e n s n u m m e r // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt global $debug, $gkz, $showkey; // Link über Java-Class? (Ja in alkisinlayausk.php, sonst normal) if ($lnkclass == "") { $lnkvor = ""; $lnknach = ""; } else { $lnkvor = "javascript:".$lnkclass."(\""; $lnknach = "\")"; } // 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;"; $v = array($gmlid); // 16 Stellen bei Relationen $resn = pg_prepare("", $sqln); $resn = pg_execute("", $v); if (!$resn) { echo "\n

Fehler bei Eigentümer

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

SQL=
".$sqln."
$1=gml= '".$gmlid."'

";} } echo "\n"; $n=0; // Z.NamNum. while($rown = pg_fetch_array($resn)) { $gmlnn=$rown["gml_id"]; $namnum=kurz_namnr($rown["lfd"]); $rechtsg=$rown["adr"]; echo "\n" ."\n\t" . "\n\t\n\t\n\t"; // Spalte 3 = Link echo "\n\t\n"; if ($mitadresse) { // Schleife 3: A d r e s s e (OPTIONAL) $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland " ."FROM ax_anschrift a JOIN ax_person p ON a.gml_id=ANY(p.hat) WHERE p.gml_id= $1 AND a.endet IS NULL AND p.endet IS NULL LIMIT 2;"; $gmlp=$rowp["gml_id"]; // Person $v = array($gmlp); $resa = pg_prepare("", $sqla); $resa = pg_execute("", $v); if (!$resa) { echo "\n\t

Fehler bei Adressen

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

SQL=
".$sqla."
$1=gml= '".$gmlp."'

";} } $j=0; while($rowa = pg_fetch_array($resa)) { $j++; if ($j == 1) { // erste Adresse anzeigen $gmla=$rowa["gml_id"]; $plz=$rowa["plz"]; // integer if($plz == 0) { $plz=""; } else { $plz=str_pad($plz, 5, "0", STR_PAD_LEFT); } $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); $hsnr=$rowa["hausnummer"]; $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); echo "\n\n\t"; //Sp. 1 echo "\n\t\n\t\n"; } else { // manchmal dopplete Angaben (_straße / _str.) echo "\n\n\t\n\t\n\t\n"; } } pg_free_result($resa); } // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" $i++; // cnt Person // Anteil als eigene Tab-Zeile: $zaehler=$rown["zaehler"]; if ($zaehler != "") { $zaehler=str_replace(".", ",", $zaehler); // Dezimal-KOMMA wenn dem Notar der Bruch nicht reicht $nenner=str_replace(".", ",", $rown["nenner"]); $comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundstück oder Recht)."; echo "\n\n\t" // Sp. 1 ."\n\t" ."\n\t\n"; // Sp. 3 } } // End Loop Person if ($i == 0) { // Kine Parson. Kommt vor hinter Zeile "Erbengemeinschaft", ist dann KEIN Fehler if ($rechtsg != 9999) { echo "\n

(Die Person mit der ID '".$gmlpers."' fehlt im Datenbestand)

"; } else { if ($debug > 1) { // nur bei Entwicklung echo "\n\t\t

Rechtsgemeinschaft = '".$rechtsg."'

"; } } echo "\n\t\n"; } $n++; // cnt NamNum } // End Loop NamNum echo "\n
\n\t\t

" // Sp. 1 .$namnum." " // VOR die Tabelle: "Eigentümer" ."

\n\t
"; // Sp. 2 if ($rechtsg != "" ) { if ($rechtsg == 9999) { // sonstiges echo "\n\t\t

".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."

"; } else { echo "\n\t\t

".htmlentities($rown["adrv"], ENT_QUOTES, "UTF-8")."

"; } } //if ($rown["anlass"] > 0 ) {echo "

Anlass=".$rown["anlass"]."

";} // TEST: // Schleife Ebene 2: andere Namensnummern // Beziehung ax_namensnummer >bestehtAusRechtsverhaeltnissenZu> ax_namensnummer // Die Relation 'Namensnummer' besteht aus Rechtsverhältnissen zu 'Namensnummer' sagt aus, // dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. // Schleife 2: P e r s o n // Beziehung: ax_person Fehler bei Person

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

SQL=
".$sqlp."
$1=gml= '".$gmlpers."'

";} } $i=0; // cnt Person while($rowp = pg_fetch_array($resp)) { // Schleife weglassen? nn >benennt> Person ist KEIN Array! $diePerson=""; //++ Anrede? if ($rowp["akademischergrad"] <> "") {$diePerson=$rowp["akademischergrad"]." ";} $diePerson.=$rowp["nachnameoderfirma"]; if ($rowp["vorname"] <> "") {$diePerson.=", ".$rowp["vorname"];} if ($rowp["namensbestandteil"] <> "") {$diePerson.=". ".$rowp["namensbestandteil"];} if ($rowp["geburtsdatum"] <> "") {$diePerson.=", geb. ".$rowp["geburtsdatum"];} if ($rowp["geburtsname"] <> "") {$diePerson.=", geb. ".$rowp["geburtsname"];} $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute if ($i > 0) { // Spalte 1 enthält die Namensnummer, nur in Zeile 0 echo "\n
 "; } // Spalte 2 = Angaben $eiartkey=$rown["eigentuemerart"]; // Key $eiart=$rown["eiartv"]; // Value echo "\n\t\t

".$diePerson."

\n\t
\n\t\t" ."\n\t
 

"; //Sp. 2 if ($str.$hsnr != "") {echo $str." ".$hsnr."
";} if ($plz.$ort != "") {echo $plz." ".$ort;} if ($land != "" and $land != "DEUTSCHLAND") {echo ", ".$land;} echo "

"; // Sp. 3 echo " 
 

weitere Adresse

 
 

".$zaehler."/".$nenner." Anteil

 
 
"; if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler if ($debug > 1) { echo "\n

keine Namensnummern zum Blatt

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

SQL=
".$sqln."
$1=gml(Blatt)= '".$gmlid."'

";} } } pg_free_result($resn); return $n; } // End function eigentuemer ?>