Warum "vergisst" ArcGIS meine angegebene Standard-GDB für ein Kartendokument (mxd)?

10

Ich verwende ArcGIS 10.0 unter Windows 7 64-Bit Ultimate.

Ich habe festgestellt, dass die Geoverarbeitungswerkzeuge und Skripte von ArcMap manchmal meine Einstellung im mxd zu vergessen scheinen (bestätigt über arcpy.env.workspaceund arcpy.env.scratchWorkspace.

Gibt es eine Möglichkeit, ArcMap dazu zu bringen, meine angegebene GDB zu verwenden?

Ich bin mit den Dokumenteigenschaften vertraut und weiß, wie ich die Standard-GDB für eine Karte ändern kann. Das Problem, das ich sehe, tritt auf, nachdem ich es eingestellt habe und eine Weile eine alternative GDB verwendet habe.

Ich stelle fest, dass ArcGIS zu zufälligen Zeiten plötzlich beschließt, wieder die "Standardvorgabe" zu verwenden (die ärgerlicherweise niemals geändert werden kann. Ich kann das Dokument schließen und erneut öffnen und die alternative GDB, die ich als Standard verwende, erneut über die Eigenschaften festlegen Dialogfeld, aber es wird nicht wieder die alternative GDB verwendet. Toolbox und Skripte platzieren die Ausgabe weiterhin am Standardspeicherort von ArcGIS (documents / ArcGIS / default.gdb).

Ich habe jedoch damit herumgespielt und manuelle Einstellungen gefunden. Der arc.env.workspace im Python-Fenster schien es auf magische Weise zurückzubringen (obwohl ich den gleichen Wert eingestellt habe?). Beim Ausführen des wörtlichen sa-Tools, das ich gerade ausgeführt hatte, wurde die Ausgabe in die richtige GDB gestellt, obwohl sich die Dialogeinstellungen oder die Umgebungseinstellungen "geändert" hatten.

Ist noch jemand auf dieses Verhalten gestoßen?

mindless.panda
quelle
Welches Betriebssystem und welche Version von ArcGIS verwenden Sie?
Mapperz
Tritt dieses Problem auf, wenn Sie Skripts in ArcMap (aus der Toolbox) oder außerhalb (aus einer Python-IDE) ausführen ? @ Mapperz Ich glaube, Arcpy ist nur in ArcGIS 10.
Nathanus
@panda Um sicherzustellen, dass ich Sie verstehe, werden die Arbeitsbereiche beim Ausführen von Geoverarbeitungswerkzeugen und -skripten in der Benutzeroberfläche von ArcMap auf den falschen Speicherort gesetzt?
Nathanus
2
Ich führe Tools in ArcMap aus, sowohl über die Toolbox als auch über das Python-Fenster. Die Arbeitsbereiche sind nicht auf die falschen Werte eingestellt, sondern hören nur gelegentlich auf, den Arbeitsbereich zu respektieren, und beginnen dann mit der Ausgabe an den Standardspeicherort (in documents / ArcGis / default.gdb). Ich habe festgestellt, dass das Zurücksetzen der Arbeitsbereichsvariablen über das Python-Fenster dies zu beheben scheint.
mindless.panda
3
re: "default default" kann niemals geändert werden. Bitte sehen Sie und stimmen Sie für die Möglichkeit ab, den Standardspeicherort der Standard-Geodatabase dauerhaft zu ändern
matt wilkie

Antworten:

3

Diese ArcGIS-Hilfe zum Festlegen der Standard-Geodatabase ist möglicherweise genau das, wonach Sie suchen. Ich glaube, der "Standard" muss bei der Erstellung jedes Kartendokuments festgelegt werden. Danach sollte es über die Einstellungen im MXD zugänglich sein. Ich bin von meiner Station entfernt, daher kann ich die genaue Rigamarole der Symbolleiste nicht bestätigen.

Es sollte jedoch beachtet werden, dass Ihr Arbeitsbereich nicht immer mit Ihrem Arbeitsbereich identisch ist (wenn ich mich recht erinnere, unterscheiden sie sich standardmäßig). Bei der Verwendung arcpywerden Umgebungen vererbt, wenn Sie die arcpy.mappingKlasse verwenden, um einen Verweis auf eine bestimmte MXD zu erstellen ( glaube ich ), aber ich weiß, dass sie alle mithilfe von festgelegt werden können arcpy.env.

Wenn Sie Ihre Datenbank / Ihren Arbeitsbereich speziell festlegen möchten, wenn Sie ein Geoverarbeitungswerkzeug in ArcMap verwenden, haben Sie folgende Möglichkeiten:

  1. Klicken Sie in ArcMap auf Geoverarbeitung> Umgebungen. Dies öffnet das Fenster Umgebungseinstellungen.
  2. Erweitern Sie die Kategorie Arbeitsbereich und geben Sie den Pfad zum Arbeitsbereich ein.
    ( Weitere Informationen finden Sie auf dieser Seite .)
Nathanus
quelle
danke - ich bin mit diesen Einstellungen vertraut - das Problem, das ich sehe, ist trotz. Siehe meine Bearbeitung oben - hoffentlich wird es klarer.
mindless.panda