Version ändern (Data Management)
Zusammenfassung
Für alle Eingabe-Feature-Layer und -Tabellensichten wird der Workspace geändert, um eine Verbindung mit der angeforderten Version herzustellen.
Verwendung
-
Kann nur bei Feature-Layern und Tabellensichten ausgeführt werden.
-
Die ArcSDE-Verbindungsdatei, die zum Erstellen des Eingabe-Feature-Layers oder der Eingabe-Tabellensicht verwendet wird, wird von diesem Werkzeug nicht bearbeitet. Nur der geöffnete Workspace des Feature Layers/der Tabellensicht wird geändert, um eine Verbindung mit der angegebenen Version herzustellen.
-
Transaktionssichten und historische Sichten werden unterstützt.
Syntax
Parameter | Erläuterung | Datentyp |
in_features |
Das Eingabe-Feature-Layer oder die Tabellensicht, mit der mit der angegebenen Version eine Verbindung hergestellt werden soll. | Feature Layer |
version_type |
Der Versionstyp, in den der Typ geändert werden soll.
| String |
version_name (optional) |
Name der Version, zu der gewechselt werden soll. Optional bei Verwendung von historischen Versionen. | String |
date (optional) |
Datum der historischen Version, zu der gewechselt werden soll. | Date |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion "ChangeVersion" im unmittelbaren Modus verwenden.
import arcpy from arcpy import env env.workspace = r'Database Connections\toolbox.sde' arcpy.MakeFeatureLayer_management(r'TOOLBOX.Redlands\TOOLBOX.street', 'RedlandsStreets') arcpy.MakeFeatureLayer_management(r'TOOLBOX.Redlands\TOOLBOX.streams', 'RedlandsStreams') arcpy.MakeFeatureLayer_management(arcpy.SelectLayerByLocation_management("RedlandsStreams","WITHIN_A_DISTANCE","RedlandsStreets","100 Meters","NEW_SELECTION",'#'), 'StreamsNearStreets','','','') arcpy.ChangeVersion_management('RedlandsStreets','TRANSACTIONAL', 'TOOLBOX.proposedStreets2k9','') arcpy.MakeFeatureLayer_management(arcpy.SelectLayerByLocation_management("RedlandsStreams","WITHIN_A_DISTANCE","RedlandsStreets","100 Meters","NEW_SELECTION",'#'), 'NewStreamsNearStreets','','','')
Verwenden Sie das Werkzeug "ChangeVersion" in einem typischen versionierten Analyse-Workflow.
# Name: ChangeVersion.py # Description: Use the ChangeVersion tool in a typical versioned analysis workflow. Quick check of additional # streams within a pre-determined distance of new proposed street development. # Author: ESRI # import system modules import arcpy from arcpy import env import sys, os # Set environments env.workspace = sys.path[0] + os.sep + "toolbox.sde" # Create the layers arcpy.MakeFeatureLayer_management(r'TOOLBOX.Redlands\TOOLBOX.street', 'RedlandsStreets') arcpy.MakeFeatureLayer_management(r'TOOLBOX.Redlands\TOOLBOX.streams', 'RedlandsStreams') # Perform analysis on the Default version to determine current number of streams within 100 meters of streets. arcpy.MakeFeatureLayer_management(arcpy.SelectLayerByLocation_management("RedlandsStreams","WITHIN_A_DISTANCE","RedlandsStreets","100 Meters","NEW_SELECTION",'#'), 'StreamsNearStreets','','','') print "Streams within 100 Meters of current streets: " + str(arcpy.GetCount_management("StreamsNearStreets")) # Change to the development version arcpy.ChangeVersion_management('RedlandsStreets','TRANSACTIONAL', 'TOOLBOX.proposedStreets2k9','') # Perform the same analysis on the development version to see the effect of the proposed changes. arcpy.MakeFeatureLayer_management(arcpy.SelectLayerByLocation_management("RedlandsStreams","WITHIN_A_DISTANCE","RedlandsStreets","100 Meters","NEW_SELECTION",'#'), 'NewStreamsNearStreets','','','') print "Streams projected to be within 100 Meters of streets after proposed street additions: " + str(arcpy.GetCount_management("NewStreamsNearStreets"))