Cambiar versión (Administración de datos)
Resumen
Se modificará el espacio de trabajo de cada capa de entidad de entrada o vista de tabla de manera que se conecte a la versión solicitada.
Uso
-
Sólo funciona con capas de entidad y vistas de tabla.
-
Esta herramienta no editará el archivo de conexión de ArcSDE que se utiliza para crear la capa de entidad de entrada o la vista de tabla. Sólo se cambia el espacio de trabajo abierto de la Capa de entidad/Vista de tabla de manera que se conecte a la versión especificada.
-
Se admiten las vistas transaccionales e históricas.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_features |
Capa de entidad o Vista de tabla de entrada a la que se conectará con la versión especificada. | Feature Layer |
version_type |
Tipo de versión a la que se cambiará.
| String |
version_name (Opcional) |
Nombre de versión a la que se cambiará. Opcional si utiliza versiones históricas. | String |
date (Opcional) |
Fecha de la versión histórica a la que se cambiará. | Date |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función ChangeVersion en el modo inmediato.
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','','','')
Utilice la herramienta ChangeVersion en un flujo de trabajo de análisis versionado típico.
# 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"))