3. Modul ARCGISIN - ESRI Geodatabase lesen

3.1. Allgemeines

Mit dem Modul können Objekte aus einer ESRI-Geodatabase geschrieben werden. Unterstützt werden:

  • ESRI SDE Geodatabase (Oracle)

  • ESRI Personal Geodatabase (ACCESS)

  • ESRI File Geodatabase

Der Modul wird mit:

|INCL \script\arcgisin.mod

in einer ICS RUN1-Konfiguration verfügbar gemacht.

3.2. ESRI Lizenz

Der Modul verwendet das ESRI ArcObjects API. Für die Anwendung des Modules ist deshalb im Minimum eine ESRI Lizenz ArcGIS Engine Runtime notwendig.

3.3. Parametermap ARCGISIN_PARAM

Folgende Parameter können in der Map ARCGISIN_PARAM für den Modul gesetzt werden:

Parameterreq/optBeschreibung
STATISTICSoON oder OFF, Default = OFF. Statistik anzeigen.

3.4. Objektmodell

Der Modul liefert pro IN-Objekt folgende Systemkomponenten:

Komponentereq/optBeschreibung
IN.TABLE(s)rTablename des IN Objekts.
IN.GDB_DATASET(s)rEnthält den Geodatabase Dataset-Namen.
IN.<Attribute>(*)oPro Attribut in der Geodatabase eine Komponente mit dem Attributnamen und dem Wert.
IN.<Geom-Attribute>(g|li)oFalls es sich beim Attribut um eine Geometrie handelt, so enthält diese Komponente die Geometrie. Sind mehere Geometrien vorhanden, so enthält die Komponente eine Liste von Geometrien.

Alle weiteren Komponenten sind abhängig von der Tabellen-Definition in der Datenbank.

3.5. Exportierte Prozeduren und Methoden

Der Modul beinhaltet alle Prozeduren und Methoden wie der Modul DBIN. Ziehen Sie deshalb die Dokumentation des Modules DBIN bei.

Zusätzlich stellt der Modul GDBIN folgende Prozeduren und Methoden zur Verfügung.

ProzedurARCGISIN_OPEN [s input][]
BeschreibungÖffnet eine bestehende Datenbank.
  • Für eine Personal Geodatabase muss in input die Access-Datenbank *.mdb gesetzt werden.

  • Für eine File Geodatabase muss in input die File-Datenbank *.gdb gesetzt werden.

  • Für eine SDE Geodatabase muss in input die SDE connection in der Form <server>,<instance>,<database>,<user>,<password>,<version> gesetzt werden.

Die Prozedur wird von RUN1 automatisch aufgerufen.

Beispiel
'c:\data\arcgis.mdb' ARCGISIN_OPEN
ProzedurARCGISIN_READ_OBJECT [][b state]
Beschreibung

Liest das nächste IN-Objekt aus der geöffneten Datenbank-Tabelle. Die Prozedur wird von RUN1 automatisch aufgerufen.

Beispiel
ARCGISIN_READ_OBJECT [TRUE]
ProzedurARCGISIN_CLOSE [][]
BeschreibungSchliesst den Modul und gibt die durch den Modul belegten Resourcen wieder frei. Die Prozedur wird von RUN1 automatisch aufgerufen.
Beispiel
ARCGISIN_CLOSE

3.6. Skriptbeispiel

! Diese ICS Konfiguration zeigt alle von ARCGISIN.mod
! gelesenen Objekte in der .log Datei an.

|LICENSE \license\iltools.lic

MAP USER_INPUT1
   DIALOG        => ARCGIS
   MESSAGE       => 'Enter SDE or Database File'
   FILE_FILTER   => mdb;gdb
   FILE_EXISTS   => TRUE
   OPT           => input
END_MAP

MAP ARCGISIN_PARAM
   STATISTICS     => ON
END_MAP

MAP INPUT_SOURCES
   I1 => ARCGISIN,*
END_MAP

MAP INOUT
   I1 => DISPLAY_OBJECT1,IN
END_MAP

|INCL \script\ARCGISIN.mod
|INCL \script\run1.prg

3.7. Bestehende Konfigurationen IL2GDB/IL2SDE oder GDB2IL/SDE2IL nach IL2ARCGIS/ARCGIS2IL migrieren

Die Module ARCGISIN/ARCGISOUT lösen die Module GDBIN/GDBOUT und SDEIN/SDEOUT ab. Bestehende Konfigurationen IL2GDB/GDB2IL und IL2SDE/SDE2IL sind deshalb durch Konfiguration IL2ARCGIS/ARCGIS2il abzulösen. Für dieser Migration steht folgendes Script zur Verfügung.

ILTOOLS\system\script\il2gdb\CFG_GDB2ARCGIS.cfg

Das Script verlangt als Input eine IL2GDB/GDB2IL oder IL2SDE/SDE2IL Konfiguration und schreibt als Output eine analoge IL2ARCGIS/ARCGIS2IL Konfiguration.