Changeset 328 for trunk/import/konv_batch.sh
- Timestamp:
- 09/09/14 08:15:55 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/import/konv_batch.sh
r327 r328 27 27 ## 2012-10-30 Umgebungsvariable setzen, delete-Tabelle am Ende fuer Analyse gefuellt lassen. 28 28 ## 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 der30 ## Pr Àsentationsobjekte StraÃenname im Post-Processing31 ## 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. 32 32 ## 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 37 41 ## Koordinaten: EPSG:25832 UTM, Zone 32 38 42 ## -a_srs EPSG:25832 - bleibt im UTM-System (korrigierte Werte) 39 ##40 43 41 44 POSTNAS_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 45 47 EPSG=25832 46 DBUSER= postgres48 DBUSER=b600352 47 49 48 50 if [ $DBUSER == "" ] … … 59 61 OGRPGUSER=" user=${DBUSER}" 60 62 fi 61 62 echo "**************************************************" 63 echo "** K o n v e r t i e r u n g PostNAS 0.7a **" 64 echo "**************************************************" 63 64 echo " 65 ********************************************** 66 ** K o n v e r t i e r u n g PostNAS ** 67 ********************************************** 68 " 65 69 ## Parameter: 66 70 ORDNER=$1 … … 104 108 fi 105 109 fi 110 106 111 # Fehlerprotokoll: 107 108 # 112 errprot=${POSTNAS_HOME}'/log/postnas_err_'$DBNAME'.prot' 113 109 114 # DB-Connection 110 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 119 echo " " 115 con="${PGUSER} -p 5432 -d ${DBNAME} " 116 117 echo "Datenbank-Name . . = ${DBNAME}" 118 echo "DBUSER ${DBUSER}" 119 echo "PGUSER ${PGUSER}" 120 echo "OGRPGUSER ${OGRPGUSER}" 121 echo "Ordner NAS-Daten . = ${ORDNER}" 122 echo "Verarbeitungs-Modus= ${verarb}" 123 echo "POSTNAS_HOME ${POSTNAS_HOME}" 124 120 125 # noch alte delete-Eintraege in DB? 121 echo "Leeren der delete-Tabelle" 122 echo 'TRUNCATE table "delete";' | psql $con 123 124 # 126 echo "Leeren der delete-Tabelle" 127 echo 'TRUNCATE table "delete";' | psql $con 128 125 129 # Import Eintrag erzeugen 126 130 # 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. 128 132 # Wird die Datenbank MIT Historie geladen, muss die folgende Zeile auskommentiert werden. 129 133 echo "INSERT INTO import (datum,verzeichnis,importart) VALUES ('"$(date '+%Y-%m-%d %H:%M:%S')"','"${ORDNER}"','"${verarb}"');" | psql $con 130 134 131 #132 135 # Ordner abarbeiten 133 # 136 134 137 cd ${ORDNER} 135 138 rm ../temp/*.gfs … … 147 150 # Zwischenueberschrift im Fehlerprotokoll 148 151 echo "* Datei: " $nasdatei >> $errprot 149 # 152 150 153 # Umgebungsvariable setzen: 151 154 export GML_FIELDTYPES=ALWAYS_STRINGS # PostNAS behandelt Zahlen wie Strings, PostgreSQL-Treiber macht daraus Zahlen 152 155 export OGR_SETFIELD_NUMERIC_WARNING=YES # Meldung abgeschnittene Zahlen? 153 156 #export CPL_DEBUG=ON # Meldung, wenn Attribute ueberschrieben werden 154 # 157 155 158 # 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 \ 160 160 PG:"dbname=${DBNAME} host=localhost port=5432 ${OGRPGUSER}" -a_srs EPSG:$EPSG ${nasdatei} 2>> $errprot 161 161 nasresult=$? … … 165 165 rm ../temp/*.xml 166 166 echo " " 167 echo "** Ende Konvertierung Ordner ${ORDNER}" 168 # 167 echo "** Ende Konvertierung Ordner ${ORDNER} 168 " 169 169 170 # Post-Processing / Nacharbeiten 170 # 171 171 172 if [ $PP == "nopp" ] 172 173 then 174 173 175 echo "** KEIN Post-Processing - Dies spaeter nachholen." 174 176 # Dies kann sinnvoll sein, wenn mehrere kleine Aktualisierungen hintereinander auf einem grossen Bestand laufen 175 177 # Der Aufwand fuer das Post-Processing ist dann nur bei der LETZTEN Aktualisierung notwendig. 178 176 179 else 180 177 181 echo "** Post-Processing (Nacharbeiten zur Konvertierung)" 178 182 179 183 echo "** - Optimierte Nutzungsarten neu Laden:" 180 184 (cd $POSTNAS_HOME; psql $con -f nutzungsart_laden.sql) 181 echo "-----------" 182 185 183 186 echo "** - Fluren / Gemarkungen / Gemeinden neu Laden:" 184 187 (cd $POSTNAS_HOME; psql $con -f pp_laden.sql) 185 188 186 187 # echo "** - PrÀsentationsobjekte generieren:"188 # (cd $POSTNAS_HOME; psql $con -f pp_praesentation_action.sql)189 190 189 fi 191 # 190 192 191 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 $con196 #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 angelegtwurde, man diese aber gar nicht braucht,202 # dann hinterher aufraeumen der historischen Objekte203 #echo "** geendete Objekte entfernen:"204 # Function: 205 # echo 'SELECT alkis_delete_all_endet();' | psql $con206 #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 208 207 fi 208 209 209 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.