10. Konfiguration GeoShop Upload INTERLIS Daten

10.1. Daten Upload

Daten werden im GeoShop immer als Datensätze in INTERLIS gehalten. Vor dem Upload eines Datensatzes in INTERLIS muss das entsprechende INTERLIS Modell in den GeoShop geladen werden (siehe dazu das letzte Kapitel). Das Laden von INTERLIS Daten wird wie folgt durchgeführt.

Das Laden eines INTERLIS Datenfiles erfolgt durch das Kopieren des Files mit den INTERLIS Daten in das Upload-Directory des GeoShops.

copy <filename>.itf GEOSHOP_DIR\data\upload

[Anmerkung]

Das Kopieren des Files kann mit dem copy Befehl auf der Kommandozeile (wie Beispiel oben), mit dem Windows Explorer, als GeoShop-ftp-Client oder mit dem GeoShop Uploadmanager erfolgen.

[Anmerkung]

Das Kopieren von Daten kann auch mit zip-Files erfolgen. Es können auch mehere Files in einem zip-File enthalten sein. Das Zippen der Daten empfiehlt sich insbesondere, wenn die Daten über ftp und dem Internet auf den GeoShop geladen werden.

Der GeoShop liest die INTERLIS Daten und integriert diese in den GeoShop. Bei der Integration werden im GeoShop folgende Anteile pro Datenfile angelegt.

GEOSHOP_DIR\data\pool\<model>\<filename>.itfAblage des Datenfiles im Datenpool des GeoShop.
GEOSHOP_DIR\data\pool\<model>\<filename>.idxGeoindex des Datenfiles.
GEOSHOP_DIR\data\dba\geoshop.mdbEinträge des Datenfiles in der Datenbank des GeoShop.
GEOSHOP_DIR\data\layers\<layer>\<model>\<filename>.geoLayerfiles mit der Darstellung der Daten.
GEOSHOP_DIR\data\query\*.qryErzeugung/Nachführung Queries, die von diesen Daten abhängig sind.

Diese Anteile werden durch die IL2GEO-Konfiguration erzeugt, die in der Beschreibung des Upload eines INTERLIS Modelles aufgeführt ist.

10.2. Daten Upload weitere Prozesse

Prozess Definitionen

Beim Upload der Daten in den GeoShop können weitere Prozesse definiert werden. Diese Prozesse können in folgende Kategorien unterteilt werden.

pre_upload Prozesse

Dies sind Prozesse, die vor dem Hautprozess on_upload erfolgen. Typische pre_upload Prozesse sind ein INTERLIS Datenscheck oder eine Konversion der Daten von einem alten in ein neues Datenmodell (Beispiel amtliche Vermessung DM01AVCH23D nach DM01AVCH24D). Die pre_upload Prozesse werden sequentiell nacheinander, entsprechend ihrer Aufführung in der Definition ausgeführt.

on_upload Prozess

Dies ist der Hauptprozess des GeoShops, mit dem die INTERLIS Daten in den GeoShop integriert werden. Der on_upload Prozess ist der vorgängig beschriebene Prozess und muss immer ausgeführt werden.

post_upload Prozesse

Dies sind Prozesse, die nach dem Hautprozess on_upload erfolgen. Typische post_upload Prozesse sind das Laden einer Datenbank mit den Daten oder das Bereitstellen einer Datenablage in einem gewünschten Format. Die post_upload Prozesse können parallel ausgeführt werden, falls mehere Rechnersklaven - ICS Server - in der GeoShop Installation aktiviert sind.

Diese Prozesse für INTERLIS Daten können mit dem GeoShop Administrator unter Config > Formats > itf definiert werden.

Abbildung 20. GeoShop Administrator Konfiguration Format itf

GeoShop Administrator Konfiguration Format itf

Die Format Definitionen für die INTERLIS Daten werden in folgendem File abgelegt.

GEOSHOP_DIR\user\formats\itf.frm

Als Beispiel, kann das File folgenden Inhalt aufweisen.

MAP
   extension STRING itf
   pre_upload LIST
      MAP
         description STRING 'Umwandlung AV-Daten nach DM01AVCH24D'
         model_filter STRING 'Grunddatensatz,DM01AVCH23D'
         script STRING \script\il2il\avch.cfg
         service STRING upload
      }
      MAP
         description STRING 'INTERLIS Checker'
         model_filter STRING CH_Gemeinden 
         script STRING \script\igcheck\interlis.cfg
         service STRING upload
      }
   }
   on_upload LIST
      MAP
         description STRING 'GEO Indizierung'
         model_filter STRING *
         script STRING \script\il2geo\il2geo.cfg
         service STRING upload
      }
   }
}

Die möglichen Definititionen und Optionen sind im GeoShop Administrator Benutzerhandbuch beschrieben. Die wichtigsten Optionen pro Prozessdefinition sind der model_filter, das heisst für welche INTERLIS Modelle der Prozess ausgeführt werden soll, und die sript Definition, da heisst welche ICS-Konfiguration ausgeführt werden soll.

Jede Prozessdefinition erzeugt pro Datenfile einen Job mit einer eindeutigen Jobnummer im GeoShop. Die Jobs können Sie im GeoShop Administrator unter Server > Processes > Jobs in Job Queue verfolgen. Beachten Sie dazu das Kapitel über die Jobs.

ICS Konfiguration für Prozess

Unter die Option script können Sie bei einem der upload Prozesse eine ICS Konfiguration definieren, die ausgeführt werden soll. Diese ICS Konfiguration muss erzeugt und in den GeoShop integriert werden.

Als Beispiel wird eine post_upload Konfiguration definiert und integriert, die Daten in eine Oracle Datenbank lädt.

  1. Definieren Sie den post_upload Prozess.

    GEOSHOP_DIR\user\formats\itf.frm

    Unter model_filter definieren Sie das INTERLIS Modell für den der post_upload Prozess ausgeführt werden soll.

    Unter script definieren Sie die ICS-Konfiguration, die ausgeführt werden soll (In der Regel <model>.cfg) .

    Unter output definieren Sie die ODBC Datenbank, in die die Daten geschrieben werden sollen.

    MAP
       :
       post_upload LIST
          :
          MAP
             description STRING 'DM01AVCH24D Oracle Datenbanbk laden'
             model_filter STRING DM01AVCH24D
             script STRING \script\il2ora\DM01AVCH24D.cfg
             output STRING 'oarcle,test,test'
             service STRING upload
          }
          :
       }
    }
  2. Kreieren und definieren Sie die ODBC Datenbank.

    Kreieren Sie die Datenbank und definieren Sie diese unter Windows als ODBC Source.

  3. Generieren Sie die ICS Konfiguration

    Rufen Sie ICS for Windows auf.

    GEOSHOP_DIR\system\bin\icsw.exe

    Abbildung 21. ICS for Windows IL2ORA

    ICS for Windows IL2ORA

    Selektieren Sie das Script zur Generierung eine Konfiguration INTERLIS nach Oracle.

    GEOSHOP_DIR\system\script\il2ora\il2oragen.cfg

    Starten Sie das Script mit Run und geben Sie die notwendigen Eingaben ein. Die Konfiguration wird erzeugt.

    GEOSHOP_DIR\user\script\il2ora\DM01AVCH24D.cfg

    Der Namen der Konfiguration muss identisch sein mit dem Namen, den Sie beim post_upload Prozess unter script definiert haben.

  4. Passen Sie die ICS Konfiguration an.

    Passen Sie die generierte ICS Konfiguration bei Bedarf an.

Die ICS Konfiguration für den Prozess steht nun bereit. Es können Daten in den GeoShop geladen werden. Als post_upload Prozess wird die ICS Konfiguration ausgeführt.

10.3. Daten Upload Checker

Eine im GeoShop enthaltene Konfiguration für einen pre_upload Prozess ist die Checker Konfiguration. Dieser Checker überprüft die INTERLIS Daten gengenüber dem INTERLS Modell. Über Kriterien kann die Integration der INTERLIS Daten in den GeoShop abgebrochen werden, zum Beispiel wenn das INTERLIS File zu viele Fehler beinhaltet.

Definition Checker als pre_upload Prozess

Der Checker wird im Format-File als pre_upload Prozess definiert.

GEOSHOP_DIR\user\formats\itf.frm

MAP
   extension STRING itf
   pre_upload LIST
      :  
      MAP
         description STRING 'INTERLIS Checker'
         model_filter STRING * 
         script STRING \script\igcheck\interlis.cfg
         service STRING upload
      }
      :
   }
   :
}

Unter dem Parameter model_filter können Sie die INTERLIS Modelle aufführen, für die der Checker ausgeführt werden soll.

Definition Checker Kriterien.

Passen Sie Kriterien für den Checker in folgendem File an.

GEOSHOP_DIR\user\script\igcheck\interlis.cfg

Die Kriterien sind in der Map ERROR_LIMITS definiert.

MAP ERROR_LIMITS
   ! MODEL[,TOPIC[,TABLE[,ATTR]]][,ERRORCODE] => Maximale Anzahl erlaubte Fehler

   ! ERRORCODES:
   ! SYNTAX_ERROR
   ! RECORD_ERROR
   ! REF_ERROR
   ! VALUE_ERROR
   ! TOPOLOGY_ERROR

   ! Examples:
   ! DM01AVCH24D                                           => 100
   ! DM01AVCH24D,VALUE_ERROR                               => 100
   ! DM01AVCH24D,Bodenbedeckung                            => 100
   ! DM01AVCH24D,Bodenbedeckung,VALUE_ERROR                => 100
   ! DM01AVCH24D,Bodenbedeckung,BoFlaeche                  => 100
   ! DM01AVCH24D,Bodenbedeckung,BoFlaeche,VALUE_ERROR      => 100
   ! DM01AVCH24D,Bodenbedeckung,BoFlaeche,Art              => 100
   ! DM01AVCH24D,Bodenbedeckung,BoFlaeche,Art,VALUE_ERROR  => 100

   DM01AVCH24D => 0

END_MAP

Vom Model über Topic, Table bis zum Attribut können über Fehler Codes Limiten zur Anzahl von Fehler definiert werden, die erlaubt sind. Ist die Anzahl Fehler grösser, so bricht der Checker den Upload der Daten in den GeoShop ab. Weitere Kriterien können bei Bedarf über die Scriptssprache iG/Script implementiert werden.