Ignore:
Timestamp:
09/15/14 15:11:32 (10 years ago)
Author:
frank.jaeger
Message:

Anpassung der Programme und Views an verschieden lange gm_id und Datenbanken mit historischen Objekten.

File:
1 edited

Legend:

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

    r332 r333  
    1212        2014-02-06 Korrektur EigentÃŒmerart 
    1313        2014-09-09 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 
    14         2014-09-10 Bei Relationen den Timestamp abschneiden 
     14        2014-09-15 Bei Relationen den Timestamp abschneiden 
    1515*/ 
    1616 
     
    9090        Die Funktion wird je einmal aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall). 
    9191        Weiterere Aufrufe ggf. bei Erbbaurecht fÃŒr die mit "an" verknuepften Buchungsstellen. 
    92         Table-Tag und Kopfzeile im aufrufenden Programm.  
    93 */ 
    94         global $gkz, $idanzeige, $showkey; 
     92        Table-Tag und Kopfzeile im aufrufenden Programm. */ 
     93        global $debug, $gkz, $idanzeige, $showkey; 
    9594 
    9695        // F L U R S T U E C K 
    97         $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche "; 
    98         $sql.="FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=substring(s.gml_id,1,16) ";  
    99         $sql.="LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; 
    100         $sql.="WHERE s.gml_id= $1 ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 
     96        $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche  
     97        FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=substring(s.gml_id,1,16)  
     98        LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer  
     99        WHERE s.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 
     100 
     101/* 
     102SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer,  
     103  f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche  
     104FROM ax_flurstueck f  
     105JOIN ax_buchungsstelle s ON f.istgebucht=substring(s.gml_id,1,16)  
     106LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer  
     107WHERE s.gml_id= 'DENW18AL00001hHb'  
     108  AND f.endet IS NULL  
     109  AND s.endet IS NULL  
     110  AND g.endet IS NULL  
     111ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner; 
     112 
     113$1 = 'DENW18AL00001hHb' */ 
    101114 
    102115        $v = array($gml_bs); 
     
    113126        while($rowf = pg_fetch_array($resf)) { 
    114127                $flur=str_pad($rowf["flurnummer"], 3, "0", STR_PAD_LEFT); 
    115  
    116 /*              $fskenn=str_pad($rowf["zaehler"], 5, "0", STR_PAD_LEFT); 
    117                 if ($rowf["nenner"] != "") { // Bruchnummer 
    118                         $fskenn.="/".str_pad($rowf["nenner"], 3, "0", STR_PAD_LEFT); 
    119                 } 
    120 */ 
    121128                // ohne fuehrende Nullen? 
    122129                $fskenn=$rowf["zaehler"]; 
     
    124131                        $fskenn.="/".$rowf["nenner"]; 
    125132                } 
    126  
    127133                $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 
    128134 
     
    171177                $j++; 
    172178        } // Ende Flurstueck 
     179 
     180        if ($j == 0 ) { // nur Entw. 
     181                if ($debug > 1) { 
     182                        echo "<p class='dbg'>Keine FS gefunden</p>"; 
     183                } 
     184                if ($debug > 2) { 
     185                        echo "<p class='dbg'>SQL='".$sql."'<br>$1 = '".$gml_bs."'</p>"; 
     186                } 
     187        } 
     188 
    173189        pg_free_result($resf); 
    174190        return $j; 
     
    199215        $sqln.="FROM ax_namensnummer n WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;"; 
    200216 
    201         $v = array($gmlid); 
     217        $v = array(substr($gmlid,0,16)); // 16 Stellen bei Relationen 
    202218        $resn = pg_prepare("", $sqln); 
    203219        $resn = pg_execute("", $v); 
     
    205221        if (!$resn) { 
    206222                echo "<p class='err'>Fehler bei Eigent&uuml;mer</p>\n"; 
    207                 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";} 
     223                if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".substr($gmlid,0,16)."'</p>";} 
    208224        } 
    209225 
     
    369385        } // End Loop NamNum 
    370386        echo "\n</table>\n"; 
    371         if ($n == 0) { 
    372                 // kommt vor bei "Fiktives Blatt", kein Fehler  
     387        if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler  
    373388                if ($debug > 0) {echo "<p class='dbg'>keine Namensnummern zum Blatt</p>";} 
    374                 if ($debug > 2) {echo "<p class='dbg'>Namensnummern: SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";} 
     389                if ($debug > 2) {echo "<p class='dbg'>Namensnummern: SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".substr($gmlid,0,16)."'</p>";} 
    375390        } 
    376391        pg_free_result($resn); 
Note: See TracChangeset for help on using the changeset viewer.