Ignore:
Timestamp:
12/01/16 12:43:03 (7 years ago)
Author:
frank.jaeger
Message:

Verbesserungen an der ALKIS-Buchauskunft (Geschwindigkeit, Fehlerkorrekturen, Mandantenfähigkeit) und an der Mapbender2-Navigation.

File:
1 edited

Legend:

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

    r372 r376  
    66 
    77        Version: 
    8         2011-11-17 Parameter der Functions geÀndert 
    9         2011-11-22 Feldname land in ax_buchungsblattbezirk geÀndert 
    10         2011-11-30 import_request_variables 
    11         2012-07-24 Export CSV 
    12         2013-04-08 deprecated "import_request_variables" ersetzt 
    13         2014-09-10 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 
    14         2014-09-15 Bei Relationen den Timestamp abschneiden 
    15         2014-09-30 RÃŒckbau substring(gml_id) 
    16         2014-12-30 Berechtigte GB nach "an BVNR" dieses Bestandes sortieren 
    17         2015-12-09 Austausch .ico durch .png 
     8        2016-02-24 Version fuer norGIS-ALKIS-Import 
     9        2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen, Markierung der Sortierung 
    1810*/ 
    1911session_start(); 
     
    2315if ($auth == "mapbender") {require_once($mapbender);} 
    2416include("alkisfkt.php"); 
    25 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 
    2617$keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 
    2718if ($keys == "j") {$showkey=true;} else {$showkey=false;} 
    28  
    2919?> 
    30 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    31 <html> 
     20<!doctype html> 
     21<html lang="de"> 
    3222<head> 
    33         <meta name="author" content="b600352" > 
    34         <meta http-equiv="cache-control" content="no-cache"> 
    35         <meta http-equiv="pragma" content="no-cache"> 
    36         <meta http-equiv="expires" content="0"> 
    37         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     23        <meta charset="utf-8"> 
    3824        <title>ALKIS Bestandsnachweis</title> 
    3925        <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 
     
    5036<body> 
    5137<?php 
    52 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 
     38$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbestnw.php'"); 
    5339if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 
    5440 
    5541// G R U N D B U C H 
    56 $sql="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart,  
    57 b.gml_id, b.bezirk, b.bezeichnung AS beznam, a.gml_id, a.land, a.bezeichnung, a.stelle, a.stellenart  
    58 FROM ax_buchungsblatt g LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk  
    59 LEFT JOIN ax_dienststelle a ON b.land=a.land AND b.stelle=a.stelle  
    60 WHERE g.gml_id= $1 AND a.stellenart=1000 AND g.endet IS NULL AND a.endet IS NULL;"; 
     42$sql="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, wb.v AS blattartv, wb.d AS blattartd,  
     43b.gml_id, b.bezirk, b.bezeichnung AS beznam, d.gml_id, d.land, d.bezeichnung, d.stelle, d.stellenart, wd.v AS stellev  
     44FROM ax_buchungsblatt g  
     45LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk  
     46LEFT JOIN ax_dienststelle d ON b.land=d.land AND b.stelle=d.stelle  
     47LEFT JOIN alkis_wertearten wb ON cast(g.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart' 
     48LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart' 
     49WHERE g.gml_id= $1 AND g.endet IS NULL AND d.endet IS NULL;"; 
     50// .. AND d.stellenart=1000  
    6151 
    6252$v = array($gmlid); 
    6353$res = pg_prepare("", $sql); 
    6454$res = pg_execute("", $v); 
    65  
    6655if (!$res) { 
    6756        echo "<p class='err'>Fehler bei Grundbuchdaten.</p>"; 
     
    7059if ($row = pg_fetch_array($res)) { 
    7160        $blattkey=$row["blattart"]; 
    72         $blattart=blattart($blattkey); 
     61        $blattart=$row["blattartv"]; 
     62 
    7363        echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]."&nbsp;</p>\n"; // Balken 
    74         echo "\n<h2><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Grundbuch</h2>"; 
    75         echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Kennz. im Rahmen 
     64        echo "\n<h2><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Grundbuch</h2>" 
     65        ."\n<table class='outer'>\n<tr>\n\t<td>"; // Kennz. im Rahmen 
    7666                if ($blattkey == 1000) { 
    7767                        echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>"; 
     
    7969                        echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted 
    8070                } 
    81                         echo "\n\t<tr>"; 
    82                                 echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 
    83                                 echo "\n\t\t<td class='head'>Bezirk</td>"; 
    84                                 echo "\n\t\t<td class='head'>".$blattart."</td>"; 
    85                         echo "\n\t</tr>\n\t<tr>"; 
    86                                 echo "\n\t\t<td title='Amtsgerichtsbezirk'>"; 
    87                                 if ($showkey) { 
    88                                         echo "<span class='key'>".$row["stelle"]."</span><br>"; 
    89                                 } 
    90                                 echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 
    91                                 echo "\n\t\t<td title='Grundbuchbezirk'>"; 
    92                                 if ($showkey) { 
    93                                         echo "<span class='key'>".$row["bezirk"]."</span><br>"; 
    94                                 } 
    95                                 echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 
    96                                 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>"; 
    97                         echo "\n\t</tr>"; 
    98                 echo "\n\t</table>"; 
    99  
    100                 echo "\n\n\t</td>\n\t<td>"; 
    101                 if ($idanzeige) {linkgml($gkz, $gmlid, "Buchungsblatt", "");} 
    102         echo "\n\t</td>\n</tr>\n</table>"; 
     71                        echo "\n\t<tr>" 
     72                                ."\n\t\t<td class='head'>"; // .d nicht gefÃŒllt 
     73                                if ($showkey) {echo "<span class='key'>".$row["stellenart"]."&nbsp;</span>";} 
     74                                echo $row["stellev"]."</td>"; 
     75                                echo "\n\t\t<td class='head'>Bezirk</td>" 
     76                                ."\n\t\t<td class='head' title='".htmlentities($row["blattartd"], ENT_QUOTES, "UTF-8")."'>"; 
     77                                if ($showkey) {echo "<span class='key'>".$blattkey."&nbsp;</span>";} 
     78                                echo $blattart."</td>" 
     79                        ."\n\t</tr>\n\t<tr>" 
     80                                ."\n\t\t<td title='Amtsgerichtsbezirk'>"; 
     81                                if ($showkey) {echo "<span class='key'>".$row["stelle"]."</span><br>";} 
     82                                echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>" 
     83                                ."\n\t\t<td title='Grundbuchbezirk'>"; 
     84                                if ($showkey) {echo "<span class='key'>".$row["bezirk"]."</span><br>";} 
     85                                echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>" 
     86                                ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>" 
     87                        ."\n\t</tr>" 
     88                ."\n\t</table>" 
     89                ."\n\n\t</td>\n\t<td>" 
     90        ."\n\t</td>\n</tr>\n</table>"; 
    10391} 
    10492 
     
    10795} else { 
    10896        // E I G E N T U E M E R 
    109         echo "\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 
     97        echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>"; 
    11098        $n = eigentuemer($con, $gmlid, true, ""); // MIT Adressen. 
    11199        if ($n == 0) { // keine NamensNr, kein Eigentuemer 
    112                 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 
    113                 echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>"; 
    114                 linkgml($gkz, $gmlid, "Buchungsblatt", ""); 
     100                echo "\n<p class='err'>Keine Namensnummer gefunden.</p>" 
     101                ."\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>"; 
    115102        } 
    116103} 
     
    133120} 
    134121if ($anz > 0) { 
    135         echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurst&uuml;cke</h3>"; 
    136         echo "\n<table class='fs'>"; 
    137         echo "\n<tr>"; // zusÀtzliche Kopfzeile 
    138                 echo "\n\t<td>&nbsp;</td>"; 
    139                 echo "\n\t<td class='dien' title='herrschendes Grundst&uuml;ck'>herrschende Buchungsart</td>"; 
    140                 echo "\n\t<td>&nbsp;</td>"; 
    141                 echo "\n\t<td class='dien'>Bezirk</td>"; 
    142                 echo "\n\t<td class='dien'>Blatt</td>"; 
    143                 echo "\n\t<td class='dien'>BVNR</td>"; 
    144                 echo "\n\t<td class='dien' title='dienendes Grundst&uuml;ck'>Buchungsart</td>"; 
    145                 echo "\n\t<td>&nbsp;</td>"; 
    146         echo "\n</tr>"; 
     122        echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurst&uuml;cke</h3>" 
     123        ."\n<table class='fs'>" 
     124        ."\n<tr>" // zus. Kopfz. 
     125                ."\n\t<td>&nbsp;</td>" 
     126                ."\n\t<td class='dien' title='herrschendes Grundst&uuml;ck'>herrschende Buchungsart</td>" 
     127                ."\n\t<td>&nbsp;</td>" 
     128                ."\n\t<td class='dien'>Bezirk</td>" 
     129                ."\n\t<td class='dien'>Blatt</td>" 
     130                ."\n\t<td class='dien'>BVNR</td>" 
     131                ."\n\t<td class='dien' title='dienendes Grundst&uuml;ck'>Buchungsart</td>" 
     132                ."\n\t<td>&nbsp;</td>" 
     133        ."\n</tr>"; 
    147134} else { 
    148         echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>"; 
    149         echo "\n<table class='fs'>"; 
    150 } 
    151  
    152 echo "\n<tr>"; // gemeinsame Kopfzeile 
    153         echo "\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'><span class='wichtig'>BVNR</span></td>"; 
    154         echo "\n\t<td class='head'>Buchungsart</td>"; 
    155         echo "\n\t<td class='head'>Anteil</td>"; 
    156         echo "\n\t<td class='head'>Gemarkung</td>"; 
    157         echo "\n\t<td class='head'>Flur</td>"; 
    158         echo "\n\t<td class='head fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>Flurst.</span></td>"; 
    159         echo "\n\t<td class='head fla'>Fl&auml;che</td>"; // 7 
    160         echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"; 
    161 echo "\n</tr>"; 
     135        echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>" 
     136        ."\n<table class='fs'>"; 
     137} // gemeinsame Kopfzeile 
     138echo "\n<tr>" 
     139        ."\n\t<td class='heads' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'><span class='wichtig'>BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='prim&auml;re Sortierung'></td>" 
     140        ."\n\t<td class='head'>Buchungsart</td>" 
     141        ."\n\t<td class='head'>Anteil</td>" 
     142        ."\n\t<td class='heads'>Gemarkung</td>" 
     143        ."\n\t<td class='heads'>Flur</td>" 
     144        ."\n\t<td class='heads fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>Flurst.</span></td>" 
     145        ."\n\t<td class='head fla'>Fl&auml;che</td>" 
     146        ."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>" 
     147."\n</tr>"; 
    162148 
    163149// Blatt ->  B u c h u n g s s t e l l e 
    164150// aktuelles ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle  
    165 $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, b.bezeichner as bart  
    166 FROM ax_buchungsstelle s LEFT JOIN v_bs_buchungsart b ON s.buchungsart=b.wert  
     151$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, b.v as bart, b.d 
     152FROM ax_buchungsstelle s LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' and b.bezeichnung='buchungsart' 
    167153WHERE s.istbestandteilvon= $1 AND s.endet IS NULL ORDER BY cast(s.laufendenummer AS integer);"; 
    168154 
     
    181167        $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 
    182168        $gml_bs= $row["gml_id"]; // id der buchungsstelle 
    183         $ba=$row["bart"]; // Buchungsart aus Schluesseltabelle 
     169        $bartkey=$row["buchungsart"]; // SchlÃŒsselwert 
     170        $bart=$row["bart"]; // BuchungsART Text dazu 
     171        $bartstory=htmlentities($row["d"], ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet 
    184172 
    185173        if ($row["zaehler"] == "") { 
     
    189177        } 
    190178        // F l u r s t u e c k s d a t e n  zur direkten Buchungsstelle 
    191         $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, true); // return=Anzahl der FS 
     179        $j = bnw_fsdaten($con, $lfdnr, $gml_bs, $bart, $anteil, true, $bartkey, $bartstory); // return=Anzahl der FS 
    192180        $fscnt=$fscnt + $j; 
    193181        if ($j == 0) { //  k e i n e  Flurstuecke gefunden (Miteigentumsnteil usw.) 
     
    200188                //  ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) 
    201189                //  sh=herrschend          sd=dienend 
    202                 $sql ="SELECT sd.gml_id, sd.buchungsart, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, b.bezeichner AS bart  
    203         FROM ax_buchungsstelle sh JOIN ax_buchungsstelle sd ON (sd.gml_id=ANY(sh.an) OR sd.gml_id=ANY(sh.zu))   
    204         LEFT JOIN v_bs_buchungsart b ON sd.buchungsart=b.wert  
    205         WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL ORDER BY sd.laufendenummer;"; 
     190                $sql ="SELECT sd.gml_id, sd.buchungsart, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, wb.v AS bart " 
     191                ."FROM ax_buchungsstelle sh JOIN ax_buchungsstelle sd ON (sd.gml_id=ANY(sh.an) OR sd.gml_id=ANY(sh.zu)) " 
     192                ."LEFT JOIN alkis_wertearten wb ON cast(sd.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' " 
     193                ."WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL ORDER BY sd.laufendenummer;"; 
    206194 
    207195                $v=array($gml_bs); 
     
    210198                if (!$resan) { 
    211199                        echo "<p class='err'>Fehler bei 'andere Buchungsstelle'.</p>\n"; 
    212                         if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 
     200                        //if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 
    213201                } 
    214202                $a=0; // count 
    215203                $altbvnr=""; // Gruppenwechsel 
    216                 while($rowan = pg_fetch_array($resan)) { 
    217                         $lfdnran = $rowan["lfd"];               // BVNR an 
    218                         $gml_bsan= $rowan["gml_id"];    // id der buchungsstelle an 
    219                         $baan= $rowan["bart"];                  // Buchungsart an, entschluesselt 
     204                while($rowan= pg_fetch_array($resan)) { 
     205                        $lfdnran=$rowan["lfd"];         // BVNR an 
     206                        $gml_bsan=$rowan["gml_id"];     // id der buchungsstelle an 
     207                        $baan=$rowan["bart"];           // Buchungsart an, entschluesselt 
    220208 
    221209                        // a n d e r e s   B l a t t  (an dem das aktuelle Blatt Rechte hat) 
    222210                        // dienendes Grundbuch 
    223                         $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, z.bezeichnung AS beznam  
    224         FROM ax_buchungsblatt b JOIN ax_buchungsstelle s ON b.gml_id=s.istbestandteilvon  
    225         LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk  
    226         WHERE s.gml_id= $1 AND b.endet IS NULL ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 
     211                        $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, wb.v AS blattartv, z.bezeichnung AS beznam " 
     212                        ."FROM ax_buchungsblatt b JOIN ax_buchungsstelle s ON b.gml_id=s.istbestandteilvon " 
     213                        ."LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk " 
     214                        ."LEFT JOIN alkis_wertearten wb ON cast(b.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart' " 
     215                        ."WHERE s.gml_id= $1 AND b.endet IS NULL ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 
    227216                        $v=array($gml_bsan); 
    228217                        $fbres=pg_prepare("", $sql); 
     
    234223                        $b=0; 
    235224                        while($fbrow = pg_fetch_array($fbres)) { // genau 1 
    236                                 $fbgml  = $fbrow["gml_id"]; 
    237                                 $fbland = $fbrow["land"]; 
    238                                 $fbbez  = $fbrow["bezirk"]; 
    239                                 $fbblatt = $fbrow["blatt"]; 
    240                                 $fbbart = blattart($fbrow["blattart"]); 
    241                                 $beznam = $fbrow["beznam"]; 
     225                                $fbgml=$fbrow["gml_id"]; 
     226                                $fbland=$fbrow["land"]; 
     227                                $fbbez=$fbrow["bezirk"]; 
     228                                $beznam=$fbrow["beznam"]; 
     229                                $fbblatt=$fbrow["blatt"]; // Key 
     230                                $fbbart=$fbrow["blattartv"]; // Value 
    242231                                $b++; 
    243232                        } 
    244                         if ($b != 1) { 
     233                        if ($b != 1) { // Überwachen: genau 1? 
    245234                                echo "<p class='err'>Anzahl fiktive Bl&auml;tter zu anderer Buchungstelle = ".$b."</p>"; 
    246235                        } 
    247236 
    248237                        // G r u n d b u c h d a t e n  zur  a n d e r e n  Buchungsstelle 
    249                         echo "\n<tr>"; 
    250                                 echo"\n\t<td>"; 
     238                        echo "\n<tr>" 
     239                                ."\n\t<td>"; // Sp.1 Erbbau BVNR 
    251240                                        if($bvnr == $altbvnr) { // gleiches Grundstueck 
    252                                                 echo "&nbsp;"; // Anzeige unterdruecken 
     241                                                echo "&nbsp;"; // dann Anzeige unterdruecken 
    253242                                        } else { 
    254                                                 echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke 
    255                                                 echo "<span class='wichtig'>".$bvnr."</span>"; // Sp.1 Erbbau BVNR 
    256                                                 if ($idanzeige) {linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle");} 
     243                                                echo "<a id='bvnr".$lfdnr."'></a>" // Sprungmarke 
     244                                                ."<span class='wichtig'>".$bvnr."</span>";  
    257245                                                $altbvnr = $bvnr; // Gruppenwechsel merken 
    258246                                        } 
    259                                 echo "</td>"; 
    260                                 echo "\n\t<td class='dien'>"; // Sp.2 Buchung 
    261                                         if ($showkey) { 
    262                                                 echo "<span class='key'>".$row["buchungsart"]."</span> "; 
    263                                         } 
    264                                 echo $ba." an</td>"; 
    265                                 echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil 
    266                                 echo "\n\t<td class='dien'>"; // Sp.4 Gemarkg. hier Bezirk 
    267                                         if ($showkey) { 
    268                                                 echo "<span class='key'>".$fbbez."</span> "; 
    269                                         } 
    270                                         echo $beznam; 
    271                                 echo "</td>"; // Sp.4 hier Bezirk 
    272                                 echo "\n\t<td class='dien'>"; // Sp. 5 Blatt 
    273                                         echo $fbblatt; // Sp.6 BVNR 
    274                                         if ($idanzeige) { 
    275                                                 linkgml($gkz, $fbgml, "Buchungsblatt", ""); 
    276                                         } 
    277                                 echo "</td>"; 
    278                                 echo "\n\t<td class='dien'>"; // BVNR 
    279                                         echo str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 
    280                                         if ($idanzeige) { 
    281                                                 linkgml($gkz, $gml_bsan, "Buchungsstelle", "ax_buchungsstelle"); 
    282                                         } 
    283  
    284                                 echo "</td>";  
    285                                 echo "\n\t<td class='dien'>"; // Sp.7 Buchungsart 
    286                                         if ($showkey) { 
    287                                                 echo "<span class='key'>".$rowan["buchungsart"]."</span> "; 
    288                                         } 
    289                                         echo $baan." "; 
    290                                 echo "</td>"; 
    291                                 echo "\n\t<td>";  // Sp.8 Link ("an" oder "zu" ?) 
    292                                         echo "<p class='nwlink noprint'>an/zu"; //.$rowan["beziehungsart"] Feld gibt es nicht mehr 
    293                                         echo " <a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$fbgml; 
    294                                                 if ($idanzeige) {echo "&amp;id=j";} 
    295                                                 if ($showkey)   {echo "&amp;showkey=j";} 
    296                                                 echo "#bvnr".$lfdnran; // Sprungmarke auf der Seite 
    297                                                 echo "' title='Grundbuchnachweis des dienenden Blattes'>"; 
    298                                                 echo $fbbart; 
    299                                         echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a></p>"; 
    300                                 echo "</td>"; 
    301                         echo "\n</tr>";  
     247                                echo "</td>" 
     248                                ."\n\t<td class='dien'>"; // Sp.2 Buchung 
     249                                        if ($showkey) {echo "<span class='key'>".$row["buchungsart"]."</span> ";} 
     250                                echo $bart." an</td>" 
     251                                ."\n\t<td>".$anteil."</td>" // Sp.3 Anteil 
     252                                ."\n\t<td class='dien'>"; // Sp.4 Gemarkg., hier Bezirk 
     253                                        if ($showkey) {echo "<span class='key'>".$fbbez."</span> ";} 
     254                                        echo $beznam 
     255                                ."</td>"; 
     256                                echo "\n\t<td class='dien'>".$fbblatt."</td>" // Sp. 5 Blatt 
     257                                        ."\n\t<td class='dien'>".str_pad($lfdnran, 4, "0", STR_PAD_LEFT)."</td>" // Sp.6 BVNR 
     258                                        ."\n\t<td class='dien'>"; // Sp.7 Buchungsart 
     259                                        if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span> ";} 
     260                                        echo $baan." " 
     261                                ."</td>" 
     262                                ."\n\t<td>" // Sp.8 Link ("an" oder "zu"?) 
     263                                        ."<p class='nwlink noprint'>an/zu" 
     264                                        ." <a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$fbgml; 
     265                                                if ($showkey) {echo "&amp;showkey=j";} 
     266                                                echo "#bvnr".$lfdnran // Sprungmarke auf der Seite 
     267                                                ."' title='Zum Grundbuchnachweis des dienenden Blattes'>"; 
     268                                                if ($showkey) {echo "<span class='key'>".$rowan["blattart"]."</span> ";} 
     269                                                echo $fbbart 
     270                                        ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a></p>" 
     271                                ."</td>" 
     272                        ."\n</tr>";  
    302273 
    303274                        // 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 
    304275                        // Buchungsart wird nur in erster Zeile ausgegeben, hier leer 
    305                         $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false); // return=Anz.FS 
     276                        $aj = bnw_fsdaten($con, $lfdnran, $gml_bsan, "", $anteil, false, "", ""); // return=Anz.FS 
    306277                        $fscnt=$fscnt + $aj; 
    307278                        // +++ Gibt es Sondereigentum beim fiktiven Blatt? 
    308279                        if ($rowan["nrap"] != "") { 
    309                                 echo "\n<tr>"; 
    310                                         echo "\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>"; 
    311                                 echo "\n</tr>"; 
     280                                echo "\n<tr>" 
     281                                        ."\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>" 
     282                                ."\n</tr>"; 
    312283                        } 
    313284                        if ($rowan["sond"] != "") { 
    314                                 echo "\n<tr>"; 
    315                                         echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>"; 
    316                                 echo "\n</tr>"; 
     285                                echo "\n<tr>" 
     286                                        ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>" 
     287                                ."\n</tr>"; 
    317288                        } 
    318289                        $a++; 
    319290                } 
    320291                if ($a == 0) { 
    321                         echo "\n<tr>"; 
    322                                 echo "\n\t<td><span class='wichtig'>".$bvnr."</span>"; 
    323                                 if ($idanzeige) { 
    324                                         linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle"); 
    325                                 } 
    326                                 echo "</td>"; 
    327                                 echo "\n\t<td colspan=7>"; 
    328                                         echo "<p class='warn'>Flurst&uuml;cke zu ".$bvnr." nicht gefunden.</p>"; 
    329                                 echo "</td>"; 
    330                         echo "\n</tr>"; 
     292                        echo "\n<tr>" 
     293                                ."\n\t<td><span class='wichtig'>".$bvnr."</span></td>" 
     294                                ."\n\t<td colspan=7>" 
     295                                        ."<p class='warn'>Keine Flurst&uuml;cke zu Buchung ".$bvnr." im berechtigten Bereich.</p>" 
     296                                ."</td>" 
     297                        ."\n</tr>"; 
    331298                } 
    332299        } 
    333300        $i++;  
    334301        if ($row["nrap"] != "") { // Nr im Auft.Plan 
    335                 echo "\n<tr>"; 
    336                         echo "\n\t<td class='nrap' colspan=8>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td>"; 
    337                 echo "\n</tr>"; 
     302                echo "\n<tr>" 
     303                        ."\n\t<td class='nrap' colspan=8>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td>" 
     304                ."\n</tr>"; 
    338305        } 
    339306        if ($row["sond"] != "") { // Sondereigentumsbeschreibung 
    340                 echo "\n<tr>"; 
    341                         echo "\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>"; 
    342                 echo "\n</tr>"; 
     307                echo "\n<tr>" 
     308                        ."\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>" 
     309                ."\n</tr>"; 
    343310        } // Ende Buchungsstelle/BVNR 
    344311} // Ende Loop 
     
    347314if ($i == 0) { 
    348315        echo "\n<p class='err'>Keine Buchung gefunden.</p>\n"; 
    349         linkgml($gkz, $gmlid, "Buchungsblatt", ""); 
    350316} else { 
    351317        if ($i > 5 and $fscnt > 5) { // nur wenn nicht auf einen Blick zu erkennen 
     
    359325// Blatt   <istBestandteilVon< Stelle  <an<  Stelle      >istBestandteilVon>  Blatt 
    360326// Fiktiv                      Fiktiv  <zu<  Berechtigt                       Berechtigt 
    361 $sql="SELECT sf.laufendenummer AS anlfdnr, bb.gml_id, bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung AS blatt, bb.blattart,  
    362 sb.gml_id AS gml_s, sb.laufendenummer AS lfdnr, sb.buchungsart, ba.bezeichner AS bart, bz.bezeichnung AS beznam, ag.bezeichnung, ag.stelle, ag.stellenart  
     327$sql="SELECT sf.laufendenummer AS anlfdnr, bb.gml_id, bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung AS blatt, bb.blattart, wa.v AS blattartv,  
     328sb.gml_id AS gml_s, sb.laufendenummer AS lfdnr, sb.buchungsart, wb.v AS bart, wb.d AS bartd, bz.bezeichnung AS beznam, d.bezeichnung, d.stelle, d.stellenart, wd.v AS stellev  
    363329FROM ax_buchungsstelle sf JOIN ax_buchungsstelle sb ON (sf.gml_id=ANY(sb.an) OR sf.gml_id=ANY(sb.zu))  
    364330JOIN ax_buchungsblatt bb ON bb.gml_id=sb.istbestandteilvon  
    365331LEFT JOIN ax_buchungsblattbezirk bz ON bb.land=bz.land AND bb.bezirk=bz.bezirk  
    366 LEFT JOIN ax_dienststelle ag ON bz.land=ag.land AND bz.stelle=ag.stelle  
    367 LEFT JOIN v_bs_buchungsart ba ON sb.buchungsart=ba.wert  
     332LEFT JOIN ax_dienststelle d ON bz.land=d.land AND bz.stelle=d.stelle  
     333LEFT JOIN alkis_wertearten wa ON cast(bb.blattart AS character varying)=wa.k AND wa.element='ax_buchungsblatt' AND wa.bezeichnung='blattart' 
     334LEFT JOIN alkis_wertearten wb ON cast(sb.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart' 
     335LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart' 
    368336WHERE sf.istbestandteilvon = $1 AND sf.endet IS NULL AND sb.endet IS NULL AND bb.endet IS NULL  
    369 ORDER BY cast(sf.laufendenummer AS integer), bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);"; 
    370 // Änd. 2014-12-30: Sort. wie im ersten Teil 
     337ORDER BY cast(sf.laufendenummer AS integer), bz.bezeichnung, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);"; 
    371338 
    372339$v = array($gmlid); 
     
    380347while($rowb = pg_fetch_array($resb)) { 
    381348        if ($b == 0) { // Ueberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde 
    382                 echo "\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Berechtigte Grundb&uuml;cher</h3>\n"; 
    383                 echo "\n<table class='outer'>"; 
    384                 echo "\n<tr>"; // Tab Kopf 
    385                         echo "\n\t<td class='head' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurst&uuml;cke'>an <span class='wichtig'>BVNR</span></td>"; // wie oben 
    386                         echo "\n\t<td class='head'>Land</td>"; 
    387                         echo "\n\t<td class='head'>Dienststelle</td>"; 
    388                         echo "\n\t<td class='head'>Bezirk</td>"; 
    389                         echo "\n\t<td class='head'><span class='wichtig'>Blatt</span></td>"; 
    390                         echo "\n\t<td class='head'>BVNR</td>"; 
    391                         echo "\n\t<td class='head'>Buchungsart</td>"; 
    392                         echo "\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>"; 
    393                 echo "\n</tr>"; 
     349                echo "\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Berechtigte Grundb&uuml;cher</h3>\n" 
     350                ."\n<table class='outer'>" 
     351                ."\n<tr>" 
     352                        ."\n\t<td class='heads' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurst&uuml;cke'><span class='wichtig'>an BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='prim&auml;re Sortierung'></td>" 
     353                //      ."\n\t<td class='heads'>Land</td>" 
     354                        ."\n\t<td class='head'>Dienststelle</td>" 
     355                        ."\n\t<td class='heads'>Bezirk</td>" 
     356                        ."\n\t<td class='heads'><span class='wichtig'>Blatt</span></td>" 
     357                        ."\n\t<td class='heads'>BVNR</td>" 
     358                        ."\n\t<td class='head'>Buchungsart</td>" 
     359                        ."\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>" 
     360                ."\n</tr>"; 
    394361        } 
    395362 
     
    399366        $gml_s=$rowb["gml_s"]; // id der ber. B-Stelle 
    400367        $blart=$rowb["blattart"]; 
     368 
    401369        $buch=$rowb["buchungsart"]; // Buchungsart Stelle berechtigt 
    402370        $bart=$rowb["bart"]; // BA entschl. 
     
    404372        $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 
    405373 
    406         echo "\n<tr>"; 
    407                 // Teil berechtigte GrundbÃŒcher ist sortiert wie oberer Teil "FlurstÃŒcke" 
     374        echo "\n<tr>"; // Der Teil "berechtigte GrundbÃŒcher" ist sortiert wie oberer Teil "FlurstÃŒcke" 
    408375                echo "\n\t<td><span class='wichtig'>".$anlfdnr0."</span>"; 
    409                 // Link "nach oben" - bringt das Nutzen? Nur bei ganz langen BestÀnden. 
    410 /*                      echo "\n\t\t<p class='noprint'>&nbsp;"; 
    411                         echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."#bvnr".$anlfdnr; 
    412                                 if ($idanzeige) {echo "&amp;id=j";} 
    413                                 if ($showkey)   {echo "&amp;showkey=j";} 
    414                                 echo "' title='Sprung nach oben zum Grundst&uuml;ck'>hoch</a>"; 
    415                         echo "\n\t\t</p>"; 
    416         ++ <p> auflösen, sonst 2 Zeilen im <td> ++ 
    417 */ 
    418                 echo "</td>"; 
    419                 echo "\n\t<td>".$rowb["land"]."</td>"; 
    420                 echo "\n\t<td>"; // Amtsgericht 
    421                         echo dienststellenart($rowb["stellenart"])." "; 
    422                         if ($showkey) { 
    423                                 echo "<span class='key'>".$rowb["stelle"]."</span> "; 
    424                         } 
    425                         echo $rowb["bezeichnung"]; 
    426                 echo "</td>"; 
    427                 echo "\n\t<td>"; 
    428                         if ($showkey) { 
    429                                 echo "<span class='key'>".$rowb["bezirk"]."</span> "; 
    430                         } 
    431                         echo $rowb["beznam"]; 
    432                 echo "</td>"; 
    433                 echo "\n\t<td><span class='wichtig'>".$rowb["blatt"]."</span>"; 
    434                         if ($idanzeige) {linkgml($gkz, $gml_b, "Buchungsblatt", "");} 
    435                 echo "</td>"; 
    436                 echo "\n\t<td>".$bvnr; 
    437                         if ($idanzeige) {linkgml($gkz, $gml_s, "Buchungsstelle", "ax_buchungssstelle");} 
    438                 echo "</td>"; 
    439                 echo "\n\t<td>"; 
    440                         if ($showkey) { 
    441                                 echo "<span class='key'>".$buch."</span> "; 
    442                         } 
    443                         echo $bart; 
    444                 echo "</td>"; 
    445                 echo "\n\t<td>"; 
    446                         echo "\n\t\t<p class='nwlink noprint'>"; 
    447                         echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$gml_b."#bvnr".$lfdnr; 
    448                                 if ($idanzeige) {echo "&amp;id=j";} 
    449                                 if ($showkey)   {echo "&amp;showkey=j";} 
    450                                 echo "' title='Nachweis des berechtigten Blattes an ".$blattart."'>"; // oder "zu" statt "an" 
    451                                 echo blattart($blart); 
    452                                 echo " \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 
    453                         echo "\n\t\t</p>"; 
    454                 echo "</td>"; 
    455         echo "\n</tr>"; 
     376 
     377                echo "</td>" 
     378                //."\n\t<td>".$rowb["land"]."</td>" 
     379                ."\n\t<td>"; // Amtsgericht,Grundbuchamt 
     380                        echo $rowb["stellev"]." "; 
     381                        if ($showkey) {echo "<span class='key'>".$rowb["stelle"]."</span> ";} 
     382                        echo $rowb["bezeichnung"] 
     383                ."</td>" 
     384                ."\n\t<td>"; 
     385                        if ($showkey) {echo "<span class='key'>".$rowb["bezirk"]."</span> ";} 
     386                        echo $rowb["beznam"] 
     387                ."</td>" 
     388                ."\n\t<td><span class='wichtig'>".$rowb["blatt"]."</span></td>" 
     389                ."\n\t<td>".$bvnr."</td>" 
     390                ."\n\t<td title='".htmlentities($rowb["bartd"], ENT_QUOTES, "UTF-8")."'>"; 
     391                        if ($showkey) {echo "<span class='key'>".$buch."</span> ";} 
     392                        echo $bart 
     393                ."</td>" 
     394                ."\n\t<td>" 
     395                        ."\n\t\t<p class='nwlink noprint'>" 
     396                        ."\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$gml_b."#bvnr".$lfdnr; 
     397                                if ($showkey) {echo "&amp;showkey=j";} 
     398                                echo "' title='Nachweis des berechtigten Blattes an ".$blattart."'>".$rowb["blattartv"]; // oder "zu" statt "an" 
     399                                echo " \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 
     400                        ."\n\t\t</p>" 
     401                ."</td>" 
     402        ."\n</tr>"; 
    456403        $b++; 
    457404} 
     
    468415?> 
    469416 
    470 <form action=''> 
    471         <div class='buttonbereich noprint'> 
    472         <hr> 
    473                 <a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp; 
    474                 <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp; 
    475                 <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a>&nbsp; 
    476         </div> 
    477 </form> 
    478  
     417<div class='buttonbereich noprint'> 
     418<hr> 
     419        <a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp; 
     420        <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp; 
     421        <a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a>&nbsp; 
     422</div> 
    479423<?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?> 
    480  
    481424</body> 
    482425</html> 
Note: See TracChangeset for help on using the changeset viewer.