Ignore:
Timestamp:
09/10/14 12:08:18 (10 years ago)
Author:
frank.jaeger
Message:

Umstellung von PostNAS 0.7 auf PostNAS 0.8, ohne Tabelle "alkis_beziehungen".

File:
1 edited

Legend:

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

    r315 r330  
    66        2011-11-30 NEU! Variante von alkisgebaeudenw: Aufruf fÃŒr EIN Haus, nicht fÃŒr ein FS 
    77        2011-01-31 ax_gebaeude.weiteregebaeudefunktion ist jetzt Array 
    8         2013-04-08  deprecated "import_request_variables" ersetzt 
     8        2013-04-08 deprecated "import_request_variables" ersetzt 
     9        2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 
     10        2014-09-10 Bei Relationen den Timestamp abschneiden 
    911 
    1012        ToDo: 
     
    5355$sqlg.="h.bauweise_beschreibung, u.bezeichner AS bfunk, z.bezeichner AS bzustand, "; 
    5456// "w.bezeichner AS bweitfunk, "; 
    55 $sqlg.="d.bezeichner AS bdach, round(area(g.wkb_geometry)::numeric,2) AS gebflae "; 
    56 $sqlg.="FROM ax_gebaeude g "; 
    57  
     57$sqlg.="d.bezeichner AS bdach, round(area(g.wkb_geometry)::numeric,2) AS gebflae FROM ax_gebaeude g "; 
    5858// Entschluesseln 
    59 $sqlg.="LEFT JOIN ax_gebaeude_bauweise h ON g.bauweise = h.bauweise_id "; 
    60 $sqlg.="LEFT JOIN ax_gebaeude_funktion u ON g.gebaeudefunktion = u.wert "; 
    61 $sqlg.="LEFT JOIN ax_gebaeude_zustand z ON g.zustand = z.wert "; 
    62 $sqlg.="LEFT JOIN ax_gebaeude_dachform d ON g.dachform = d.wert "; 
    63  
    64 $sqlg.="WHERE g.gml_id= $1 "; // ID des Hauses 
     59$sqlg.="LEFT JOIN ax_gebaeude_bauweise h ON g.bauweise=h.bauweise_id "; 
     60$sqlg.="LEFT JOIN ax_gebaeude_funktion u ON g.gebaeudefunktion=u.wert "; 
     61$sqlg.="LEFT JOIN ax_gebaeude_zustand z ON g.zustand=z.wert "; 
     62$sqlg.="LEFT JOIN ax_gebaeude_dachform d ON g.dachform=d.wert "; 
     63 
     64$sqlg.="WHERE g.gml_id= $1 AND g.endet IS NULL ;"; 
    6565 
    6666$v = array($gmlid); 
     
    7373 
    7474// Balken 
    75 echo "<p class='geb'>ALKIS Haus ".$gmlid."&nbsp;</p>\n"; // +++ Kennzeichen = ? 
     75echo "<p class='geb'>ALKIS Haus ".$gmlid."&nbsp;</p>\n"; // ++ Kennzeichen? 
    7676 
    7777echo "\n<h2><img src='ico/Haus.ico' width='16' height='16' alt=''> Haus (Geb&auml;ude)</h2>\n"; 
     
    7979// Kennzeichen in Rahmen  
    8080// - Welches Kennzeichen zum Haus ? 
    81 if ($idanzeige) {linkgml($gkz, $gmlid, "Haus"); } 
     81if ($idanzeige) {linkgml($gkz, $gmlid, "Haus", "ax_gebaeude"); } 
    8282echo "\n<hr>"; 
    8383// Umschalter: auch leere Felder ausgeben? 
     
    9090echo "</a></p>"; 
    9191 
    92 while($rowg = pg_fetch_array($resg)) { // Als Schleife, kann aber nur EIN Haus sein. 
     92while($rowg = pg_fetch_array($resg)) { // Schleife, kann aber nur EIN Haus sein. 
    9393        $gebnr++; 
    9494        echo "\n<table class='geb'>"; 
     
    130130        // 0 bis N Lagebezeichnungen mit Haus- oder Pseudo-Nummer 
    131131        // HAUPTgebÀude 
    132         $sqll ="SELECT 'm' AS ltyp, v.beziehung_zu, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer "; 
    133         $sqll.="FROM alkis_beziehungen v ";  
    134         $sqll.="JOIN ax_lagebezeichnungmithausnummer l ON v.beziehung_zu=l.gml_id "; 
     132        $sqll ="SELECT 'm' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer "; 
     133        $sqll.="FROM ax_gebaeude g "; 
     134        $sqll.="JOIN ax_lagebezeichnungmithausnummer l ON substring(l.gml_id,1,16)=ANY(g.zeigtauf) "; 
    135135        $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 
    136         $sqll.="WHERE v.beziehungsart = 'zeigtAuf' AND v.beziehung_von = $1 "; 
     136        $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL "; 
    137137        $sqll.="UNION "; 
    138138        // oder NEBENgebÀude 
    139         $sqll.="SELECT 'p' AS ltyp, v.beziehung_zu, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer "; 
    140         $sqll.="FROM alkis_beziehungen v ";  
    141         $sqll.="JOIN ax_lagebezeichnungmitpseudonummer l ON v.beziehung_zu=l.gml_id "; 
     139        $sqll.="SELECT 'p' AS ltyp, l.gml_id AS gmllag, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer "; 
     140        $sqll.="FROM ax_gebaeude g ";  
     141        $sqll.="JOIN ax_lagebezeichnungmitpseudonummer l ON substring(l.gml_id,1,16)=g.hat "; 
    142142        $sqll.="JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 
    143         $sqll.="WHERE v.beziehungsart = 'hat' AND v.beziehung_von = $1 "; // ID des Hauses" 
    144  
    145         $sqll.="ORDER BY bezeichnung, hausnummer "; 
     143        $sqll.="WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL "; 
     144 
     145        $sqll.="ORDER BY bezeichnung, hausnummer ;"; 
    146146 
    147147        $v = array($gmlid); 
     
    160160                $hsnr=$rowl["hausnummer"]; 
    161161                $hlfd=$rowl["laufendenummer"]; 
    162                 $gmllag=$rowl["beziehung_zu"]; 
     162                $gmllag=$rowl["gmllag"]; 
    163163 
    164164                        if ($zhsnr == 1) { 
     
    174174                                if ($ltyp == "p") { echo ", lfd.Nr ".$hlfd;} 
    175175                        echo "</a>"; 
    176                         if ($idanzeige) {linkgml($gkz, $gmllag, "Lage"); } 
     176                        if ($idanzeige) {linkgml($gkz, $gmllag, "Lage", ""); } 
    177177                        echo "<br>"; 
    178178        } // Ende Loop Lagezeilen m.H. 
Note: See TracChangeset for help on using the changeset viewer.