Betrifft
GEONIS Lösungen mit geometrischen Netzwerken und Datenhaltung in FGDB.
Beschreibung
In File Geodatabases (FGDB) sind beim Datentyp «Geometrie» (Spalte SHAPE) explizit NULL-Werte zu erlauben. Das ist eine Eigenheit der FGDB im Zusammenspiel mit ArcGIS. Andere Datenbanken wie z.B. die Personal Geodatabase (MDB) oder die MS SQL Server Datenbank kennen diese Einschränkung nicht. Aus diesem Grund kann es nach der Überführung der Daten von einer dieser Datenbanken in eine File Geodatabase zu folgenden Problemen kommen:
Beim Erfassen neuer Objekte (nach F2) in der FGDB via ArcMap erscheint folgende Meldung:
Das Feature konnte nicht erstellt werden.
Das Feld lässt keine NULL-Werte zu. [<Featureclass>]
Das Feld lässt keine NULL-Werte zu. [SHAPE]
Polylinien mit der Länge 0 sind nicht erlaubt [class name = <Featureclass>, object id = -1]
Es betrifft dabei nur Objekte, welche Teil eines geometrischen Netzwerks sind (hier die Tabelle WAS_LEITUNG, welche Teil des WAS_NET-Netzwerks ist). Wird das Netzwerk gelöscht, lassen sich diese Objekte ohne weiteres erfassen.
Workarounds
FGDB ohne GlobalIDs
Das Problem kann mit folgendem Python Skript für FGDB ohne GlobalID gelöst werden:
Vorgehen:
- MDB in FGDB kopieren
- Prüfen ob Null Werte erlaubt sind
- Wenn nein, Skript auf FGDB anwenden
FGDB mit GlobalID
Für FGDB mit GlobalID steht leider kein Skript zur Verfügung. Es gibt aber einen Workaround:
- GlobalIDs in zusätzliches Text-Feld kopieren
- WAS_LEITUNG in MDB (Personal Geodatabase) exportieren (In ArcCatalog, auf WAS_LEITUNG rechtsklicken > Exportieren > Geodatabase)
- Personal Geodatabase in in MS-Access öffnen und GlobalIDs durch Text-GlobalIDs ersetzen.
- WAS_LEITUNG von MDB in FGDB kopieren (Unbedingt Copy/Paste in ArcCatalog)
Kommentare
0 Kommentare
Zu diesem Beitrag können keine Kommentare hinterlassen werden.