Ignore:
Timestamp:
09/03/10 13:36:04 (14 years ago)
Author:
frank.jaeger
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/var/www/info/alkis/alkisbestnw.php

    r26 r41  
    11<?php 
    2 /*      alkisbestnw.php 
     2/*      Modul: alkisbestnw.php 
     3        Version: 
     4        31.08.2010      $style=ALKIS entfernt, alles Kompakt 
     5        02.09.2010  Mit Icons 
    36 
    47        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 
    58        Bestandsnachweis fuer ein Grundbuch aus ALKIS PostNAS 
    69        Parameter:      &gkz= &gmlid 
    7  
    8         Version: 
    9         26.01.2010      internet-Version  mit eigener conf 
    10  
    1110*/ 
    12 ini_set('error_reporting', 'E_ALL & ~ E_NOTICE'); 
     11//ini_set('error_reporting', 'E_ALL & ~ E_NOTICE'); 
     12ini_set('error_reporting', 'E_ALL'); 
    1313session_start(); 
    1414// Bindung an Mapbender-Authentifizierung 
     
    2020<html> 
    2121<head> 
    22         <meta name="author" content="F. Jaeger"> 
     22        <meta name="author" content="Frank Jaeger" > 
    2323        <meta http-equiv="cache-control" content="no-cache"> 
    2424        <meta http-equiv="pragma" content="no-cache"> 
     
    2727        <title>ALKIS Bestandsnachweis</title> 
    2828        <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 
     29        <link rel="shortcut icon" type="image/x-icon" href="ico/Grundbuch.ico"> 
    2930        <style type='text/css' media='print'> 
    3031                .noprint { visibility: hidden;} 
     
    3839$idanzeige=false; 
    3940if ($id == "j") {$idanzeige=true;} 
    40 $style=isset($_GET["style"]) ? $_GET["style"] : "kompakt"; 
     41//$style=isset($_GET["style"]) ? $_GET["style"] : "kompakt"; 
    4142$dbname = 'alkis05' . $gkz; 
    4243$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 
    4344if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 
    44 // ** G R U N D B U C H ** 
    45 /*      Bei JOIN ueber alkis_beziehungen. Entgegen Dokumentation keine Verbindung gefunden! 
    46 $sql.="FROM  ax_buchungsblatt g "; 
    47 $sql.="JOIN  ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk "; // BBZ 
    48 $sql.="JOIN  alkis_beziehungen bba ON b.gml_id=bba.beziehung_von "; // Bez->AG 
    49 $sql.="JOIN  ax_dienststelle a ON bba.beziehung_zu=a.gml_id "; 
    50 $sql.="WHERE g.gml_id='".$gmlid."' "; 
    51 $sql.="AND   bba.beziehungsart='gehoertZu' "; 
    52 $sql.="AND   a.stellenart=1000;"; // Amtsgericht 
    53 */ 
     45 
     46// G R U N D B U C H 
    5447// Direkter JOIN zwischen den "ax_buchungsblattbezirk" und "ax_dienststelle". 
    55 // Ueber Feld "gehoertzu|ax_dienststelle_schluessel|land" und "stelle" 
     48// Ueber Feld "gehoertzu|ax_dienststelle_schluessel|land" und "stelle". 
     49//      Bei JOIN ueber alkis_beziehungen entgegen Dokumentation keine Verbindung gefunden. 
    5650$sql ="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, "; // GB-Blatt 
    5751$sql.="b.gml_id, b.bezirk, b.bezeichnung AS beznam, "; // Bezirk 
    5852$sql.="a.gml_id, a.land, a.bezeichnung, a.stelle, a.stellenart "; // Amtsgericht 
    59 $sql.="FROM  ax_buchungsblatt       g "; 
    60 $sql.="JOIN  ax_buchungsblattbezirk b   ON g.land=b.land AND g.bezirk=b.bezirk ";  // BBZ 
    61 $sql.="JOIN  ax_dienststelle        a  ON b.\"gehoertzu|ax_dienststelle_schluessel|land\"=a.land AND b.stelle=a.stelle "; 
     53$sql.="FROM  ax_buchungsblatt  g "; 
     54$sql.="JOIN  ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk ";  // BBZ 
     55$sql.="JOIN  ax_dienststelle a ON b.\"gehoertzu|ax_dienststelle_schluessel|land\"=a.land AND b.stelle=a.stelle "; 
    6256$sql.="WHERE g.gml_id='".$gmlid."' "; 
    6357$sql.="AND   a.stellenart=1000;"; // Amtsgericht 
     
    6761if ($row = pg_fetch_array($res)) { 
    6862        $blattart=blattart($row["blattart"]); 
    69         echo "<p class='gbkennz'>Bestand ".$row["bezirk"]." - ".$row["nr"]."&nbsp;</p>\n"; 
    70         echo "\n<h2>Grundbuch ALKIS</h2>\n"; 
    71  
     63 
     64        // Balken        
     65        echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]."&nbsp;</p>\n"; 
     66 
     67        echo "\n<h2><img src='ico/Grundbuch.ico' width='16' height='16' alt=''> Grundbuch</h2>"; 
     68 
     69        // Kennzeichen im Rahmen 
    7270        echo "\n<table class='outer'>\n<tr>\n\t<td>"; 
    73         echo "\n\t<table class='kennz' title='Bestandskennzeichen'>\n\t<tr>"; 
    74         echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 
    75         echo "\n\t\t<td class='head'>Bezirk</td>"; 
    76         echo "\n\t\t<td class='head'>".$blattart."</td>\n\t</tr>"; 
    77         echo "\n\t<tr>"; 
    78         echo "\n\t\t<td title='Amtsgerichtsbezirk'>".$row["stelle"]."<br>".htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 
    79         echo "\n\t\t<td title='Grundbuchbezirk'>".$row["bezirk"]."<br>".htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 
    80         echo "\n\t\t<td title='Grundbuch-Blatt'>".$row["nr"]."</td>"; 
    81         echo "\n\t</tr>\n\t</table>\n"; 
    82         echo "\n\t</td>\n\t<td>"; 
    83         if ($idanzeige) {linkgml($gkz, $gmlid, "Buchungsblatt");} 
     71                echo "\n\t<table class='kennz' title='Bestandskennzeichen'>"; 
     72                        echo "\n\t<tr>"; 
     73                                echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 
     74                                echo "\n\t\t<td class='head'>Bezirk</td>"; 
     75                                echo "\n\t\t<td class='head'>".$blattart."</td>"; 
     76                        echo "\n\t</tr>\n\t<tr>"; 
     77                                echo "\n\t\t<td title='Amtsgerichtsbezirk'><span class='key'>".$row["stelle"]."</span><br>".htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 
     78                                echo "\n\t\t<td title='Grundbuchbezirk'><span class='key'>".$row["bezirk"]."</span><br>".htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 
     79                                echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>"; 
     80                        echo "\n\t</tr>"; 
     81                echo "\n\t</table>"; 
     82                echo "\n\n\t</td>\n\t<td>"; 
     83                if ($idanzeige) linkgml($gkz, $gmlid, "Buchungsblatt"); 
    8484        echo "\n\t</td>\n</tr>\n</table>"; 
     85} 
     86 
     87// E I G E N T U E M E R 
     88if ($row["blattart"] == 5000) {  
     89        echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n"; 
     90        echo "\n<p>Siehe weitere Grundbuchbl&auml;tter mit Rechten an dem fiktiven Blatt.</p>\n"; 
     91        // ++++  nuetzlich waere hier: Liste der Grundbuecher mit Recht ueber "an"-Beziehung     
     92         
     93} else {// kein Eigent. bei fiktiv. Blatt 
     94        echo "\n<h3><img src='ico/Eigentuemer_2.ico' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 
     95        $n = eigentuemer($con, $gkz, $idanzeige, $gmlid, true); // hier mit Adressen 
     96        if ($n == 0) { // keine Namensnummer, kein Eigentuemer 
     97                echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 
     98                echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$row["blattart"]." (".$blattart.")</p>"; 
     99                linkgml($gkz, $gmlid, "Buchungsblatt"); 
     100        } 
    85101} 
    86102$res=""; 
    87103$row=""; 
    88104 
    89 // ** E I G E N T U E M E R 
    90 echo "\n<hr>\n\n<h3>Angaben zum Eigentum</h3>\n"; 
    91  
    92 // Schleife 1: N a m e n s n u m m e r 
    93 // Beziehung: ax_namensnummer  >istBestandteilVon>  ax_buchungsblatt 
    94 $sql="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, "; 
    95 $sql.="n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass "; 
    96 $sql.="FROM  ax_namensnummer   n "; 
    97 $sql.="JOIN  alkis_beziehungen b ON b.beziehung_von=n.gml_id "; 
    98 $sql.="WHERE b.beziehung_zu='".$gmlid."' "; // id blatt 
    99 $sql.="AND   b.beziehungsart='istBestandteilVon' "; 
    100 $sql.="ORDER BY laufendenummernachdin1421;"; 
    101 $resn=pg_query($con, $sql); 
    102 if (!$resn) {echo "<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";} 
    103 echo "\n<table class='eig'>"; 
    104 $n=0; // Z.NamNum. 
    105 while($rown = pg_fetch_array($resn)) { 
    106         echo "\n<tr>\n\t<td class='nanu' title='Namens-Nummer'>"; 
    107         // VOR die Tabelle: "Eigentümer" 
    108         $namnum=kurz_namnr($rown["lfd"]); 
    109         echo "\n\t\t<p>".$namnum."</p>"; 
    110         if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer");} 
    111         echo "\n\t</td>\n\t<td>"; 
    112         $rechtsg=$rown["adr"]; 
    113         if ($rechtsg != "" ) { 
    114                 if ($rechtsg == 9999) { // sonstiges 
    115                         echo "\n\t\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; 
    116                 } else { 
    117                         echo "\n\t\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>"; 
    118                 } 
    119         } 
    120         //if ($rown["anlass"] > 0 ) {echo "<p>Anlass=".$rown["anlass"]."</p>";} // TEST: 
    121  
    122         //echo "\n\t\t</td>\n\t\t<td></td>\n</tr>"; 
    123  
    124         // Schleife Ebene 2: andere Namensnummern 
    125         // Beziehung   ax_namensnummer >bestehtAusRechtsverhaeltnissenZu>  ax_namensnummer  
    126  
    127         // Die Relation 'Namensnummer' besteht aus Rechtsverhältnissen zu 'Namensnummer' sagt aus,  
    128         // dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können.  
    129         // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer,  
    130         // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 
    131  
    132         // Die Relation 'Namensnummer' hat Vorgänger 'Namensnummer' gibt Auskunft darüber,  
    133         // aus welchen Namensnummern die aktuelle entstanden ist. 
    134  
    135         // Schleife 2: P e r s o n   
    136         // Beziehung: ax_person  <benennt<  ax_namensnummer 
    137         $sql="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "; 
    138         $sql.="FROM  ax_person p "; 
    139         $sql.="JOIN  alkis_beziehungen v ON v.beziehung_zu=p.gml_id "; 
    140         $sql.="WHERE v.beziehung_von='".$rown["gml_id"]."' "; // id num 
    141         $sql.="AND   v.beziehungsart='benennt';"; 
    142         //echo "\n\t<p class='err'>Schleife Person SQL=<br>".$sql."</p>"; // test 
    143  
    144         $rese=pg_query($con, $sql); 
    145         if (!$rese) echo "\n\t<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n"; 
    146         $i=0; // Z.Eig. 
    147         while($rowe = pg_fetch_array($rese)) { 
    148                 $diePerson=""; 
    149                 if ($rowe["akademischergrad"] <> "") $diePerson=$rowe["akademischergrad"]." "; 
    150                 $diePerson.=$rowe["nachnameoderfirma"]; 
    151                 if ($rowe["vorname"] <> "") $diePerson.=", ".$rowe["vorname"]; 
    152                 if ($rowe["namensbestandteil"] <> "") $diePerson.=". ".$rowe["namensbestandteil"]; 
    153                 if ($rowe["geburtsdatum"] <> "") $diePerson.=", geb. ".$rowe["geburtsdatum"]; 
    154                 if ($rowe["geburtsname"] <> "") $diePerson.=", geb. ".$rowe["geburtsname"]; 
    155                 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute 
    156  
    157                 // Spalte 1 enthält die Namensnummer, nur in Zeile 0 
    158                 if ($i > 0) { 
    159                         echo "\n<tr>\n\t<td></td>\n\t<td>"; 
    160                 } 
    161                 // Spalte 2 = Angaben 
    162                 echo "\n\t\t<p class='geig' title='Eigent&uuml;merart ".eigentuemerart($rown["eigentuemerart"])."'>".$diePerson."</p>\n\t</td>"; 
    163                 // Spalte 3 = Link 
    164                 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>\n\t\t\t<a href='alkisnamstruk.php?gkz=".$gkz."&amp;gmlid=".$rowe[0]."&amp;style=".$style; 
    165                 if ($idanzeige) { echo "&amp;id=j";} 
    166                 echo "' title='vollst&auml;ndiger Name und Adresse eines Eigent&uuml;mers'>Person</a>\n\t\t</p>"; 
    167                 if ($idanzeige) { linkgml($gkz, $rowe["gml_id"], "Person");} 
    168                 echo "\n\t</td>\n</tr>"; 
    169  
    170                 // Schleife 3:  A d r e s s e 
    171                 $sql ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland "; 
    172                 $sql.="FROM   ax_anschrift a "; 
    173                 $sql.="JOIN   alkis_beziehungen b ON a.gml_id=b.beziehung_zu "; 
    174                 $sql.="WHERE  b.beziehung_von='".$rowe["gml_id"]."' "; 
    175                 $sql.="AND    b.beziehungsart='hat';"; //"ORDER  BY ?;"; 
    176                 //echo "\n<p class='err'>".$sql."</p>\n"; 
    177                 $resa=pg_query($con,$sql); 
    178                 if (!$resa) echo "\n\t<p class='err'>Fehler bei Adressen.<br>\nSQL= ".$sql."</p>\n"; 
    179                 $j=0; 
    180                 while($rowa = pg_fetch_array($resa)) { 
    181                         $gmla=$rowa["gml_id"]; 
    182                         $plz=$rowa["plz"]; 
    183                         $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); 
    184                         $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); 
    185                         $hsnr=$rowa["hausnummer"]; 
    186                         $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 
    187                         // Spalte 1 
    188                         echo "\n<tr>\n\t<td>&nbsp;</td>"; 
    189                         //Spalte 2 
    190                         echo "\n\t<td>\n\t\t<p class='gadr'>";  
    191                         if ($str.$hsnr != "") echo $str." ".$hsnr."<br>"; 
    192                         //if ($plz.$ort != "") 
    193                         echo $plz." ".$ort; 
    194                         if ($land != "" and $land != "DEUTSCHLAND") echo ", ".$land; 
    195                         echo "</p>\n\t</td>"; 
    196                         // Spalte 3 
    197                         echo "\n\t<td>"; 
    198                         if ($idanzeige) {linkgml($gkz, $gmla, "Adresse");} 
    199                         echo "\n\t</td>\n</tr>"; 
    200                         $j++; 
    201                 } 
    202                 // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" 
    203                 //if ($j == 0) { 
    204                 //      echo "\n<tr>\n\t<td></td>"; 
    205                 //      echo "\n\t<td>\n\t\t<p class='err'>Keine Adressen.</p></td>"; 
    206                 //      echo "\n\t<td></td>\n<tr>"; 
    207                 //} 
    208                 $i++; // Z. Person 
    209  
    210                 // als eigene Tab-Zeile? 
    211                 // 'Anteil' ist der Anteil der Berechtigten in Bruchteilen (Par. 47 GBO)  
    212                 // an einem gemeinschaftlichen Eigentum (Grundstück oder Recht). 
    213                 if ($rown["zaehler"] <> "") { 
    214                         echo "\n<tr>\n\t<td></td>\n\t<td><p class='avh' title='Anteil'>".$rown["zaehler"]."/".$rown["nenner"]." Anteil</p>"; 
    215                         echo "\n</td>\n\t<td></td>\n</tr>"; 
    216                 } 
    217         } 
    218         /* Wann warnen? 
    219         if ($i == 0) { // keine Pers zur NamNum 
    220                 if ($rechtsg != 9999) { // Art der Rechtsgemeinsachft, 0 Eigent. ist Normal bei Sondereigentum 
    221                         echo "\n<tr>\n<td>"; 
    222                         linkgml($gkz, $rown["gml_id"], "Namensnummer"); 
    223                         echo "</td>\n<td>\n\t\t<p class='err'>Kein Eigent&uuml;mer gefunden. (Rechtsgemeinschaft=".$rechtsg.")</p>"; 
    224                         echo "\n\t\t\n\t</td>\n\t<td></td>\n<tr>"; 
    225                 } 
    226         } 
    227         */ 
    228         $n++; // Z.NamNum 
    229 } 
    230 echo "\n</table>\n"; 
    231 if ($n == 0) { 
    232         echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 
    233         echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$row["blattart"]." (".$blattart.")</p>"; 
    234         linkgml($gkz, $gmlid, "Buchungsblatt"); 
    235 } 
    236  
    237 If ($style == "alkis") {  
    238 } else { // kompakter Style, alles in eine Tabelle quetschen 
    239         echo "\n<hr>\n\n<h3>Flurst&uuml;cke</h3>"; 
    240         echo "\n<table class='fs'>"; 
    241  
    242         echo "\n<tr>"; 
    243                 echo "\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'>lfd.Nr</td>"; 
    244                 echo "\n\t<td class='head'>Buchungsart</td>";   //2 
    245                 echo "\n\t<td class='head'>Anteil</td>";                //3 
    246                 echo "\n\t<td class='head'>Gemarkung</td>";             //4 
    247                 echo "\n\t<td class='head'>Flur</td>";                  //5 
    248                 echo "\n\t<td class='head' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'>Flurst.</td>"; 
    249                 echo "\n\t<td class='head'>Fl&auml;che</td>"; 
    250                 echo "\n\t<td class='head' title='Link: weitere Auskunft'>weit. Ausk.</td>"; 
    251  
    252         echo "\n</tr>"; 
    253 } 
    254  
    255 // Schleife 1:  B u c h u n g s s t e l l e 
    256 // ax_buchungsblatt   >bestehtAus>          ax_buchungsstelle  
    257 //                    <istBestandteilVon< 
     105echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Flurst&uuml;cke</h3>"; 
     106echo "\n<table class='fs'>"; 
     107// Kopf der Tabelle 
     108echo "\n<tr>\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'>&nbsp;&nbsp;&nbsp;&nbsp;lfd.Nr</td>"; 
     109echo "\n\t<td class='head'>Buchungsart</td>";   //2 
     110echo "\n\t<td class='head'>Anteil</td>";                //3 
     111echo "\n\t<td class='head'>Gemarkung</td>";             //4 
     112echo "\n\t<td class='head'>Flur</td>";                  //5 
     113echo "\n\t<td class='head' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'>Flurst.</td>"; 
     114echo "\n\t<td class='head fla'>Fl&auml;che</td>"; 
     115echo "\n\t<td class='head nwlink' title='Link: weitere Auskunft'>weit. Auskunft</td>\n</tr>"; 
     116 
     117// Blatt ->  B u c h u n g s s t e l l e 
     118// ax_buchungsblatt   >bestehtAus>         ax_buchungsstelle  
     119// ax_buchungsblatt   <istBestandteilVon<  ax_buchungsstelle  
    258120$sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond "; 
    259121$sql.="FROM  ax_buchungsstelle  s "; 
     
    266128$i=0; 
    267129while($row = pg_fetch_array($res)) { 
    268  
    269         If ($style == "alkis") { // Ausgabe im ALKIS-Style 
    270                 echo "\n\n<h3>Laufende Nummer: ".$row["lfd"]."</h3>"; 
    271                 echo "\n<p>".buchungsart($row["buchungsart"])."</p>"; 
    272  
    273                 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Buchungsstelle");} 
    274                 if ($row["udb"] != "") {echo "<br>Umfang der Buchung: ".$row["udb"];} // beschreibungdesumfangsderbuchung 
    275                 if ($row["zaehler"] != "") {echo "<br>Anteil ".$row["zaehler"]."/".$row["nenner"];} 
    276                 if ($row["nrap"] != "") { 
    277                         echo "\n<br>Nr. im Aufteilungsplan: ".$row["nrap"]; // nummerimaufteilungsplan 
     130        $lfdnr  = $row["lfd"]; 
     131        $bvnr   = str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 
     132        $gml_bs = $row["gml_id"]; // id der buchungsstelle 
     133        $ba     = buchungsart($row["buchungsart"]); 
     134        if ($row["zaehler"] == "") { 
     135                $anteil = ""; 
     136        } else { 
     137                $anteil = $row["zaehler"]."/".$row["nenner"]; 
     138        } 
     139 
     140        // F l u r s t u e c k s d a t e n  zur direkten Buchungsstelle 
     141   $j = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnr, $gml_bs, $ba, $anteil, true); // return = Anzahl der FS 
     142 
     143        if ($row["nrap"] != "") { 
     144                echo "\n<tr>\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$row["nrap"]."</td>\n<tr>"; 
     145        } 
     146        if ($row["sond"] != "") { 
     147                echo "\n<tr>\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>\n<tr>"; 
     148        } 
     149 
     150        if ($j == 0) { //  k e i n e  Flurstuecke gefunden (Miteigentumsnteil usw.) 
     151                // Bei "normalen" Grundstuecken wurden Flurstuecksdaten gefunden und ausgegeben. 
     152                // Bei Miteigentumsanteil, Erbbaurecht usw. muss nach weiteren Buchungsstellen gesucht werden: 
     153                //  Buchungsstelle >an> Buchungsstelle >istBestandTeilVon>  "FiktivesBlatt (ohne) Eigentuemer" 
     154 
     155                // andere Buchungsstellen 
     156                // ax_buchungsstelle  >zu>  ax_buchungsstelle (des gleichen Blattes) 
     157                // ax_buchungsstelle  >an>  ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht >an> ) 
     158 
     159                // a n d e r e  Buchungsstelle ("an"-Beziehung) 
     160                $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond "; 
     161                // , s.zaehler, s.nenner 
     162                $sql.="FROM  ax_buchungsstelle  s "; 
     163                $sql.="JOIN  alkis_beziehungen  v ON s.gml_id=v.beziehung_zu ";  
     164                $sql.="WHERE v.beziehung_von='".$gml_bs."' "; // id buchungsstelle (fiktives Blatt) 
     165                //$sql.="AND   v.beziehungsart='an' "; 
     166                $sql.="AND   (v.beziehungsart='an' OR v.beziehungsart='zu') "; 
     167                $sql.="ORDER BY s.laufendenummer;"; 
     168                //echo "<br><p class='err'>".$sql."</p><br>"; 
     169 
     170                $resan=pg_query($con,$sql); 
     171                if (!$resan) {echo "<p class='err'>Fehler bei andere Buchungsstelle<br><br>".$sql."</p>\n";} 
     172                $a=0; 
     173                while($rowan = pg_fetch_array($resan)) { 
     174                        // auch suchen? 
     175                        // ax_buchungsstelle  >verweistAuf>           ax_flurstueck    
     176                        // ax_buchungsstelle  >grundstueckBestehtAus> ax_flurstueck 
     177                        // ax_buchungsstelle  <istGebucht<            ax_flurstueck 
     178                        $lfdnran = $rowan["lfd"]; 
     179                        $gml_bsan= $rowan["gml_id"]; // id der buchungsstelle 
     180                        $baan = buchungsart($rowan["buchungsart"]); 
     181 
     182                        // Fiktives Blatt 
     183                        $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt "; 
     184                        $sql.="FROM  ax_buchungsblatt   b "; 
     185                        $sql.="JOIN  alkis_beziehungen  v ON b.gml_id=v.beziehung_zu ";  
     186                        $sql.="WHERE v.beziehung_von='".$gml_bsan."' "; 
     187                        $sql.="AND   v.beziehungsart='istBestandteilVon' "; 
     188                        $sql.="ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 
     189                         
     190                        $fbres=pg_query($con,$sql); 
     191                        if (!$fbres) {echo "<p class='err'>Fehler bei fiktivem Blatt<br><br>".$sql."</p>\n";} 
     192                        $b=0; 
     193                        while($fbrow = pg_fetch_array($fbres)) { // genau 1 
     194                                $fbgml   = $fbrow["gml_id"]; 
     195                                $fbland  = $fbrow["land"]; 
     196                                $fbbez   = $fbrow["bezirk"]; 
     197                                $fbblatt = $fbrow["blatt"]; 
     198                                $b++; 
     199                        } 
     200                        if ($b <> 1) echo "<p class='err'>Anzahl fiktive Bl&auml;tter zu anderer Buchungstelle = ".$b."</p>"; 
     201 
     202                        // G r u n d b u c h d a t e n  zur  a n d e r e n  Buchungsstelle  (fiktives Blatt, Recht "an" ...)     
     203                        //$bvnran=str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 
     204                        // Kompakter Style                       
     205                        echo "\n<tr>\n\t<td>".$bvnr; // Sp.1 Erbbau BVNR 
     206                        if ($idanzeige) linkgml($gkz, $gml_bs, "Buchungsstelle"); 
     207                        echo "</td>"; 
     208                        echo "\n\t<td>".$ba." an</td>"; // Sp.2 Buchung 
     209                        echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil   ++++ LEER !!?? Wieso 
     210                        echo "\n\t<td>Bezirk ".$fbbez."</td>"; // Sp.4 Gemkg, hier Bezirk ++++ entschluesseln? 
     211                        echo "\n\t<td></td>"; // Sp.5 Flur 
     212                        echo "\n\t<td>Blatt ".$fbblatt."</td>"; // Sp.6 Flurst 
     213                        echo "\n\t<td></td>"; // Sp.7 Flaeche 
     214                        echo "\n\t<td>";  // Sp.8 Link 
     215                        echo "<p class='nwlink'>an <a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$fbgml; 
     216                        if ($idanzeige) echo "&amp;id=j"; 
     217                        echo "' title='Grundbuchnachweis fiktives Blatt'>GB</a></p></td>\n</tr>";  
     218 
     219                        // F l u r s t u e c k s d a t e n  zur  a n d e r e n  Buchungsstelle  (fiktives Blatt, Recht "an" ...) 
     220                   $aj = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnran, $gml_bsan, $baan, $anteil, false); // return = Anzahl der FS 
     221                        // +++ Gibt es ueberhaupt Sondereigentum beim fiktiven Blatt?? 
     222 
     223                        // Kompakter Style 
     224                        if ($rowan["nrap"] != "") { 
     225                                echo "\n<tr>\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>\n<tr>"; 
     226                        } 
     227                        if ($rowan["sond"] != "") { 
     228                                echo "\n<tr>\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>\n<tr>"; 
     229                        } 
     230 
     231                        $a++; 
     232                        if ($aj == 0) { // keine Flurstuecke gefunden 
     233                                echo "<p>keine Flurst&uuml;cke zu anderer Buchung gefunden</p>"; 
     234                        } 
    278235                } 
    279                 if ($row["sond"] != "") { 
    280                         echo "\n<br>Verbunden mit dem Sondereigentum an: ".$row["sond"]; //beschreibungdessondereigentums 
     236                if ($a == 0) { 
     237                        echo "\n<p class='err'>Keine andere Buchungstelle gefunden.</p>\n"; 
     238                        linkgml($gkz, $$gml_bs, "Buchungsstelle"); 
    281239                } 
    282  
    283                 //echo "\n<h4>Das ".buchungsart($row["buchungsart"])." besteht aus:</h4>"; 
    284                 echo "\n<h4>Das Grundst&uuml;ck besteht aus:</h4>"; 
    285  
    286         //} else { // Kompakter Style 
    287         } 
    288  
    289         // Schleife 2a: andere Buchungsstellen 
    290         // ax_buchungsstelle  >zu>  ax_buchungsstelle (des gleichen Blattes) 
    291         //                    >an>  ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht >an> ) 
    292  
    293         // ++++ To Do:  auch suchen? 
    294         // Schleife 2b: Flurstueck 
    295         // ax_buchungsstelle   >verweistAuf>            ax_flurstueck    
    296  
    297         // ax_buchungsstelle   >grundstueckBestehtAus>  ax_flurstueck 
    298         //                     <istGebucht<            
    299  
    300         // F L U R S T U E C K 
    301         $sql="SELECT g.gemarkungsnummer, g.bezeichnung, "; 
    302         $sql.="f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche "; 
    303         $sql.="FROM ax_gemarkung g "; 
    304         $sql.="JOIN ax_flurstueck f ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; 
    305         $sql.="JOIN alkis_beziehungen v ON f.gml_id=v.beziehung_von ";  
    306         $sql.="WHERE v.beziehung_zu='".$row["gml_id"]."' "; // id buchungsstelle 
    307         $sql.="AND   v.beziehungsart='istGebucht' "; 
    308         $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 
    309  
    310         $resf=pg_query($con,$sql); 
    311         if (!$resf) {echo "<p class='err'>Fehler bei Flurst&uuml;ck<br><br>".$sql."</p>\n";} 
    312         $j=0; 
    313         while($rowf = pg_fetch_array($resf)) { 
    314                 $fskenn=$rowf["zaehler"]; 
    315                 if ($rowf["nenner"] != "") {$fskenn.="/".$rowf["nenner"];} 
    316                 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m&#178;"; 
    317  
    318                 If ($style == "alkis") { // Darstellung ALKIS-Like 
    319          
    320                         echo "\n<table class='outer'>\n<tr>"; 
    321                         echo "\n\t<td>"; 
    322                         echo "\n\t\t<h6>Flurst&uuml;ck ".$fskenn.", Flur ".$rowf["flurnummer"].", Gemarkung ".$rowf["gemarkungsnummer"]." ".$rowf["bezeichnung"]."</h6>"; 
    323                         echo "\n\t</td>"; 
    324          
    325                         echo "\n\t<td>"; 
    326                         echo "\n\t\t<p class='nwlink noprint'><a  href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$rowf["gml_id"]."&amp;eig=n"."&amp;style=".$style; 
    327                         if ($idanzeige) { echo "&amp;id=j";} 
    328                         echo "' title='Flurst&uuml;cksnachweis'>FS-Nachweis</a></p>"; 
    329                         if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurst&uuml;ck");} 
    330                         echo "\n\t</td>\n</tr>\n</table>"; 
    331  
    332                         //echo "\n</tr>\n<table>"; 
    333          
    334         /*              echo "\n<tr>\n\t<td>Gebietszugeh&ouml;rigkeit:</td>"; 
    335                         echo "\n\t<td>Gemeinde ".$rowf["gemeinde"]."<br>"; 
    336                         echo "Kreis ".$rowf["kreis"]."<br>"; 
    337                         echo "Regierungsbezirk ".$rowf["regierungsbezirk"]."</td>\n</tr>"; 
    338          
    339                         echo "\n<tr>\n\t<td>Lage:</td>"; 
    340                         echo "\n\t<td>(noch in Arbeit)</td>\n</tr>"; 
    341          
    342                         echo "\n<tr>\n\t<td>Tats&auml;chliche Nutzung:</td>"; 
    343                         echo "\n\t<td>(noch in Arbeit)</td>\n</tr>"; 
    344         */ 
    345                         //echo "\n<tr>\n\t<td>"; 
    346          
    347                         echo "\n<p>Fl&auml;che: "; 
    348                         //echo "</td>\n\t<td>"; 
    349                         echo $flae."</p>"; 
    350                         //echo "</td>\n</tr>"; 
    351                 //echo "\n</table>"; 
    352          
    353                 } else { // kompakter Style 
    354                         echo "\n<tr>"; // eine Zeile je Flurstueck 
    355                                 // Sp. 1-3 aus Buchungsstelle 
    356                                 echo "\n\t<td>".$row["lfd"]; 
    357                                 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Buchungsstelle");} 
    358                                 echo "</td>"; 
    359  
    360                                 echo "\n\t<td>".buchungsart($row["buchungsart"])."</td>"; 
    361  
    362                                 echo "\n\t<td>"; 
    363                                 if ($row["zaehler"] != "") {echo $row["zaehler"]."/".$row["nenner"];} 
    364                                 echo "</td>"; 
    365  
    366                                 //Sp. 4-7 aus Flurstueck 
    367                                 echo "\n\t<td>".$rowf["gemarkungsnummer"]." ".$rowf["bezeichnung"]."</td>"; 
    368  
    369                                 echo "\n\t<td>".$rowf["flurnummer"]."</td>"; 
    370  
    371                                 echo "\n\t<td>".$fskenn."</a>"; 
    372  
    373                                 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurst&uuml;ck");} 
    374                                 echo "</td>"; 
    375  
    376                                 echo "\n\t<td class='fla'>".$flae."</td>"; 
    377  
    378                                 echo "\n\t<td><p class='nwlink noprint'>"; 
    379                                 echo "\n\t\t<a  href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$rowf["gml_id"]."&amp;eig=n"."&amp;style=".$style; 
    380                                 if ($idanzeige) { echo "&amp;id=j";} 
    381                                 echo "' title='Flurst&uuml;cksnachweis'>FS-Nachw.</a>"; 
    382                                 echo "</p></td>"; 
    383  
    384                         echo "\n</tr>"; 
    385                 } 
    386                 $j++; 
    387         } // Ende Schleife Flurstueck 
    388         if ($j == 0) { 
    389                 echo "\n<p class='err'>Kein Flurst&uuml;ck gefunden.</p>"; 
    390                 linkgml($gkz, $row["gml_id"], "Buchungststelle"); 
    391         } 
    392         If ($style == "alkis") { 
    393         } else { // Kompakter Style 
    394                 if ($row["nrap"] != "") { 
    395                         echo "\n<tr>\n\t<td></td>\n\t<td colspan=6>Nr. im Aufteilungsplan: ".$row["nrap"]."</td>\n<tr>"; // nummerimaufteilungsplan 
    396                 } 
    397                 if ($row["sond"] != "") { // ++ style-class ? 
    398                         echo "\n<tr>\n\t<td></td>\n\t<td colspan=6>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>\n<tr>"; //beschreibungdessondereigentums 
    399                 } 
    400240        } 
    401241        $i++;  
    402 } // Ende Schleife Buchungsstelle 
    403  
    404 If ($style == "alkis") {  
    405 } else { // kompakter Style 
    406         echo "\n</table>"; 
    407 } 
    408  
     242} // Ende Buchungsstelle 
     243 
     244echo "\n</table>"; 
    409245if ($i == 0) { 
    410246        echo "\n<p class='err'>Keine Buchung gefunden.</p>\n"; 
     
    421257        </div> 
    422258</form> 
    423 <?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, $style); ?> 
     259<?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, ""); ?> 
    424260</body> 
    425261</html> 
Note: See TracChangeset for help on using the changeset viewer.