2 Stimmen

Standardwerte für Datumsangaben in ArcGIS

In Microsoft SQL kann ich die Funktion GETDATE() als Standardwert für ein DATETIME-Feld verwenden. Ich würde gerne dasselbe für ein Datumsfeld in einer ArcGIS-Geodatenbank tun können. Ist dies möglich, oder bin ich auf Literalwerte beschränkt?

Meine Geodatenbank verwendet ArcSDE 9.1. Die Feature Class mit den definierenden Attributen ist versioniert.

Danke,

Kamel

1voto

cmsjr Punkte 52971

ArcGIS nutzt im Allgemeinen eine externe Datenbank-Engine. Wenn es sich also nicht um ein einzelnes Shapefile handelt, werden Ihre Daten in Access, SQL Server oder Oracle gespeichert. Wenn Sie nicht über ArcSDE verfügen, ist es wahrscheinlich Access. Sie können Daten direkt in der Datenbank definieren und dort Standardwerte zuweisen und dann von Ihrem Kartenerstellungswerkzeug aus eine Verknüpfung zu den Tabellen herstellen.

EDIT Nach Ihrem letzten Kommentar habe ich mich mit einer meiner GIS-erfahreneren Freundinnen beraten, und sie hatte Folgendes zu bieten

Sie müssen die Tabelle und ihre Vorgaben in der Datenbank definieren und dann die Tabelle über ein gemeinsames Feld mit der Featureklasse verbinden. Es ist wichtig, das Datumsfeld nicht mit der Merkmalsklasse zu verknüpfen, denn in diesem Fall würde die Merkmalsklasse die Werte, die in der Featureklasse festgelegt wurden, und den Tabellenwert ignorieren.

Ich hoffe, das hilft Ihnen weiter.

1voto

Mitkins Punkte 3405

Ich habe schließlich mit dem Esri-Support über dieses Problem gesprochen. Sie bestätigten, dass versionierte Tabellen die Standardwerte der Originaltabelle nicht übernehmen (zumindest in SQL Server).

In Bezug auf die Erstellung einer Verknüpfung zwischen einer Tabelle und der Merkmalsklasse:

  • Die Daten werden in eine Shape-Datei exportiert und auf ein PocketPC-Gerät kopiert
  • Die Dateneingabe erfolgt über eine ArcPad-Anwendung
  • Die Shape-Datei wird synchronisiert und wieder in die SDE importiert

Im Grunde genommen müsste die DATETIME-Vorgabe also den Export-/Importprozess überstehen. Ich habe nicht getestet, ob dies möglich ist. Schließlich habe ich den Standardwert programmatisch auf dem PocketPC eingefügt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X