Ignore:
Timestamp:
09/09/14 08:15:55 (10 years ago)
Author:
frank.jaeger
Message:

Letzte kleine Korrekturen an Import für PostNAS Version 0.7 vor Wechsel auf Version 0.8

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/import/konv_batch.sh

    r327 r328  
    2727##   2012-10-30 Umgebungsvariable setzen, delete-Tabelle am Ende fuer Analyse gefuellt lassen. 
    2828##              Test als 0.7a mit gepatchter gdal-Version (noch 2.0dev) 
    29 ##   2013-10-16 F.J. krz: Neues Script "pp_praesentation_action.sql" fÃŒr Reparatur der  
    30 ##              PrÀsentationsobjekte Straßenname im Post-Processing 
    31 ##   2013-10-24 F.J. krz: Zwischenlösung "praesentation_action.sql" wieder deaktiviert. 
     29##   2013-10-16 F.J. krz: Neues Script "pp_praesentation_action.sql" für Reparatur der  
     30##              Präsentationsobjekte Straßenname im Post-Processing 
     31##   2013-10-24 F.J. krz: Zwischenlösung "praesentation_action.sql" wieder deaktiviert. 
    3232##   2014-01-31 F.J. krz: Import Eintrag erzeugen (nach Vorschlag Marvin Brandt, Unna) 
    33 ##   2014-02-13 A.Emde WhereGroup: EinfÃŒhrung DBUSER, damit im Skript der Datenbankbenutzer angegeben werden kann 
    34 ## 
    35 ## ToDo: Option "-skipfailures" nach Test entfernen ? 
    36 ## 
     33##   2014-02-13 A.Emde WhereGroup: Einführung DBUSER, damit im Skript der Datenbankbenutzer angegeben werden kann 
     34##   2014-05-12 F.J. krz: Unterschiedliche Pfade in Test (TRUNK) und Produktion (Rel. 1.11.0) 
     35##   2014-06-18 F.J. DB-User nicht "postgres" (in $con).  
     36##                   Konverter ind Nacharbeiten sonst mit unterschiedlichem User. 
     37##                   Abgleich Test/Prod-Version 
     38##                   Entfernen der historischen Objekte nach Konvertierung. 
     39##   2014-09-03 F.J. Auch für 0.7-Datenstruktur die aktuelle Programmversion, PG_USE_COPY 
     40 
    3741## Koordinaten: EPSG:25832  UTM, Zone 32 
    3842##              -a_srs EPSG:25832   - bleibt im UTM-System (korrigierte Werte) 
    39 ## 
    4043 
    4144POSTNAS_HOME=$(dirname $0) 
    42  
    43 # Konverterpfad 
    44 PATH=/opt/gdal-2.0/bin:$PATH 
     45 PATH=/opt/gdal-2.0/bin:$PATH   # TRUNK-Version (immer letzter Stand der Entwicklung) 
     46#PATH=/opt/gdal-1.11/bin:$PATH  # Release GDAL 1.11.0 vom April 2014 
    4547EPSG=25832 
    46 DBUSER=postgres 
     48DBUSER=b600352 
    4749 
    4850if [ $DBUSER == "" ] 
     
    5961  OGRPGUSER=" user=${DBUSER}" 
    6062fi 
    61  
    62 echo "**************************************************" 
    63 echo "**   K o n v e r t i e r u n g     PostNAS 0.7a **" 
    64 echo "**************************************************" 
     63  
     64echo "  
     65********************************************** 
     66**   K o n v e r t i e r u n g     PostNAS  ** 
     67**********************************************  
     68 " 
    6569## Parameter: 
    6670ORDNER=$1 
     
    104108        fi 
    105109fi 
     110 
    106111# Fehlerprotokoll: 
    107   errprot=${POSTNAS_HOME}'/log/postnas_err_'$DBNAME'.prot' 
    108 # 
     112errprot=${POSTNAS_HOME}'/log/postnas_err_'$DBNAME'.prot' 
     113 
    109114# DB-Connection 
    110   con="${PGUSER} -p 5432 -d ${DBNAME} " 
    111   echo "Datenbank-Name . . = ${DBNAME}" 
    112   echo "DBUSER ${DBUSER}" 
    113   echo "PGUSER ${PGUSER}" 
    114   echo "OGRPGUSER ${OGRPGUSER}" 
    115   echo "Ordner NAS-Daten . = ${ORDNER}" 
    116   echo "Verarbeitungs-Modus= ${verarb}" 
    117   echo " " 
    118   echo "POSTNAS_HOME ${POSTNAS_HOME}" 
    119   echo " " 
     115con="${PGUSER} -p 5432 -d ${DBNAME} " 
     116 
     117echo "Datenbank-Name . . = ${DBNAME}" 
     118echo "DBUSER ${DBUSER}" 
     119echo "PGUSER ${PGUSER}" 
     120echo "OGRPGUSER ${OGRPGUSER}" 
     121echo "Ordner NAS-Daten . = ${ORDNER}" 
     122echo "Verarbeitungs-Modus= ${verarb}" 
     123echo "POSTNAS_HOME ${POSTNAS_HOME}" 
     124 
    120125# noch alte delete-Eintraege in DB? 
    121   echo "Leeren der delete-Tabelle" 
    122   echo 'TRUNCATE table "delete";' | psql $con  
    123  
    124 # 
     126echo "Leeren der delete-Tabelle" 
     127echo 'TRUNCATE table "delete";' | psql $con  
     128 
    125129# Import Eintrag erzeugen 
    126130# 
    127 # Die dadurch erzeugte Import-ID dient zur Steuerung des Löschens alter Relationen im Trigger.  
     131# Die dadurch erzeugte Import-ID dient zur Steuerung des Löschens alter Relationen im Trigger.  
    128132# Wird die Datenbank MIT Historie geladen, muss die folgende Zeile auskommentiert werden. 
    129133echo "INSERT INTO import (datum,verzeichnis,importart) VALUES ('"$(date '+%Y-%m-%d %H:%M:%S')"','"${ORDNER}"','"${verarb}"');" | psql $con 
    130134 
    131 # 
    132135# Ordner abarbeiten 
    133 # 
     136 
    134137  cd ${ORDNER} 
    135138  rm ../temp/*.gfs 
     
    147150      # Zwischenueberschrift im Fehlerprotokoll 
    148151      echo "* Datei: " $nasdatei >> $errprot 
    149       # 
     152 
    150153      # Umgebungsvariable setzen: 
    151154        export GML_FIELDTYPES=ALWAYS_STRINGS    # PostNAS behandelt Zahlen wie Strings, PostgreSQL-Treiber macht daraus Zahlen 
    152155        export OGR_SETFIELD_NUMERIC_WARNING=YES # Meldung abgeschnittene Zahlen? 
    153156       #export CPL_DEBUG=ON                     # Meldung, wenn Attribute ueberschrieben werden 
    154       # 
     157 
    155158      # PostNAS Konverter-Aufruf 
    156       # 
    157       # -skipfailures    # 
    158       # -overwrite       # 
    159       ogr2ogr -f "PostgreSQL" -append  ${update} -skipfailures \ 
     159      ogr2ogr -f "PostgreSQL" -append  ${update} -skipfailures  --config PG_USE_COPY YES  \ 
    160160         PG:"dbname=${DBNAME} host=localhost port=5432 ${OGRPGUSER}" -a_srs EPSG:$EPSG ${nasdatei} 2>> $errprot 
    161161      nasresult=$? 
     
    165165  rm ../temp/*.xml 
    166166  echo " " 
    167   echo "** Ende Konvertierung Ordner ${ORDNER}" 
    168 # 
     167  echo "** Ende Konvertierung Ordner ${ORDNER} 
     168  " 
     169 
    169170# Post-Processing / Nacharbeiten 
    170 # 
     171 
    171172  if [ $PP == "nopp" ] 
    172173  then 
     174 
    173175    echo "** KEIN Post-Processing - Dies spaeter nachholen." 
    174176    # Dies kann sinnvoll sein, wenn mehrere kleine Aktualisierungen hintereinander auf einem grossen Bestand laufen 
    175177    # Der Aufwand fuer das Post-Processing ist dann nur bei der LETZTEN Aktualisierung notwendig. 
     178 
    176179  else 
     180 
    177181    echo "** Post-Processing (Nacharbeiten zur Konvertierung)" 
    178182 
    179183    echo "** - Optimierte Nutzungsarten neu Laden:" 
    180184    (cd $POSTNAS_HOME; psql $con -f nutzungsart_laden.sql) 
    181     echo "-----------"  
    182  
     185  
    183186    echo "** - Fluren / Gemarkungen / Gemeinden neu Laden:" 
    184187    (cd $POSTNAS_HOME; psql $con -f pp_laden.sql) 
    185188 
    186  
    187     # echo "** - PrÀsentationsobjekte generieren:" 
    188     # (cd $POSTNAS_HOME; psql $con -f pp_praesentation_action.sql) 
    189  
    190189  fi 
    191 # 
     190 
    192191  if [ "$(readlink $POSTNAS_HOME/alkis-trigger.sql)" = "alkis-trigger-kill.sql" ]; then 
    193 # Durch Einfuegen in Tabelle 'delete' werden Loeschungen anderer Tabellen getriggert 
    194     echo "** delete-Tabelle enthaelt:" 
    195     echo 'SELECT COUNT(featureid) AS delete_zeilen FROM "delete";' | psql $con 
    196     #echo "   delete-Tabelle loeschen:" 
    197     #echo 'TRUNCATE table "delete";' | psql $con 
    198  # Fuer Analyse-Zwecke sollten die Delete-Eintraege erhalten bleiben bis zum naechsten Lauf. 
    199  # TRUNCATE erfolgt VOR der Konnvertierung. 
    200 # 
    201 # Wenn die Datenbank MIT Historie angelegt wurde, man diese aber gar nicht braucht, 
    202 # dann hinterher aufraeumen der historischen Objekte  
    203     #echo "** geendete Objekte entfernen:" 
    204 # Function: 
    205     #echo 'SELECT alkis_delete_all_endet();' | psql $con 
    206     #echo "  ... geendete Objekte entfernen wurde fuer Test dektiviert." 
    207     #echo "  Bitte manuell ausfuehren:  SELECT alkis_delete_all_endet(); " 
     192 
     193     # Durch Einfuegen in Tabelle 'delete' werden Loeschungen anderer Tabellen getriggert 
     194     echo "** delete-Tabelle enthaelt:" 
     195     psql $con -c 'SELECT COUNT(featureid) AS delete_zeilen FROM "delete";' 
     196 
     197     echo "   delete-Tabelle loeschen:" 
     198     psql $con -c 'TRUNCATE table "delete";' 
     199 
     200    # Wenn die Datenbank MIT Historie geladen wurde, man diese aber gar nicht braucht, 
     201    # dann hinterher aufraeumen der historischen Objekte  
     202    echo "** geendete Objekte entfernen:" 
     203 
     204    # Function: 
     205    psql $con -c "SELECT alkis_delete_all_endet();" 
     206 
    208207  fi 
     208 
    209209  echo "Das Fehler-Protokoll wurde ausgegeben in die Datei $errprot" 
    210   #echo "HINWEIS: -skipfailures  fuer Produktion wieder einschalten." 
     210  
Note: See TracChangeset for help on using the changeset viewer.