Changeset 315 for trunk/info/info/alkis/alkisfkt.php
- Timestamp:
- 02/06/14 16:40:10 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/info/info/alkis/alkisfkt.php
r306 r315 5 5 6 6 Version: 7 2010-12-17 Astrid Emde: Prepared Statements (pg_query -> pg_prepare + pg_execute) 8 2011-11-01 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen 9 2011-11-02 Parameter debug in function eigentuemer 10 2011-11-17 Variable ($debug, $idanzeige, $showkey) von Parameter nach global. Die heiÃen in allen Programmteilen gleich. 11 2014-01-22 Eigentuemerart: Mehr Werte und Zugriff auf DB-SchlÃŒssel-Tabelle 7 2010-12-17 Astrid Emde: Prepared Statements (pg_query -> pg_prepare + pg_execute) 8 2011-11-01 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen 9 2011-11-02 Parameter debug in function eigentuemer 10 2011-11-17 Variable ($debug, $idanzeige, $showkey) von Parameter nach global. Die heiÃen in allen Programmteilen gleich. 11 2014-01-22 Eigentuemerart: Mehr Werte und Zugriff auf DB-SchlÃŒssel-Tabelle 12 2014-02-06 Korrektur EigentÃŒmerart 12 13 */ 13 14 … … 73 74 function kurz_namnr($lang) { 74 75 // Namensnummer kuerzen. Nicht benoetigte Stufen der Dezimalklassifikation abschneiden 75 $kurz=str_replace(".00","",$lang); 76 $kurz=str_replace("0000","",$kurz); 77 $kurz=ltrim($kurz, "0"); 78 $kurz=str_replace(".0",".",$kurz); 76 $kurz=str_replace(".00","",$lang); // leere Stufen (nur am Ende) 77 $kurz=str_replace("0000","",$kurz); // ganz leer (am Anfang) 78 $kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang 79 $kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe 79 80 return $kurz; 80 81 } … … 169 170 $j++; 170 171 } // Ende Flurstueck 172 pg_free_result($resf); 171 173 return $j; 172 174 } … … 176 178 // Sp.1 = Namennummer, Sp. 2 = Name / Adresse, Sp. 3 = Link 177 179 // Parameter: 178 // 179 // 180 // $gmlid = ID des GB-Blattes 181 // $mitadresse = Option (true/false) ob auch die Adresszeile ausgegeben werden soll 180 182 // Return = Anzahl Namensnummern 181 183 … … 195 197 $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, "; 196 198 $sqln.="n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass "; 197 $sqln.="FROM ax_namensnummer n "; 198 $sqln.="JOIN alkis_beziehungen b ON b.beziehung_von=n.gml_id "; 199 $sqln.="WHERE b.beziehung_zu= $1 "; // id blatt 200 $sqln.="AND b.beziehungsart='istBestandteilVon' "; 201 $sqln.="ORDER BY laufendenummernachdin1421;"; 199 $sqln.="FROM ax_namensnummer n JOIN alkis_beziehungen b ON b.beziehung_von=n.gml_id "; 200 $sqln.="WHERE b.beziehung_zu= $1 AND b.beziehungsart='istBestandteilVon' ORDER BY laufendenummernachdin1421;"; 202 201 203 202 $v = array($gmlid); … … 245 244 // aus welchen Namensnummern die aktuelle entstanden ist. 246 245 247 // Schleife 2: P e r s o n 246 // Schleife 2: P e r s o n 248 247 // Beziehung: ax_person <benennt< ax_namensnummer 249 248 $sqlp ="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "; … … 276 275 } 277 276 // Spalte 2 = Angaben 278 $eiart=eigentuemerart($rown["eigentuemerart"]); 279 echo "\n\t\t<p class='geig' title='Eigentümerart ".$eiart."'>".$diePerson."</p>\n\t</td>"; 277 $eiartkey=$rown["eigentuemerart"]; 278 $eiart=eigentuemerart($eiartkey); 279 echo "\n\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t</td>"; 280 280 281 281 // Spalte 3 = Link 282 282 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 283 283 if ($idanzeige) {linkgml($gkz, $rowp["gml_id"], "Person"); echo " ";} 284 if ($showkey) {echo "<span class='key'>(".$eiartkey.")</span> ";} 284 285 echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp[0]; 285 286 if ($idanzeige) {echo "&id=j";} … … 292 293 // Schleife 3: A d r e s s e (OPTIONAL) 293 294 $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland "; 294 $sqla.="FROM ax_anschrift a "; 295 $sqla.="JOIN alkis_beziehungen b ON a.gml_id=b.beziehung_zu "; 295 $sqla.="FROM ax_anschrift a JOIN alkis_beziehungen b ON a.gml_id=b.beziehung_zu "; 296 296 $sqla.="WHERE b.beziehung_von= $1 AND b.beziehungsart='hat';"; // ORDER? 297 298 297 $gmlp=$rowp["gml_id"]; // Person 299 298 $v = array($gmlp); 300 299 $resa = pg_prepare("", $sqla); 301 300 $resa = pg_execute("", $v); 302 303 301 if (!$resa) { 304 302 echo "\n\t<p class='err'>Fehler bei Adressen</p>\n"; 305 303 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml= '".$gmlp."'</p>";} 306 304 } 307 308 305 $j=0; 309 306 while($rowa = pg_fetch_array($resa)) { … … 343 340 $j++; 344 341 } 342 pg_free_result($resa); 345 343 } // End if 344 346 345 // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" 347 346 $i++; // cnt Person … … 370 369 if ($debug > 0) {echo "<p class='dbg'>keine Namensnummern zum Blatt</p>";} 371 370 if ($debug > 2) {echo "<p class='dbg'>Namensnummern: SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";} 372 } 371 } 372 pg_free_result($resn); 373 373 return $n; 374 374 } // End Function eigentuemer … … 403 403 // Die hÀufigsten Werte direkt aus den Programmcode liefern, ggf. angepasst. 404 404 // FÃŒr seltene Werte in der Datenbank nachschlagen. 405 // SchlÃŒsseltabelle dazu aus GeoInfoDokist vorhanden seit 2014-01-22.405 // SchlÃŒsseltabelle dazu ist vorhanden seit 2014-01-22. 406 406 // Hier Verwendung fÃŒr Text zum Link. 407 407 // FÃŒr korrekte Wiedergabe der amtlichen Werte einen Join auf Tabelle verwenden statt dieser Function. 408 global $debug; 408 409 switch ($key) { 409 410 case 1000: $wert = "Natürliche Person"; break; // singular fuer Link-Text … … 425 426 if ($res) { 426 427 $row=pg_fetch_array($res); 427 $wert==htmlentities($row["bezeichner"], ENT_QUOTES, "UTF-8"); 428 $wert=htmlentities($row["bezeichner"], ENT_QUOTES, "UTF-8"); 429 if ($wert == "") {$wert="** Eigentümerart '".$key."' nicht gefunden **";} 428 430 } else { 429 echo "\n\t<p class='err'>Fehler bei DB-Zugriff auf SchlÃŒssel EigentÃŒmerart.</p>\n"; 430 $wert = "** Unbekannte Eigentümerart '".$key."' **"; 431 } 431 echo "\n\t<p class='err'>Fehler bei DB-Zugriff auf EigentÃŒmerart.</p>\n"; 432 $wert="** Unbekannte Eigentümerart '".$key."' **"; 433 } 434 pg_free_result($res); 432 435 break; 433 436 } 434 437 return $wert; 435 438 } 436 437 439 438 440 // Entschluesslung ax_buchungsblatt.blattart
Note: See TracChangeset
for help on using the changeset viewer.