Resumen
Modifica el espacio de trabajo de una capa de entidades o vista de tabla para conectarse a una versión específica.
Uso
-         La herramienta solo funciona con capas de entidades o vistas de tablas. 
-         Esta herramienta no editará el archivo de conexión de geodatabase corporativa o servicio de entidades utilizados para crear la capa de entidades o vista de tabla de entrada. Solo se cambia el espacio de trabajo abierto de la capa de entidad de entrada o de la vista de tabla de manera que se conecte a la versión especificada. 
-         Se admiten las vistas transaccionales e históricas. 
Sintaxis
ChangeVersion(in_features, version_type, {version_name}, {date})| Parámetro | Explicación | Tipo de datos | 
| in_features | La capa de entidades o vista de tabla que se conectará a la versión especificada. | Feature Layer; Table View | 
| version_type | Especifica el tipo de versión al que se conectará la capa de entidades de entrada. 
 | String | 
| version_name (Opcional) | El nombre de la versión a la que se conectará la capa de entidades de entrada. Este parámetro es opcional si utiliza una versión histórica. | String | 
| date (Opcional) | La fecha de la versión histórica a la que se conectará la capa de entidades de entrada. | Date | 
Salida derivada
| Nombre | Explicación | Tipo de datos | 
| out_feature_layer | El dataset de entrada actualizado. | Capa de entidades | 
Muestra de código
El siguiente script de la ventana de Python demuestra cómo utilizar la función ChangeVersion en modo inmediato.
import arcpy
from arcpy import env
env.workspace = r'c:\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 función ChangeVersion de 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.
# Import system modules 
import arcpy
import sys
import os
# Set environments
arcpy.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.
selection1 = arcpy.SelectLayerByLocation_management("RedlandsStreams",
                                                    "WITHIN_A_DISTANCE",
                                                    "RedlandsStreets",
                                                    "100 Meters",
                                                    "NEW_SELECTION",
                                                    '#')
arcpy.MakeFeatureLayer_management(selection1,'StreamsNearStreets','','','')
print("Streams within 100 Meters of current streets: {}".format(
    arcpy.GetCount_management("StreamsNearStreets")[0]))
# 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.
selection2 = arcpy.SelectLayerByLocation_management("RedlandsStreams",
                                                   "WITHIN_A_DISTANCE",
                                                   "RedlandsStreets",
                                                   "100 Meters",
                                                   "NEW_SELECTION",
                                                   '#')
arcpy.MakeFeatureLayer_management(selection2,'NewStreamsNearStreets','','','')
print("Streams projected to be within 100 Meters of streets after proposed street additions: {}".format(
    arcpy.GetCount_management("NewStreamsNearStreets")[0]))Utilice la función ChangeVersion para cambiar una capa de servicio de entidades a una versión en rama nominal.
# Name: ChangeVersionBranchVersioning.py
# Description: Use the ChangeVersion tool to change the branch version of a feature service
#              layer that has the version management capability enabled.
# Import system modules 
import arcpy
# Sign into ArcGIS Enterprise
arcpy.SignInToPortal("https://myserver.mydomain.com/portal", 'portaladmin', 'my.password')
# Create a variable for the feature service URL
myFS = "https://myserver.mydomain.com/server/rest/services/BranchVersioningData/FeatureServer/0"
# Create the layers
arcpy.MakeFeatureLayer_management(myFS, 'myFSLayer')
# Change to a branch version named myVersion
arcpy.ChangeVersion_management('myFSLayer', "BRANCH", "portaladmin.myVersion")Entornos
Información de licenciamiento
- Basic: No
- Standard: Sí
- Advanced: Sí