Ignore:
Timestamp:
12/08/12 19:14:37 (11 years ago)
Author:
j.e.fischer
Message:

Allgemeinde Änderungen (Schemaänderungen gesondert im Anschluß):

2012-06-24

Festen Pfad zu PostNAS entfernt: ordner_konvertieren.sh,
datenbank_anlegen.sh, konv_batch.sh, konvertierung_kommandos_beispiele.txt

alkis-trigger-hist.sql und alkis-trigger-kill.sql:

ergänzt (setzt den jeweiligen delete-Trigger)

alkis-trigger.sql in svn:ignore aufgenommen


datenbank_anlegen.sh:

Ggf. Symlink alkis-trigger.sql auf alkis-trigger-kill.sql anlegen

konv_batch.sh:

  • GDAL in PATH aufgenommen und ogr2ogr in ohne Pfad aufgerufen
  • Löschen der historischen Daten wird ausgeführt, wenn Symlink auf alkis-trigger-kill.sql zeigt.

alkis-functions.sql:

Stored Procedures aus alkis_PostNAS_0.7_schema.sql ausgelagert

CRLF => LF:

pp_laden.sql, ordner_konvertieren.sh, datenbank_anlegen.sh, konv_batch.sh

Schemaanpassungen:

2012-12-03

ap_darstellung.advstandardmodell: varchar => varchar[]

2012-11-21

ax_besonderegebaeudelinie kann LINESTRING oder MULTILINESTRING sein (=>GEOMETRY)

2012-11-20

Koordinatensystem konfigurierbar anlegen (Variable :alkis_epsg)

2012-11-20

  • Ausführende Stellen ergänzt
    • Felder zu ax_historischesflurstueckalb ergänzt:
    • buchungsblattnummermitbuchstabenerweiterung/laufendenummerderbuchungsstelle zu Array
    • laufendenummerderfortfuehrung/fortfuehrungsart ergänzt
    • Indizes gesetzt
  • Felder zu ax_historischesflurstueck ergänzt:
    • buchungsblattnummermitbuchstabenerweiterung/buchungsblattkennzeichen zu Array
  • Feld relativehoehe zu ax_grenzpunkt / ax_aufnahmepunkt / ax_sicherungspunkt /
  • Tabelle ax_sonstigervermessungspunkt ergänzt
  • Koordinatenstatus zu ax_punktortag / ax_punktortau / ax_punktortta ergänzt
  • Felder zu ax_anschrift ergänzt: postleitzahlpostfach / postfach / ortsteil / weitereAdressen
  • Feld objekthoehe zu ax_bauwerkoderanlagefuerindustrieundgewerbe ergänzt
  • Feld sonstigeeigenschaft (Array) zu ax_besondererbauwerkspunkt ergänzt
  • Feld gemeindeflaeche zu ax_kommunalesgebiet hinzugefügt
  • Triggerausgabe korrigiert


2012-10-17

identifier bei ax_boeschungkliff und ax_boeschungsflaeche ergänzt

2012-09-09

  • ax_flurstueck/ax_historischesflurstueckalb/ax_historischesflurstueck
    • rechtsbehelfsverfahren / zweifelhafterFlurstuecksnachweis: integer => varchar default 'false'
  • ax_punktortag/ax_punktortau/ax_punktortta.kartendarstellung: integer => varchar
  • Neue Indizes:
    • auf endet in ap_ppo, ap_lpo, ap_darstellung, ap_pto, ax_punktortta,
    • ax_flurstueck auf:
      • land,gemarkungsnummer,flurnummer,zaehler,nenner
      • abweichenderrechtszustand
    • ax_buchungsblatt(land,bezirk,buchungsblattnummermitbuchstabenerweiterung)
    • ax_grenzpunkt(abmarkung_marke)
    • ap_pto(sn)
  • Indizes auf alkis_beziehungen / ax_historischesflurstueckalb / ax_grenzpunkt_abmm auf USING btree geändert
  • ap_lpo / ax_gebaeudeausgestaltung kann LINESTRING und MULTILINESTRING enthalten (=>GEOMETRY)

2012-06-24

  • Stored Procedures in alkis-funktions.sql ausgelagert
  • alkis_drop() aus Schema wird aufgerufen
  • Löschtrigger wird durch \i alkis-trigger.sql gesetzt (Symlink auf alkis-trigger-kill.sql oder alkis-trigger-hist.sql konfiguriert die Fortführungsoption)
  • Angleichung von ax_sicherungspunkt.beginnt, .identifier und .endet
  • Angleichung von ax_punktkennunguntergegangen.beginnt, .identifier und .endet
  • ax_vertretung und ax_verwaltungsgemeinschaft ergänzt
  • ax_besonderertopographischerpunkt.sonstigeeigenschaft varchar[] ergänzt
  • ax_grenzpunkt.besonderepunktnummer ergänzt
  • ax_gebaeude.weiteregebaeudefunktion => integer[]
  • ax_bauteil.dachform & anzahlderoberirdischengeschosse ergänzt
  • ax_besonderegebaeudelinie.beschaffenheit => integer[]
  • ap_lto.signaturnummer ergänzt
  • ax_gebaeude.name => name[]
  • ax_turm.zustand und name ergänzt
  • ax_bauwerkoderanlagefuerindustrieundgewerbe.name und zustand ergänzt
  • ax_vorratsbehaelterspeicherbauwerk.lagezurerdoberflaeche und name ergänzt
  • ax_transportanlage.produkt ergänzt
  • ax_bauwerkoderanlagefuersportfreizeitunderholung.name und sportart ergänzt
  • ax_historischesbauwerkoderhistorischeeinrichtung.name ergänzt
  • ax_einrichtunginoeffentlichenbereichen.kilometerangaben ergänzt
  • ax_bauwerkimverkehrsbereich.name und zustand ergänzt
  • ax_strassenverkehrsanlage.bezeichnung und name ergänzt
  • ax_wegpfadsteig.name ergänzt
  • ax_bahnverkehrsanlage.name ergänzt
  • ax_gleis.art, lagezuroberflaeche und name ergänzt
  • ax_bauwerkimgewaesserbereich.name und zustand ergänzt
  • ax_vegetationsmerkmal.zustand und name ergänzt
  • ax_gewaessermerkmal.name ergänzt
  • ax_untergeordnetesgewaesser.lagezurerdoberflaeche, name und hydrologischesmerkmal ergänzt
  • ap_darstellung.positionierungsregel ergänzt
  • ax_bodenschaetzung.sonstigeAngaben integer => integer[]
  • ax_grablochderbodenschaetzung.bedeutung integer => integer[]
  • ax_dammwalldeich.name ergänzt
  • ax_naturumweltoderbodenschutzrecht.name ergänzt
  • ax_gelaendekante.art ergänzt
  • ax_bauteil.advstandardmodel varchar => varchar[]
  • ax_gemarkung.advstandardmodel varchar => varchar[]
  • ax_buchungsstelle.advstandardmodel.zaehler/nenner => double precision
  • signaturnummer: integer => varchar
  • anlass: integer => varchar
  • ax_historischesflurstueckalb.buchungsblattkennzeichen: double precision => varchar
  • ax_verwaltung ergänzt
  • ax_kommunalesgebiet.schluesselgesamt: integer => varchar
Location:
trunk/data/konvert/postnas_0.7
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/data/konvert/postnas_0.7

    • Property svn:ignore set to
      alkis-trigger.sql
  • trunk/data/konvert/postnas_0.7/konv_batch.sh

    r183 r190  
    1 #!/bin/bash 
     1#!/bin/bash 
    22## ------------------------------------------------- 
    3 ## Konvertierung von ALKIS NAS-Format nach PosGIS - 
     3## Konvertierung von ALKIS NAS-Format nach PostGIS - 
    44## NAS-Daten in einem Ordner konvertieren          - 
    55## Batch-Teil, Aufruf mit geprueften Parametern    - 
     
    1313##           /temp/ 
    1414##   Auf der gleichen Ebene wie die Datenordner muss ein Ordner /temp/ existieren. 
    15 ##   Dort werden die NAS-Daten temporär ausgepackt. 
     15##   Dort werden die NAS-Daten temporaer ausgepackt. 
    1616##   Relativ zum mitgegebenen Parameter ist das: '../temp/' 
    1717##   Parallel laufende Konvertierungen zum gleichen Mandanten  
    18 ##   würden hier durcheinander geraten. Vermeiden! 
     18##   wuerden hier durcheinander geraten. Vermeiden! 
    1919## 
    2020## Stand:  
    2121##   2012-02-10 Umbennung nach 0.7 
    2222##   2012-02-17 Optimierung 
    23 ##   2012-02-28 Neuer Parameter 4 um Post-Prozessing zu unterdrücken 
    24 ##   2012-04-25 Durch GDAL Patch #5444 werden die Löschungen als Trigger auf Tabelle 'delete' verarbeitet 
     23##   2012-02-28 Neuer Parameter 4 um Post-Prozessing zu unterdruecken 
     24##   2012-04-25 Durch GDAL Patch #5444 werden die Loeschungen als Trigger auf Tabelle 'delete' verarbeitet 
    2525##   2012-05-18 Umzug neue GDI, GDAL-Trunk unter Pfad  
    26 ##   2012-10-30 Umgebungsvariable setzen, delete-Tabelle am Ende für Analyse gefüllt lassen. 
     26##   2012-06-04 SQL-Skripte in deren Verzeichnis ausfuehren (Voraussetzung fuer \i Includes) 
     27##   2012-10-30 Umgebungsvariable setzen, delete-Tabelle am Ende fuer Analyse gefuellt lassen. 
    2728##              Test als 0.7a mit gepatchter gdal-Version (noch 2.0dev) 
    2829## 
    29 ## Konverter:   /opt/gdal-2.0/bin/ = GDAL 2.0-DEV / PostNAS 0.7 
     30## ToDo: Option "-skipfailures" nach Test entfernen ? 
     31## 
    3032## Koordinaten: EPSG:25832  UTM, Zone 32 
    3133##              -a_srs EPSG:25832   - bleibt im UTM-System (korrigierte Werte) 
    3234## 
     35 
     36POSTNAS_HOME=$(dirname $0) 
     37 
     38# Konverterpfad 
     39PATH=/opt/gdal-2.0/bin:$PATH 
     40EPSG=25832 
     41 
     42 
    3343echo "**************************************************" 
    3444echo "**   K o n v e r t i e r u n g     PostNAS 0.7a **" 
     
    7686fi 
    7787# Fehlerprotokoll: 
    78   errprot='/data/konvert/postnas_0.7a/log/postnas_err_'$DBNAME'.prot' 
     88  errprot='$POSTNAS_HOME/log/postnas_err_'$DBNAME'.prot' 
    7989# 
    8090# DB-Connection 
     
    109119        export GML_FIELDTYPES=ALWAYS_STRINGS    # PostNAS behandelt Zahlen wie Strings, PostgreSQL-Treiber macht daraus Zahlen 
    110120        export OGR_SETFIELD_NUMERIC_WARNING=YES # Meldung abgeschnittene Zahlen? 
    111        #export CPL_DEBUG=ON                     # Meldung, wenn Attribute überschrieben werden 
     121       #export CPL_DEBUG=ON                     # Meldung, wenn Attribute ueberschrieben werden 
    112122      # 
    113123      # PostNAS Konverter-Aufruf 
     
    115125      # -skipfailures    # 
    116126      # -overwrite       # 
    117       /opt/gdal-2.0/bin/ogr2ogr -f "PostgreSQL" -append  ${update} -skipfailures \ 
    118          PG:"dbname=${DBNAME} host=localhost port=5432" -a_srs EPSG:25832 ${nasdatei} 2>> $errprot 
     127      ogr2ogr -f "PostgreSQL" -append  ${update} -skipfailures \ 
     128         PG:"dbname=${DBNAME} host=localhost port=5432" -a_srs EPSG:$EPSG ${nasdatei} 2>> $errprot 
    119129      nasresult=$? 
    120       echo "* Resultat: " $nasresult " fuer " ${nasdatei} 
    121           echo "* Resultat: " $nasresult " fuer " ${nasdatei}  >> $errprot 
     130      echo "* Resultat: " $nasresult " fuer " ${nasdatei} | tee -a $errprot 
    122131    done # Ende Zipfile 
    123132  done # Ende Ordner 
     
    130139  if [ $PP == "nopp" ] 
    131140  then 
    132     echo "** KEIN Post-Processing - Dies Spaeter nachholen." 
    133     # Dies kann sinnvoll sein, wenn mehrere kleine Aktualisierungen hintereinander auf einem großen Bestand laufen 
    134     # Der Aufwand für das Post-Processing ist dann nur bei der LETZTEN Aktualisierung notwendig. 
     141    echo "** KEIN Post-Processing - Dies spaeter nachholen." 
     142    # Dies kann sinnvoll sein, wenn mehrere kleine Aktualisierungen hintereinander auf einem grossen Bestand laufen 
     143    # Der Aufwand fuer das Post-Processing ist dann nur bei der LETZTEN Aktualisierung notwendig. 
    135144  else 
    136145    echo "** Post-Processing (Nacharbeiten zur Konvertierung)" 
    137146    echo "** - Optimierte Nutzungsarten neu Laden:" 
    138     psql -p 5432 -d ${DBNAME} < /data/konvert/postnas_0.7a/nutzungsart_laden.sql 
     147    (cd $POSTNAS_HOME; psql -p 5432 -d ${DBNAME} -f nutzungsart_laden.sql) 
    139148    ## 
    140149    echo "** - Fluren / Gemarkungen / Gemeinden neu Laden:" 
    141     psql -p 5432 -d ${DBNAME} < /data/konvert/postnas_0.7a/pp_laden.sql 
     150    (cd $POSTNAS_HOME; psql -p 5432 -d ${DBNAME} -f pp_laden.sql) 
    142151  fi 
     152 
     153  if [ "$(readlink $POSTNAS_HOME/alkis-trigger.sql)" = "alkis-trigger-kill.sql" ]; then 
    143154# Durch Einfuegen in Tabelle 'delete' werden Loeschungen anderer Tabellen getriggert 
    144   echo "** delete-Tabelle enthält:" 
    145   echo 'SELECT COUNT(featureid) AS delete_zeilen FROM "delete";' | psql $con 
    146  #echo "   delete-Tabelle loeschen:" 
    147  #echo 'TRUNCATE table "delete";' | psql $con 
     155    echo "** delete-Tabelle enthaelt:" 
     156    echo 'SELECT COUNT(featureid) AS delete_zeilen FROM "delete";' | psql $con 
     157    #echo "   delete-Tabelle loeschen:" 
     158    #echo 'TRUNCATE table "delete";' | psql $con 
    148159 # Fuer Analyse-Zwecke sollten die Delete-Eintraege erhalten bleiben bis zum naechsten Lauf. 
    149160 # TRUNCATE erfolgt VOR der Konnvertierung. 
    150161# 
    151162# Wenn die Datenbank MIT Historie angelegt wurde, man diese aber gar nicht braucht, 
    152 # dann hinterher aufräumen der historischen Objekte  
    153  #echo "** geendete Objekte entfernen:" 
    154 # Function : 
    155  #echo 'SELECT alkis_delete_all_endet();' | psql $con 
    156  #echo "  ... geendete Objekte entfernen wurde fuer Test dektiviert." 
    157  #echo "  Bitte manuell ausfuehren:  SELECT alkis_delete_all_endet(); " 
     163# dann hinterher aufraeumen der historischen Objekte  
     164    #echo "** geendete Objekte entfernen:" 
     165# Function: 
     166    #echo 'SELECT alkis_delete_all_endet();' | psql $con 
     167    #echo "  ... geendete Objekte entfernen wurde fuer Test dektiviert." 
     168    #echo "  Bitte manuell ausfuehren:  SELECT alkis_delete_all_endet(); " 
    158169# 
    159   echo "Das Fehler-Protokoll wurde ausgegeben in die Datei $errprot" 
    160  #echo "HINWEIS: -skipfailures  fuer Produktion wieder einschalten." 
    161 # 
     170    echo "Das Fehler-Protokoll wurde ausgegeben in die Datei $errprot" 
     171    #echo "HINWEIS: -skipfailures  fuer Produktion wieder einschalten." 
     172  fi 
Note: See TracChangeset for help on using the changeset viewer.