Mit dem Skriptmodul können Objekte aus einer ESRI-Geodatabase Access-Datenbank via ODBC gelesen werden. Der Modul unterstützt speziell das ESRI Geodatabase Access Datenmodell und die darin enthaltenen Geometrien.
Der Modul unterstützt die Personal Geodatabase 8.3/9.0/9.1/9.2.
Der Modul wird mit:
|INCL \script\gdbin.mod
in einer ICS RUN1-Konfiguration verfügbar gemacht.
Der Modul GDBIN ist eine Erweiterung des Moduls DBIN. Alle im Modul DBIN beschriebenen Anteile gelten daher auch für das Modul GDBIN (s.a. Dokumentation des Moduls DBIN).
Folgende Parameter können in der Map DB_PARAM für
den Modul gesetzt werden:
| Parameter | req/opt | Beschreibung |
SOURCE | o | ODBC-Source der Datenbank. Muss gesetzt werden, falls die ODBC-Source nicht interaktiv abgefragt wird. |
USER | o | Datenbank User für die Verbindung mit der ODBC-Source. Muss gesetzt werden, falls die ODBC-Source nicht interaktiv abgefragt wird. |
PASSWORD | o | Datenbank Password für die Verbindung mit der ODBC-Source. Muss gesetzt werden, falls die ODBC-Source nicht interaktiv abgefragt wird. |
| o | ON oder OFF, Default
= OFF. Für jedes gelesene Objekt eine Zeile
ausgeben. |
Folgende Parameter können in der Map DBIN_PARAM für den Modul gesetzt werden:
| Parameter | req/opt | Beschreibung |
STATISTICS | o | ON oder OFF, Default
= OFF. Statistik anzeigen. |
SELECT_PARSE | o | ON oder OFF, Default
= ON. Definiert, ob ein eventuelles SQL-select
Statement geparst werden soll. Als Argument für für das Modul kann
ein SQL-select Statement definiert werden. Als Default wird dieses
select-Statement von geparst , um spezielle Attribute zu erkennen,
die vom ODBC-Treiber nicht unterstützt werden und speziell gelesen
werden müssen. Manchmal können select-Statements (komplexe Joins)
nicht erfolgreich geparst werden. In solchen Fällen ist dieser
Parameter auf OFF zu schalten. Sie müssen
besorgt sein, dass das select-Statement von ODBC verarbeitet
werden kann. |
Der Modul liefert pro IN-Objekt folgende Systemkomponenten:
| Komponente | req/opt | Beschreibung |
IN.TABLE(s) | r | Tablename des IN Objekts. |
IN.GDB_DATASET(s) | r | Enthält den Geodatabase Dataset-Namen. |
IN.GDB_DATASET_SRID(i) | r | Enthält die Geodatabase Dataset-SRID-Identifikation. |
IN.GDB_SUBTYPE_ATTR(s) | o | Falls die Tabelle ein Geodatabase-Subtype-Attribut enthält, so enthält diese Komponente den Attributname des Subtype-Attributes. |
IN.<Attribute>_SUBTYPE(b) | o | Falls es sich beim Attribut um ein Geodatabase-Subtype-Attribut handelt, ist diese Komponente vorhanden. |
IN.<Attribute>_TXT(s) | o | Falls es sich beim Attribut um eine Geodatabase-Domain vom Type Text handelt, so enthält diese Komponente den textuellen Wert. |
IN.<Geom-Attribute>(g|li) | o | Falls 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. |
IN.<Geom-Attribute>_SRID(i) | o | Falls es sich beim Attribut um eine Geometrie handelt, so enthält diese Komponente die SRID-Identifikation. |
IN.<Geom-Attribute>_DIM(i) | o | Falls es sich beim Attribut um eine Geometrie handelt, so enthält diese Komponente die Angabe zur Dimension 2 oder 3. |
IN.<Geom-Attribute>_HASM(b) | o | Falls es sich beim Attribut um eine Geometrie handelt, so
enthält diese Komponente die Angabe, ob das Attribute ein
Measurement hat TRUE oder nicht
FALSE. Die Measurement Dimension wird aber
nicht gelesen. |
IN.<Geom-Attribute>_BLOB(blob) | o | Falls es sich beim Attribut um eine Geometrie handelt, so enthält diese Komponente das Geodabase-BLOB der Geometrie. |
Alle weiteren Komponenten sind abhängig von der Tabellen-Definition in der Datenbank.
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.
| Prozedur | GDBIN_OPEN [s input][] |
| Beschreibung | Öffnet eine Datenbank definiert
mit
Die Prozedur wird von RUN1 automatisch aufgerufen. |
| Beispiel | |
|
| Prozedur | GDBIN_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 | |
| Prozedur | GDBIN_CLOSE [][] |
| Beschreibung | Schliesst den Modul und gibt die durch den Modul belegten Resourcen wieder frei. Die Prozedur wird von RUN1 automatisch aufgerufen. |
| Beispiel | |
| Meothode | GDB.BLOB_TO_GEOM [B blob][li list | g geometry] |
| Beschreibung | Wandelt die Geometrie
<blob> in eine ICS Geometrie um. Sind
mehrere Geometrien vorhanden, so wird eine Liste von Geometrien
zurückgegeben. <blob> ist die binary
Geodatabase-Geometrie. |
| Beispiel | |
! Diese ICS Konfiguration zeigt alle von gdbin.mod ! gelesenen Objekte in der .log Datei an. |LICENSE \license\iltools.lic MAP USER_INPUT1 DIALOG => ODBC OPT => input END_MAP MAP DB_PARAM SOURCE => '' ! ODBC-Source USER => '' ! ODBC-User PASSWD => '' ! ODBC-Password END_MAP MAP DBIN_PARAM STATISTICS => ON END_MAP MAP INPUT_SOURCES I1 => GDBIN,* END_MAP MAP INOUT I1 => DISPLAY_OBJECT1,IN END_MAP |INCL \script\gdbin.mod |INCL \script\run1.prg