Changeset 333 for trunk/mapbender/http/nav/alkisnav_grd.php
- Timestamp:
- 09/15/14 15:11:32 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/mapbender/http/nav/alkisnav_grd.php
r330 r333 3 3 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4 4 4 2013-04-26 Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung" 5 6 7 5 Code aus _eig nach_fkt ausgelegert, hier mit nutzen. 6 Dazu Var-Namen harmonisieren: $gblatt wird $blattgml 7 ZurÃŒck-Link, Titel der Transaktion anzeigen. 8 8 2013-04-29 Test mit IE 9 9 2013-05-07 Strukturierung des Programms, redundanten Code in Functions zusammen fassen … … 11 11 2013-12-12 Limit in EinBlatt von 200 weit hoch gesetzt (bis BlÀttern möglich wird) 12 12 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 13 2014-09-10 Bei Relationen den Timestamp abschneiden 13 14 */ 14 15 $cntget = extract($_GET); … … 54 55 $linelimit=40; 55 56 56 $sql ="SELECT stelle, bezeichnung AS ag FROM ax_dienststelle ";57 $sql.="WHERE stelle IN (".$liste_ag.") AND stellenart = 1000 AND endet IS NULL "; // AG aus Liste58 $sql.="ORDER BY bezeichnung LIMIT $1 ;";57 $sql ="SELECT stelle, bezeichnung AS ag FROM ax_dienststelle 58 WHERE stelle IN (".$liste_ag.") AND stellenart = 1000 AND endet IS NULL 59 ORDER BY bezeichnung LIMIT $1 ;"; 59 60 $res = pg_prepare("", $sql); 60 61 $res = pg_execute("", array($linelimit)); … … 93 94 94 95 // Body 95 $sql ="SELECT g.bezirk, g.bezeichnung FROM ax_buchungsblattbezirk g "; 96 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle "; 97 $sql.="WHERE a.stelle = $1 AND a.stellenart = 1000 AND a.endet IS NULL AND g.endet IS NULL "; 98 // Diese Subquery stellt sicher, dass nur Bezirke aufgelistet werden, die auch BlÀtter enthalten: 99 $sql.="AND NOT (SELECT gml_id FROM ax_buchungsblatt b WHERE b.land=g.land AND b.bezirk=g.bezirk AND b.endet IS NULL LIMIT 1) IS NULL "; 100 $sql.="ORDER BY g.bezeichnung LIMIT $2 ;"; 96 // Die Subquery stellt sicher, dass nur Bezirke aufgelistet werden, die auch BlÀtter enthalten 97 $sql ="SELECT g.bezirk, g.bezeichnung FROM ax_buchungsblattbezirk g 98 JOIN ax_dienststelle a ON g.stelle=a.stelle 99 WHERE a.stelle = $1 AND a.stellenart = 1000 AND a.endet IS NULL AND g.endet IS NULL 100 AND NOT (SELECT gml_id FROM ax_buchungsblatt b WHERE b.land=g.land AND b.bezirk=g.bezirk AND b.endet IS NULL LIMIT 1) IS NULL 101 ORDER BY g.bezeichnung LIMIT $2 ;"; 102 101 103 $v = array($agkey, $linelimit); 102 104 $res = pg_prepare("", $sql); … … 129 131 // Parameter = SchlÃŒssel des Bezirks 130 132 #global $debug; 131 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezeichnung FROM ax_buchungsblattbezirk g ";132 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle WHERE g.bezirk= $1 AND g.endet IS NULL AND a.endet IS NULL LIMIT 1;";133 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezeichnung FROM ax_buchungsblattbezirk g 134 JOIN ax_dienststelle a ON g.stelle=a.stelle WHERE g.bezirk= $1 AND g.endet IS NULL AND a.endet IS NULL LIMIT 1;"; 133 135 $v=array($gbbez); 134 136 $res=pg_prepare("", $sql); … … 159 161 global $gkz, $gemeinde, $debug, $gbkennz; 160 162 $linelimit=80; 161 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezirk, g.bezeichnung FROM ax_buchungsblattbezirk g "; 162 $sql.="JOIN ax_dienststelle a ON g.stelle=a.stelle "; 163 $sql.="WHERE g.bezeichnung ILIKE $1 AND g.endet IS NULL AND a.endet IS NULL "; // "AND a.stellenart=1000 " Amtsgericht 164 $sql.="ORDER BY a.bezeichnung, g.bezeichnung LIMIT $2 ;"; 163 164 $sql ="SELECT a.stelle, a.bezeichnung AS ag, g.bezirk, g.bezeichnung FROM ax_buchungsblattbezirk g 165 JOIN ax_dienststelle a ON g.stelle=a.stelle 166 WHERE g.bezeichnung ILIKE $1 AND g.endet IS NULL AND a.endet IS NULL 167 ORDER BY a.bezeichnung, g.bezeichnung LIMIT $2 ;";// "AND a.stellenart=1000 " Amtsgericht 165 168 if ( $gbkennz == "") { 166 169 $match = "%"; … … 220 223 } 221 224 // Body 222 $sql ="SELECT b.gml_id, b.buchungsblattnummermitbuchstabenerweiterung AS blatt FROM ax_buchungsblatt b ";223 $sql.="WHERE b.bezirk= $1 AND b.endet IS NULL ORDER BY b.buchungsblattnummermitbuchstabenerweiterung LIMIT $2 ;";225 $sql ="SELECT b.gml_id, b.buchungsblattnummermitbuchstabenerweiterung AS blatt FROM ax_buchungsblatt b 226 WHERE b.bezirk= $1 AND b.endet IS NULL ORDER BY b.buchungsblattnummermitbuchstabenerweiterung LIMIT $2 ;"; 224 227 $v=array($zgbbez, $linelimit); 225 228 $res=pg_prepare("", $sql); … … 254 257 // Kennzeichen "Bezirk + Blatt" eingegeben. Dazu die gml_id des Blattes ermitteln. 255 258 global $debug, $zgbbez, $zblatt, $zblattn, $zblattz; 256 $sql ="SELECT b.gml_id, b.buchungsblattnummermitbuchstabenerweiterung AS blatt FROM ax_buchungsblatt b ";257 $sql.="WHERE b.bezirk= $1 AND b.endet IS NULL AND b.buchungsblattnummermitbuchstabenerweiterung ";259 $sql ="SELECT b.gml_id, b.buchungsblattnummermitbuchstabenerweiterung AS blatt FROM ax_buchungsblatt b 260 WHERE b.bezirk= $1 AND b.endet IS NULL AND b.buchungsblattnummermitbuchstabenerweiterung "; 258 261 259 262 if ($zblattz == "") { // Ohne Buchstabenerweiterung: Formate '123','000123 ','0000123' … … 303 306 304 307 // Blatt -> B u c h u n g s s t e l l e 305 $sql ="SELECT s.gml_id FROM ax_buchungsstelle s ";306 $sql.="JOIN ax_buchungsblatt b ON s.istbestandteilvon = b.gml_id ";307 $sql.="WHERE b.bezirk= $1 AND s.endet IS NULL AND b.endet IS NULL AND b.buchungsblattnummermitbuchstabenerweiterung ";308 $sql ="SELECT s.gml_id FROM ax_buchungsstelle s 309 JOIN ax_buchungsblatt b ON s.istbestandteilvon=substring(b.gml_id,1,16) 310 WHERE b.bezirk= $1 AND s.endet IS NULL AND b.endet IS NULL AND b.buchungsblattnummermitbuchstabenerweiterung "; 308 311 309 312 if ($zblattz == "") { // Ohne Buchstabenerweiterung … … 421 424 $sql.="gd.stelle, gd.gml_id AS dienbezgml, gd.bezirk, gd.bezeichnung AS diengbbez "; // AG und Bezirk dazu 422 425 $sql.="FROM ax_buchungsstelle sh "; // herrschend 423 $sql.="JOIN ax_buchungsstelle sd ON s d.gml_id =ANY(sh.an) "; // dienend424 $sql.="JOIN ax_flurstueck f ON f.istgebucht = sd.gml_ID";426 $sql.="JOIN ax_buchungsstelle sd ON substring(sd.gml_id,1,16)=ANY(sh.an) "; // dienend 427 $sql.="JOIN ax_flurstueck f ON f.istgebucht=substring(sd.gml_id,1,16) "; 425 428 $sql.="JOIN pp_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkung "; 426 $sql.="JOIN ax_buchungsblatt bd ON sd.istbestandteilvon = bd.gml_id"; // Blatt dienend429 $sql.="JOIN ax_buchungsblatt bd ON sd.istbestandteilvon=substring(bd.gml_id,1,16) "; // Blatt dienend 427 430 $sql.="JOIN ax_buchungsblattbezirk gd ON bd.land=gd.land AND bd.bezirk=gd.bezirk "; // GB-Bez. dienend 428 431 $sql.="WHERE sh.gml_id = $1 AND sh.endet IS NULL AND sd.endet IS NULL AND f.endet IS NULL AND bd.endet IS NULL ";
Note: See TracChangeset
for help on using the changeset viewer.