Changeset 303 for trunk/info/info/alkis


Ignore:
Timestamp:
01/20/14 14:51:46 (10 years ago)
Author:
frank.jaeger
Message:
 
File:
1 edited

Legend:

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

    r302 r303  
    11<?php 
    22/*      Modul alkisexport.php 
    3         CSV-Export von ALKIS-Daten zu einem Flurstueck, Grundbuch oder EigentÃŒmer. 
    4         Es wird eine GML-ID ÃŒbergeben. 
     3        CSV-Export von ALKIS-Daten zu einem Flurstueck, Grundbuch oder Eigentümer. 
     4        Es wird eine GML-ID übergeben. 
    55        Es wird ein gespeicherter View verwendet, der nach der gml_id gefiltert wird.  
    66        Der View verkettet Flurstueck - Buchungsstelle - Grundbuch - Eigentuemer 
    7         Die Lagebezeichnung des FlurstÃŒcks wird in ein Feld komprimiert. 
     7        Die Lagebezeichnung des Flurstücks wird in ein Feld komprimiert. 
    88        Parameter: gkz=mandant&gmlid=DE...&tabtyp=flurstueck/grundbuch/person 
    99 
    1010        2014-01-17 krz f.j. 
     11        2014-01-20 weitere Spalten und verbesserte Formatierung 
    1112*/ 
    1213 
    1314function lage_zum_fs($gmlid) { 
    14         // Zu einem FlurstÃŒck die Lagebezeichnungen (mit Hausnummer) so aufbereiten,  
     15        // Zu einem Flurstück die Lagebezeichnungen (mit Hausnummer) so aufbereiten,  
    1516        // dass ggf. mehrere Lagebezeichnungen in eine Zelle der Tabelle passen. 
    1617        $sql ="SELECT DISTINCT s.bezeichnung, l.hausnummer FROM alkis_beziehungen v "; 
     
    4748header('Content-Disposition: attachment; filename="alkis_'.$tabtyp.'_'.$gmlid.'.csv"'); 
    4849require_once("alkis_conf_location.php"); 
     50include("alkisfkt.php"); 
    4951 
    5052// CSV-Ausgabe: Kopfzeile mit Feldnamen 
    51 echo "FS-Kennzeichen;Gemarkung;Flur;Flurstueck;Flaeche;Adressen;GB-Bezirk;GB-Blatt;LfdNrName;Anteil_am_FS;Buchungsart;Namensnummer;AnteilDerPerson;Beschreibung;Name;Vorname;GebDatum"; 
     53echo "FS-Kennzeichen;GmkgNr;Gemarkung;Flur;Flurstueck;Flaeche;Adressen;GB-BezNr;GB-Bezirk;GB-Blatt;BVNR;Anteil_am_FS;Buchungsart;Namensnummer;AnteilDerPerson;RechtsGemeinschaft;Person;GebDatum;Anschrift"; 
    5254 
    5355// Datenbank-Verbindung 
     
    5658        exit("Fehler beim Verbinden der DB"); 
    5759} 
    58 pg_set_client_encoding($con, LATIN1); // FÃŒr Excel kein UTF8 ausgeben 
     60pg_set_client_encoding($con, LATIN1); // Für Excel kein UTF8 ausgeben 
    5961 
    6062// Der Parameter "Tabellentyp" bestimmt den Namen des Filter-Feldes aus dem View 
     
    8284        // Flurstueck 
    8385        $fsgml=$row["fsgml"]; 
    84         $fs_kennz=$row["fs_kennz"]; 
     86        $fs_kennz=$row["fs_kennz"]; // Rechts Trim "_" ? 
    8587        $gmkgnr=$row["gemarkungsnummer"]; 
    86 //      $gemkname=$row["bezeichnung"];  
     88        $gemkname=$row["gemarkung"];  
    8789        $flurnummer=$row["flurnummer"]; 
    8890        $flstnummer=$row["zaehler"]; 
     
    9294 
    9395        // Grundbuch (Blatt) 
    94         $gb_bezirk=$row["gb_bezirk"]; 
     96        $gb_bezirk=$row["gb_bezirk"]; // Nummer des Bezirks 
     97    $gb_beznam=$row["beznam"];    // Name des Bezirks 
    9598        $gb_blatt=$row["gb_blatt"]; 
    9699 
    97100        // Buchungsstelle (Grundstueck) 
    98         $bu_lfd=$row["bu_lfd"]; 
    99         $bu_ant=$row["bu_ant"]; 
    100         $bu_art=$row["bu_art"]; 
    101          
    102         //      Namensnummer 
    103         $nam_lfd=$row["nam_lfd"]; 
    104         $nam_ant=$row["nam_ant"]; 
    105         $nam_bes=$row["nam_bes"]; 
    106          
     101        $bu_lfd=$row["bu_lfd"]; // BVNR 
     102        $bu_ant=$row["bu_ant"]; // '=zaehler/nenner' oder NULL wenn zaehler oder nenner NULL sind 
     103        $bu_key=$row["buchungsart"]; // Sxhlüssel 
     104        $bu_art=$row["bu_art"]; // entschlüsselt (Umlaute in ANSI!) 
     105 
     106        // Für Berechnungen in der exportierten Tabelle wäre es nützlich, wenn "voller Anteil" als Faktor 1  
     107        // statt eines leeren Feldes ausgegeben würde  - Ausnahmen? 
     108        if(($bu_ant == '') and ($bu_key == 1100)) { // Grundstück 
     109                $bu_ant = '1'; 
     110        } 
     111 
     112        // Namensnummer 
     113        $nam_lfd="'".kurz_namnr($row["nam_lfd"])."'"; // In Hochkomma. Wird sonst als Datum dargestellt. 
     114        $nam_ant=$row["nam_ant"]; // Wann darf als Anteil "1" statt leer gesetzt werden? 
     115        $nam_adr=$row["nam_adr"]; // Art der Rechtsgemeischaft (Schlüssel) 
     116        $nam_bes=$row["nam_bes"]; // Beschrieb der Rechtsgemeinschaft 
     117 
     118        // Rechtsgemeinschaft (in einer eigene Zeile ohne Namen) 
     119        if ($nam_adr == 9999) { // sonstiges 
     120                $rechtsg=$nam_bes; // Beschreibung verwenden 
     121        } else { 
     122                $rechtsg=rechtsgemeinschaft($nam_adr); // Entschlüsseln 
     123        } 
     124 
    107125        // Person 
    108         $naname=$row["nachnameoderfirma"]; 
    109         $vorname=$row["vorname"]; 
     126        $nana=$row["nachnameoderfirma"]; 
     127        if ($nana == "") { 
     128                $name=""; 
     129        } else { 
     130                $name=anrede($row["anrede"]); 
     131                $namteil=$row["namensbestandteil"]; 
     132                if ($namteil != "") { // von und zu 
     133                        $name.=" ".$namteil; 
     134                }  
     135                $name.=" ".$nana; 
     136                $vnam=$row["vorname"]; 
     137                if ($vnam != "") { // keine Firma 
     138                        $name.=", ".$vnam; 
     139                } 
     140        } 
    110141        $gebdat=$row["geburtsdatum"]; 
    111142 
    112         // Adresse der Person 
    113         //      -- fehlt noch 
     143        // Adresse der Person (Eigentuemer)) 
     144        $ort=$row["ort"]; 
     145        if ($ort == "") { 
     146                $adresse=""; 
     147        } else {  
     148                $adresse=$row["strasse"]." ".$row["hausnummer"].", ".$row["plz"]." ".$ort; 
     149                $land=$row["land"]; // nur andere Länder anzeigen 
     150                if (($land != "DEUTSCHLAND") and ($land != "")) { 
     151                        $adresse.=" (".$land.")"; 
     152                } 
     153        } 
    114154 
    115         // Adressen zum FS 
    116         if($fsgml != $fsalt) { // bei geÀndertem Kennz. 
     155        // Adressen (Lage) zum FS 
     156        if($fsgml != $fsalt) { // nur bei geändertem Kennz. 
    117157                $lage=lage_zum_fs($fsgml); // die Lage neu ermitteln 
    118158                $fsalt=$fsgml; 
    119159        } 
    120160 
    121         // Den Ausgabe-Satz montieren aus FlurstÃŒcks-, Grundbuch- und Namens-Teil 
    122         $fsteil=$fs_kennz.";".$gmkgnr.";".$flurnummer.";".$flstnummer.";".$fs_flae.";".$lage.";"; 
    123         $gbteil=$gb_bezirk.";".$gb_blatt.";".$bu_lfd.";".$bu_ant.";".$bu_art.";"; 
    124         $namteil=$nam_lfd.";".$nam_ant.";".$nam_bes.";".$naname.";".$vorname.";".$gebdat; 
     161        // Den Ausgabe-Satz montieren aus Flurstücks-, Grundbuch- und Namens-Teil 
     162        $fsteil=$fs_kennz.";".$gmkgnr.";".$gemkname.";".$flurnummer.";".$flstnummer.";".$fs_flae.";".$lage.";"; 
     163        $gbteil=$gb_bezirk.";".$gb_beznam.";".$gb_blatt.";".$bu_lfd.";".$bu_ant.";".$bu_art.";"; 
     164        $namteil=$nam_lfd.";".$nam_ant.";".$rechtsg.";".$name.";".$gebdat.";".$adresse; 
    125165 
    126166        // Ausgabe in CSV-Datei 
Note: See TracChangeset for help on using the changeset viewer.