[315] | 1 | <?php |
---|
| 2 | /* Modul: alkisfkt.php |
---|
| 3 | ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). |
---|
| 4 | Functions |
---|
| 5 | |
---|
| 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 |
---|
| 12 | 2014-02-06 Korrektur EigentÃŒmerart |
---|
[330] | 13 | 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 |
---|
[315] | 15 | */ |
---|
| 16 | |
---|
[129] | 17 | function footer($gmlid, $link, $append) { |
---|
[315] | 18 | // Einen Seitenfuss ausgeben. |
---|
| 19 | // Den URL-Parameter "&id=j/n" und "&showkey=j/n" in allen Kombinationen umschalten lassen. |
---|
| 20 | // Die Parameter &gkz= und &gmlid= kommen in allen Modulen einheitlich vor |
---|
| 21 | |
---|
| 22 | // Der Parameter $append wird angehaengt wenn gefuellt |
---|
| 23 | // Anwendung: &eig=j bei FS-NW, <yp=m/p/o bei Lage |
---|
[129] | 24 | global $gkz, $idumschalter, $idanzeige, $showkey, $hilfeurl; |
---|
[315] | 25 | |
---|
| 26 | $customer=$_SESSION["mb_user_name"]; |
---|
| 27 | echo "\n<div class='confbereich noprint'>"; |
---|
| 28 | echo "\n<table class='outer'>\n<tr>"; |
---|
| 29 | |
---|
| 30 | // Spalte 1: Info Benutzerkennung |
---|
| 31 | echo "\n\t<td title='Info'><i>Benutzer: ".$customer."</i></td>"; |
---|
| 32 | |
---|
| 33 | // Spalte 2: Umschalter |
---|
| 34 | echo "\n\t<td title='Konfiguration'>"; |
---|
| 35 | $mylink ="\n\t\t<a class='gmlid' href='".$link."gkz=".$gkz."&gmlid=".$gmlid.$append; |
---|
| 36 | if ($showkey) {$mykey = "&showkey=j";} else {$mykey = "&showkey=n";} |
---|
| 37 | if ($idumschalter) { // fuer Entwicklung ODER Test |
---|
| 38 | if ($idanzeige) {$myid = "&id=j";} else {$myid = "&id=n";} |
---|
| 39 | |
---|
| 40 | // Umschalter nur ausgeben, wenn in conf gesetzt |
---|
| 41 | if ($idanzeige) { // Umschalten ID ein/aus |
---|
| 42 | echo $mylink.$mykey."&id=n' title='Ohne Verfolgung der ALKIS-Beziehungen'>"; |
---|
| 43 | echo "<img src='ico/Beziehung_link.ico' width='16' height='16' alt=''> ID aus</a>"; |
---|
| 44 | } else { |
---|
| 45 | echo $mylink.$mykey."&id=j' title='Verfolgung der GML-ID in den ALKIS-Beziehungen'>"; |
---|
| 46 | echo "<img src='ico/Beziehung_link.ico' width='16' height='16' alt=''> ID ein</a>"; |
---|
| 47 | } |
---|
| 48 | echo " | "; |
---|
| 49 | } else { // keinen ID-Umschalter |
---|
| 50 | $myid = ""; |
---|
| 51 | } |
---|
| 52 | |
---|
| 53 | if ($showkey) { // // Umschalten SchlÃŒssel ein/aus |
---|
| 54 | echo $mylink.$myid."&showkey=n' title='Verschlüsselungen ausblenden'>Schlüssel aus</a>"; |
---|
| 55 | } else { |
---|
| 56 | echo $mylink.$myid."&showkey=j' title='Verschlüsselungen anzeigen'>Schlüssel ein</a>"; |
---|
| 57 | } |
---|
| 58 | echo "\n\t</td>"; |
---|
| 59 | |
---|
| 60 | // Spalte 3 |
---|
| 61 | echo "\n\t<td title='Hilfe'>"; |
---|
| 62 | echo "\n\t\t<p class='nwlink'>\n\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t</p>\n\t</td>"; |
---|
| 63 | echo "\n</tr>\n</table>\n</div>\n"; |
---|
| 64 | return 0; |
---|
| 65 | } |
---|
| 66 | |
---|
[330] | 67 | function linkgml($gkz, $gml, $typ, $tabelle) { |
---|
[315] | 68 | // Einen Link zur Verfolgung der Beziehungen mit dem Modul alkisrelationen.php |
---|
[330] | 69 | // tabelle = nur angeben fÃŒr Tabellen, die Relationen-Spalten besitzen, sonst leer |
---|
| 70 | $kurzid=substr($gml, 12, 4); // ID in Anzeige kuerzen (4 Zeichen), der Anfang ist immer gleich |
---|
| 71 | // PostNAS 0.8: Timestamp abschneiden |
---|
[315] | 72 | echo "\n\t\t<a target='_blank' title='ID ".$typ."' class='gmlid noprint' "; |
---|
[330] | 73 | echo "href='alkisrelationen.php?gkz=".$gkz."&gmlid=".$gml."&otyp=".$typ."&tabelle=".$tabelle."'>"; |
---|
[315] | 74 | echo "<img src='ico/Beziehung_link.ico' width='16' height='16' alt=''>".$kurzid."</a>"; |
---|
| 75 | return 0; |
---|
| 76 | } |
---|
| 77 | |
---|
| 78 | function kurz_namnr($lang) { |
---|
[330] | 79 | // Namensnummer kÌrzen. Nicht benötigte Stufen der Dezimalklassifikation abschneiden |
---|
[315] | 80 | $kurz=str_replace(".00","",$lang); // leere Stufen (nur am Ende) |
---|
| 81 | $kurz=str_replace("0000","",$kurz); // ganz leer (am Anfang) |
---|
| 82 | $kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang |
---|
| 83 | $kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe |
---|
| 84 | return $kurz; |
---|
| 85 | } |
---|
| 86 | |
---|
| 87 | function bnw_fsdaten($con, $lfdnr, $gml_bs, $ba, $anteil, $bvnraus) { |
---|
| 88 | /* Bestandsnachweis - Flurstuecksdaten |
---|
| 89 | Die Tabellenzeilen mit den Flurstuecksdaten zu einer Buchungsstelle im Bestandsnachweis ausgeben. |
---|
| 90 | Die Funktion wird je einmal aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall). |
---|
| 91 | 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; |
---|
[330] | 95 | |
---|
[315] | 96 | // F L U R S T U E C K |
---|
[330] | 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) "; |
---|
[315] | 99 | $sql.="LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; |
---|
[330] | 100 | $sql.="WHERE s.gml_id= $1 ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; |
---|
[315] | 101 | |
---|
| 102 | $v = array($gml_bs); |
---|
| 103 | $resf = pg_prepare("", $sql); |
---|
| 104 | $resf = pg_execute("", $v); |
---|
| 105 | |
---|
| 106 | if (!$resf) {echo "<p class='err'>Fehler bei Flurstück</p>\n";} |
---|
| 107 | |
---|
| 108 | if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben |
---|
| 109 | $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); |
---|
| 110 | } |
---|
| 111 | $altlfdnr=""; |
---|
| 112 | $j=0; |
---|
| 113 | while($rowf = pg_fetch_array($resf)) { |
---|
| 114 | $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); |
---|
[330] | 119 | } |
---|
| 120 | */ |
---|
[315] | 121 | // ohne fuehrende Nullen? |
---|
| 122 | $fskenn=$rowf["zaehler"]; |
---|
| 123 | if ($rowf["nenner"] != "") { // Bruchnummer |
---|
| 124 | $fskenn.="/".$rowf["nenner"]; |
---|
| 125 | } |
---|
| 126 | |
---|
| 127 | $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; |
---|
| 128 | |
---|
| 129 | echo "\n<tr>"; // eine Zeile je Flurstueck |
---|
| 130 | // Sp. 1-3 der Tab. aus Buchungsstelle, nicht aus FS |
---|
| 131 | if($lfdnr == $altlfdnr) { // gleiches Grundstueck |
---|
| 132 | echo "\n\t<td> </td>"; |
---|
| 133 | echo "\n\t<td> </td>"; |
---|
| 134 | echo "\n\t<td> </td>"; |
---|
| 135 | } else { |
---|
| 136 | echo "\n\t<td>"; |
---|
| 137 | echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke |
---|
| 138 | echo "<span class='wichtig'>".$bvnr."</span>"; // BVNR |
---|
[330] | 139 | if ($idanzeige) {linkgml($gkz, $gml_bs, "Buchungsstelle", "ax_buchungsstelle");} |
---|
[315] | 140 | echo "</td>"; |
---|
| 141 | |
---|
| 142 | echo "\n\t<td>"; // Buchungsart |
---|
| 143 | // if ($showkey) {echo "<span class='key'>".$???."</span> ";} // Schluessel |
---|
| 144 | echo $ba; // entschluesselt |
---|
| 145 | echo "</td>"; |
---|
| 146 | echo "\n\t<td> </td>"; // Anteil |
---|
| 147 | $altlfdnr=$lfdnr; |
---|
| 148 | } |
---|
| 149 | //Sp. 4-7 aus Flurstueck |
---|
| 150 | echo "\n\t<td>"; |
---|
| 151 | if ($showkey) { |
---|
| 152 | echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> "; |
---|
| 153 | } |
---|
| 154 | echo $rowf["bezeichnung"]."</td>"; |
---|
| 155 | echo "\n\t<td>".$flur."</td>"; |
---|
| 156 | echo "\n\t<td><span class='wichtig'>".$fskenn."</span>"; |
---|
[330] | 157 | if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück", "ax_flurstueck");} |
---|
[315] | 158 | echo "</td>"; |
---|
| 159 | echo "\n\t<td class='fla'>".$flae."</td>"; |
---|
| 160 | |
---|
| 161 | echo "\n\t<td><p class='nwlink noprint'>"; |
---|
| 162 | echo "<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; |
---|
| 163 | if ($idanzeige) {echo "&id=j";} |
---|
| 164 | if ($showkey) {echo "&showkey=j";} |
---|
| 165 | echo "' title='Flurstücksnachweis'>Flurstück "; |
---|
| 166 | echo "<img src='ico/Flurstueck_Link.ico' width='16' height='16' alt=''>"; |
---|
| 167 | echo "</a>"; |
---|
| 168 | echo "</p></td>"; |
---|
| 169 | echo "\n</tr>"; |
---|
| 170 | |
---|
| 171 | $j++; |
---|
| 172 | } // Ende Flurstueck |
---|
| 173 | pg_free_result($resf); |
---|
| 174 | return $j; |
---|
| 175 | } |
---|
| 176 | |
---|
| 177 | function eigentuemer($con, $gmlid, $mitadresse, $lnkclass) { |
---|
| 178 | // Tabelle mit Eigentuemerdaten zu einem Grundbuchblatt ausgeben |
---|
| 179 | // Sp.1 = Namennummer, Sp. 2 = Name / Adresse, Sp. 3 = Link |
---|
| 180 | // Parameter: |
---|
[330] | 181 | // $gmlid = ID GB-Blattes |
---|
| 182 | // $mitadresse = Option (true/false) ob die Adresszeile ausgegeben werden soll |
---|
[315] | 183 | // Return = Anzahl Namensnummern |
---|
| 184 | |
---|
| 185 | // Schleife 1: N a m e n s n u m m e r |
---|
[330] | 186 | // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt |
---|
[129] | 187 | global $debug, $gkz, $idanzeige, $showkey; |
---|
[123] | 188 | |
---|
[129] | 189 | // Link ÃŒber Java-Class? (Ja in alkisinlayausk.php, sonst normal) |
---|
| 190 | if ($lnkclass == "") { |
---|
| 191 | $lnkvor = ""; |
---|
| 192 | $lnknach = ""; |
---|
| 193 | } else { |
---|
| 194 | $lnkvor = "javascript:".$lnkclass."(\""; |
---|
| 195 | $lnknach = "\")"; |
---|
| 196 | } // Beispiel-Link href='javascript:imFenster(\"alkislage.php?gkz= ... ."\")'>xxx "; |
---|
[315] | 197 | |
---|
[330] | 198 | $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass "; |
---|
| 199 | $sqln.="FROM ax_namensnummer n WHERE n.istbestandteilvon= $1 ORDER BY n.laufendenummernachdin1421;"; |
---|
[315] | 200 | |
---|
| 201 | $v = array($gmlid); |
---|
| 202 | $resn = pg_prepare("", $sqln); |
---|
| 203 | $resn = pg_execute("", $v); |
---|
| 204 | |
---|
[123] | 205 | if (!$resn) { |
---|
| 206 | echo "<p class='err'>Fehler bei Eigentümer</p>\n"; |
---|
| 207 | if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";} |
---|
[315] | 208 | } |
---|
| 209 | |
---|
| 210 | echo "\n\n<table class='eig'>"; |
---|
| 211 | $n=0; // Z.NamNum. |
---|
| 212 | |
---|
| 213 | while($rown = pg_fetch_array($resn)) { |
---|
| 214 | $gmlnn=$rown["gml_id"]; |
---|
| 215 | echo "\n<tr>"; |
---|
| 216 | echo "\n\t<td class='nanu' title='Namens-Nummer'>\n\t\t<p>"; // Sp. 1 |
---|
| 217 | // VOR die Tabelle: "EigentÃŒmer" |
---|
| 218 | $namnum=kurz_namnr($rown["lfd"]); |
---|
| 219 | echo $namnum." "; |
---|
[330] | 220 | if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer", "ax_namensnummer");} |
---|
[315] | 221 | echo "</p>\n\t</td>"; |
---|
| 222 | |
---|
| 223 | echo "\n\t<td>"; // Sp. 2 |
---|
| 224 | $rechtsg=$rown["adr"]; |
---|
| 225 | if ($rechtsg != "" ) { |
---|
| 226 | if ($rechtsg == 9999) { // sonstiges |
---|
| 227 | echo "\n\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; |
---|
| 228 | } else { |
---|
| 229 | echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>"; |
---|
| 230 | } |
---|
| 231 | } |
---|
| 232 | //if ($rown["anlass"] > 0 ) {echo "<p>Anlass=".$rown["anlass"]."</p>";} // TEST: |
---|
| 233 | |
---|
| 234 | // Schleife Ebene 2: andere Namensnummern |
---|
| 235 | // Beziehung ax_namensnummer >bestehtAusRechtsverhaeltnissenZu> ax_namensnummer |
---|
| 236 | |
---|
| 237 | // Die Relation 'Namensnummer' besteht aus RechtsverhÀltnissen zu 'Namensnummer' sagt aus, |
---|
| 238 | // dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. |
---|
| 239 | // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, |
---|
| 240 | // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. |
---|
| 241 | |
---|
| 242 | // Die Relation 'Namensnummer' hat VorgÀnger 'Namensnummer' gibt Auskunft darÌber, |
---|
| 243 | // aus welchen Namensnummern die aktuelle entstanden ist. |
---|
| 244 | |
---|
| 245 | // Schleife 2: P e r s o n |
---|
| 246 | // Beziehung: ax_person <benennt< ax_namensnummer |
---|
| 247 | $sqlp ="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "; |
---|
[330] | 248 | $sqlp.="FROM ax_person p JOIN ax_namensnummer nn ON nn.benennt=substring(p.gml_id,1,16) WHERE nn.gml_id= $1 AND p.endet IS NULL AND nn.endet IS NULL;"; |
---|
| 249 | // Timestamp an ID abschneiden! |
---|
[315] | 250 | |
---|
| 251 | $v = array($gmlnn); |
---|
| 252 | $resp = pg_prepare("", $sqlp); |
---|
| 253 | $resp = pg_execute("", $v); |
---|
| 254 | |
---|
[123] | 255 | if (!$resp) { |
---|
| 256 | echo "\n\t<p class='err'>Fehler bei Person</p>\n"; |
---|
| 257 | if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqlp."<br>$1=gml= '".$gmlnn."'</p>";} |
---|
| 258 | } |
---|
| 259 | |
---|
[315] | 260 | $i=0; // cnt Person |
---|
[330] | 261 | while($rowp = pg_fetch_array($resp)) { // ++ Schleife? nn >benennt> Person ist kein Array! |
---|
[315] | 262 | $diePerson=""; |
---|
| 263 | if ($rowp["akademischergrad"] <> "") {$diePerson=$rowp["akademischergrad"]." ";} |
---|
| 264 | $diePerson.=$rowp["nachnameoderfirma"]; |
---|
| 265 | if ($rowp["vorname"] <> "") {$diePerson.=", ".$rowp["vorname"];} |
---|
| 266 | if ($rowp["namensbestandteil"] <> "") {$diePerson.=". ".$rowp["namensbestandteil"];} |
---|
| 267 | if ($rowp["geburtsdatum"] <> "") {$diePerson.=", geb. ".$rowp["geburtsdatum"];} |
---|
| 268 | if ($rowp["geburtsname"] <> "") {$diePerson.=", geb. ".$rowp["geburtsname"];} |
---|
| 269 | $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute |
---|
| 270 | |
---|
| 271 | // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0 |
---|
| 272 | if ($i > 0) { |
---|
| 273 | echo "\n<tr>\n\t<td> </td>\n\t<td>"; |
---|
| 274 | } |
---|
| 275 | // Spalte 2 = Angaben |
---|
| 276 | $eiartkey=$rown["eigentuemerart"]; |
---|
| 277 | $eiart=eigentuemerart($eiartkey); |
---|
| 278 | echo "\n\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t</td>"; |
---|
| 279 | |
---|
| 280 | // Spalte 3 = Link |
---|
| 281 | echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; |
---|
[330] | 282 | if ($idanzeige) {linkgml($gkz, $rowp["gml_id"], "Person", "ax_person"); echo " ";} |
---|
| 283 | if ($showkey AND $eiartkey != '') { // oft leer |
---|
| 284 | echo "<span class='key'>(".$eiartkey.")</span> "; |
---|
| 285 | } |
---|
[315] | 286 | echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowp[0]; |
---|
| 287 | if ($idanzeige) {echo "&id=j";} |
---|
| 288 | if ($showkey) {echo "&showkey=j";} |
---|
| 289 | echo $lnknach."' title='vollständiger Name und Adresse eines Eigentümers'>".$eiart; |
---|
| 290 | echo " <img src='ico/Eigentuemer.ico' width='16' height='16' alt=''></a>\n\t\t</p>"; |
---|
| 291 | echo "\n\t</td>\n</tr>"; |
---|
| 292 | |
---|
| 293 | if ($mitadresse) { |
---|
| 294 | // Schleife 3: A d r e s s e (OPTIONAL) |
---|
| 295 | $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland "; |
---|
[330] | 296 | $sqla.="FROM ax_anschrift a JOIN ax_person p ON substring(a.gml_id,1,16) = ANY(p.hat) WHERE p.gml_id= $1 ;"; // ORDER? |
---|
[315] | 297 | $gmlp=$rowp["gml_id"]; // Person |
---|
| 298 | $v = array($gmlp); |
---|
| 299 | $resa = pg_prepare("", $sqla); |
---|
| 300 | $resa = pg_execute("", $v); |
---|
| 301 | if (!$resa) { |
---|
[123] | 302 | echo "\n\t<p class='err'>Fehler bei Adressen</p>\n"; |
---|
[315] | 303 | if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqla."<br>$1=gml= '".$gmlp."'</p>";} |
---|
[123] | 304 | } |
---|
[315] | 305 | $j=0; |
---|
| 306 | while($rowa = pg_fetch_array($resa)) { |
---|
| 307 | $gmla=$rowa["gml_id"]; |
---|
| 308 | $plz=$rowa["plz"]; // integer |
---|
| 309 | if($plz == 0) { |
---|
| 310 | $plz=""; |
---|
| 311 | } else { |
---|
| 312 | $plz=str_pad($plz, 5, "0", STR_PAD_LEFT); |
---|
| 313 | } |
---|
| 314 | $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); |
---|
| 315 | $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); |
---|
| 316 | $hsnr=$rowa["hausnummer"]; |
---|
| 317 | $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); |
---|
| 318 | |
---|
| 319 | echo "\n<tr>\n\t<td> </td>"; // Spalte 1 |
---|
| 320 | echo "\n\t<td><p class='gadr'>"; //Spalte 2 |
---|
| 321 | if ($str.$hsnr != "") { |
---|
| 322 | echo $str." ".$hsnr."<br>"; |
---|
| 323 | } |
---|
| 324 | if ($plz.$ort != "") { |
---|
| 325 | echo $plz." ".$ort; |
---|
| 326 | } |
---|
| 327 | if ($land != "" and $land != "DEUTSCHLAND") { |
---|
| 328 | echo ", ".$land; |
---|
| 329 | } |
---|
| 330 | echo "</p></td>"; |
---|
| 331 | echo "\n\t<td>"; // Spalte 3 |
---|
| 332 | if ($idanzeige) { |
---|
| 333 | echo "<p class='nwlink noprint'>"; |
---|
[330] | 334 | linkgml($gkz, $gmla, "Adresse", "ax_adresse"); |
---|
[315] | 335 | echo "</p>"; |
---|
| 336 | } else { |
---|
| 337 | echo " "; |
---|
| 338 | } |
---|
| 339 | echo "</td>\n</tr>"; |
---|
| 340 | $j++; |
---|
| 341 | } |
---|
| 342 | pg_free_result($resa); |
---|
| 343 | } // End if |
---|
[330] | 344 | // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" |
---|
[315] | 345 | |
---|
| 346 | $i++; // cnt Person |
---|
| 347 | // als eigene Tab-Zeile? |
---|
| 348 | // 'Anteil' ist der Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (GrundstÃŒck oder Recht). |
---|
| 349 | if ($rown["zaehler"] != "") { |
---|
| 350 | echo "\n<tr>\n\t<td> </td>"; // Sp. 1 |
---|
| 351 | echo "\n\t<td><p class='avh' title='Anteil'>".$rown["zaehler"]."/".$rown["nenner"]." Anteil</p></td>"; |
---|
| 352 | echo "\n\t<td> </td>\n</tr>"; // Sp. 3 |
---|
| 353 | } |
---|
| 354 | } // End Loop Person |
---|
[330] | 355 | if ($i == 0) { // kommt vor hinter Zeile Erbengemeinschaft, ist dann kein Fehler |
---|
[123] | 356 | if ($debug > 0) { |
---|
[129] | 357 | echo "\n<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>"; |
---|
| 358 | if ($rechtsg != 9999) { |
---|
[330] | 359 | echo "\n<p class='dbg'>Fehler: Keine Person zur Namensnummer ".$namnum."</p>"; |
---|
[129] | 360 | } |
---|
[330] | 361 | if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlp."<br>$1 = gml(NamNum) = '".$gmlnn."'</p>";} |
---|
[315] | 362 | } |
---|
| 363 | echo "</td>\n\t<td> </td>\n<tr>"; |
---|
| 364 | } |
---|
| 365 | $n++; // cnt NamNum |
---|
[41] | 366 | } // End Loop NamNum |
---|
[315] | 367 | echo "\n</table>\n"; |
---|
[123] | 368 | if ($n == 0) { |
---|
[330] | 369 | // kommt vor bei "Fiktives Blatt", kein Fehler |
---|
[132] | 370 | if ($debug > 0) {echo "<p class='dbg'>keine Namensnummern zum Blatt</p>";} |
---|
[330] | 371 | |
---|
[132] | 372 | if ($debug > 2) {echo "<p class='dbg'>Namensnummern: SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";} |
---|
[315] | 373 | } |
---|
| 374 | pg_free_result($resn); |
---|
| 375 | return $n; |
---|
| 376 | } // End Function eigentuemer |
---|
[306] | 377 | |
---|
[315] | 378 | // ** Functions zum E n t s c h l u e s s e l n ** |
---|
| 379 | |
---|
| 380 | // Entschluesslung ax_person.anrede |
---|
| 381 | function anrede($key) { |
---|
| 382 | switch ($key) { |
---|
| 383 | case 1000: $wert = "Frau"; break; |
---|
| 384 | case 2000: $wert = "Herr"; break; |
---|
| 385 | case 3000: $wert = "Firma"; break; |
---|
| 386 | default: $wert = ""; break; |
---|
| 387 | } |
---|
| 388 | return $wert; |
---|
| 389 | } |
---|
| 390 | |
---|
| 391 | // Entschluesslung AX_Namensnummer.artDerRechtsgemeinschaft |
---|
| 392 | function rechtsgemeinschaft($key) { |
---|
| 393 | switch ($key) { |
---|
| 394 | case 1000: $wert = "Erbengemeinschaft"; break; |
---|
| 395 | case 2000: $wert = "GÃŒtergemeinschaft"; break; |
---|
| 396 | case 3000: $wert = "BGB-Gesellschaft"; break; |
---|
| 397 | case 9999: $wert = "Sonstiges"; break; // dann: beschriebDerRechtsgemeinschaft |
---|
| 398 | default: $wert = ""; break; |
---|
| 399 | } |
---|
| 400 | return $wert; |
---|
| 401 | } |
---|
| 402 | |
---|
| 403 | // Entschluesslung AX_Namensnummer.eigentuemerart |
---|
[306] | 404 | function eigentuemerart($key) { |
---|
| 405 | // Die hÀufigsten Werte direkt aus den Programmcode liefern, ggf. angepasst. |
---|
| 406 | // FÃŒr seltene Werte in der Datenbank nachschlagen. |
---|
[315] | 407 | // SchlÃŒsseltabelle dazu ist vorhanden seit 2014-01-22. |
---|
[306] | 408 | // Hier Verwendung fÃŒr Text zum Link. |
---|
[315] | 409 | // FÃŒr korrekte Wiedergabe der amtlichen Werte einen Join auf Tabelle verwenden statt dieser Function. |
---|
| 410 | global $debug; |
---|
| 411 | switch ($key) { |
---|
| 412 | case 1000: $wert = "Natürliche Person"; break; // singular fuer Link-Text |
---|
[306] | 413 | case 2000: $wert = "Juristische Person"; break; // singl. |
---|
[315] | 414 | case 3000: $wert = "Körperschaft"; break; // singl. |
---|
[306] | 415 | case 4000: $wert = "Kirchliches Eigentum"; break; |
---|
| 416 | case 4100: $wert = "Evangelische Kirche"; break; |
---|
| 417 | case 4200: $wert = "Katholische Kirche"; break; |
---|
| 418 | case 5100: $wert = "Bundesrepublik Deutschland"; break; |
---|
| 419 | case 5400: $wert = "Kreis"; break; |
---|
| 420 | case 5500: $wert = "Gemeinde"; break; |
---|
[315] | 421 | case 5920: $wert = "Land"; break; // "Eigenes Bundesland" |
---|
| 422 | case "": $wert = "Person"; break; // falls (noch) nicht gefuellt |
---|
[306] | 423 | default: // Datenbank-Abfrage |
---|
[315] | 424 | $sql="SELECT bezeichner FROM ax_namensnummer_eigentuemerart WHERE wert= $1 ;"; |
---|
| 425 | $v=array($key); |
---|
| 426 | $res=pg_prepare("", $sql); |
---|
| 427 | $res=pg_execute("", $v); |
---|
[306] | 428 | if ($res) { |
---|
| 429 | $row=pg_fetch_array($res); |
---|
[315] | 430 | $wert=htmlentities($row["bezeichner"], ENT_QUOTES, "UTF-8"); |
---|
| 431 | if ($wert == "") {$wert="** Eigentümerart '".$key."' nicht gefunden **";} |
---|
[306] | 432 | } else { |
---|
[315] | 433 | echo "\n\t<p class='err'>Fehler bei DB-Zugriff auf EigentÃŒmerart.</p>\n"; |
---|
| 434 | $wert="** Unbekannte Eigentümerart '".$key."' **"; |
---|
[306] | 435 | } |
---|
[315] | 436 | pg_free_result($res); |
---|
| 437 | break; |
---|
| 438 | } |
---|
| 439 | return $wert; |
---|
[306] | 440 | } |
---|
| 441 | |
---|
[315] | 442 | // Entschluesslung ax_buchungsblatt.blattart |
---|
| 443 | function blattart($key) { |
---|
| 444 | switch ($key) { |
---|
| 445 | case 1000: $wert = "Grundbuchblatt"; break; |
---|
| 446 | // Ein Grundbuchblatt ist ein Buchungsblatt, das die Buchung im Grundbuch enthÀlt. |
---|
| 447 | case 2000: $wert = "Katasterblatt"; break; |
---|
| 448 | // Ein Katasterblatt ist ein Buchungsblatt, das die Buchung im Liegenschaftskataster enthÀlt. |
---|
| 449 | case 3000: $wert = "Pseudoblatt"; break; |
---|
| 450 | // Ein Pseudoblatt ist ein Buchungsblatt, das die Buchung, die bereits vor Eintrag im Grundbuch Rechtskraft erlangt hat, enthÀlt |
---|
| 451 | // (z.B. Ãbernahme von Flurbereinigungsverfahren, Umlegungsverfahren). |
---|
| 452 | case 5000: $wert = "Fiktives Blatt"; break; |
---|
| 453 | // Das fiktive Blatt enthÀlt die aufgeteilten GrundstÌcke und Rechte als Ganzes. |
---|
| 454 | // Es bildet um die Miteigentumsanteile eine fachliche Klammer. |
---|
| 455 | default: $wert = "** Unbekannter Wert '".$key."'"; break; |
---|
| 456 | } |
---|
| 457 | return $wert; |
---|
| 458 | } |
---|
| 459 | // Entschluesslung ax_dienststelle.stellenart |
---|
| 460 | function dienststellenart($key) { |
---|
| 461 | switch ($key) { |
---|
| 462 | case 1000: $wert = "Grundbuchamt"; break; |
---|
| 463 | case 1100: $wert = "Katasteramt"; break; |
---|
| 464 | case 1200: $wert = "Finanzamt"; break; |
---|
| 465 | case 1300: $wert = "Flurbereinigungsbehörde"; break; |
---|
| 466 | case 1400: $wert = "Forstamt"; break; |
---|
| 467 | case 1500: $wert = "Wasserwirtschaftsamt"; break; |
---|
| 468 | case 1600: $wert = "StraÃenbauamt"; break; |
---|
| 469 | case 1700: $wert = "Gemeindeamt"; break; |
---|
| 470 | case 1900: $wert = "Kreis- oder Stadtverwaltung"; break; |
---|
| 471 | case 2000: $wert = "Wasser- und Bodenverband"; break; |
---|
| 472 | case 2100: $wert = "Umlegungsstelle"; break; |
---|
| 473 | case 2200: $wert = "Landesvermessungsverwaltung"; break; |
---|
| 474 | case 2300: $wert = "ÖbVI"; break; |
---|
| 475 | case 2400: $wert = "Bundeseisenbahnvermögen"; break; |
---|
| 476 | case 2500: $wert = "Landwirtschaftskammer"; break; |
---|
| 477 | default: $wert = "** Unbekannter Wert '".$key."'"; break; |
---|
| 478 | } |
---|
| 479 | return $wert; |
---|
| 480 | } |
---|
[26] | 481 | ?> |
---|