CÓMO

Cambiar la fuente de datos de una capa de referencia a una geodatabase a una URL de servicio de ArcGIS Server en ArcGIS Pro mediante ArcPy

Last Published: October 1, 2025

Resumen

La fuente de datos de una capa de un proyecto hace referencia a la clase de entidad desde la ubicación física de la geodatabase en un equipo. El dataset también puede hacer referencia a una URL si el dataset se publica como un servicio de ArcGIS Server o un servicio de ArcGIS Online. En el módulo ArcPy, la fuente de datos está representada en el diccionario "connectionProperties" como se muestra a continuación.

En la geodatabase

{'connection_info': {'database': 'E:\\ArcGIS\\Project\\Database.gdb'}, 'dataset': 'layerXYZ', 'workspace_factory': 'File Geodatabase'}

En servicio de ArcGIS Server

{'connection_info': {'url': 'http://sampleserver6.arcgisonline.com/arcgis/rest/services/911CallsHotspot/MapServer'}, 'dataset': '1', 'workspace_factory': 'FeatureService'}

Procedimiento

Para utilizar el diccionario "connectionProperties", importe los módulos ArcPy y "pprint".

Los siguientes pasos describen cómo cambiar la fuente de datos de una capa de hacer referencia a una geodatabase a una dirección URL de servicio.

  1. Importe los módulos necesarios.
import arcpy, pprint
  1. Especificar los detalles del proyecto.
aprx=arcpy.mp.ArcGISProject('current') map=aprx.listMaps()[0] l=map.listLayers()[0]
  1. Llame al diccionario connectionProperties.
pprint.pprint(l.connectionProperties)
  1. Especifique el diccionario de la fuente de datos (geodatabase) actual.
Find_dic = {'connection_info':{'database': 'C:\\arcgis\\TEST\\Editing\\Test.gdb'},'dataset': 'Springs','workspace_factory': 'File Geodatabase'}
  1. Especifique el diccionario de la dirección URL de servicio.
replace_dic = {'connection_info':{'url':r'https://services.arcgis.com/Wl7Y1m92PbjtJs5n/arcgis/rest/services/None/FeatureServer'},'dataset': '0','workspace_factory': 'FeatureService'}
  1. Llame a la función updateConnectionProperties() para actualizar la fuente de datos y guarde el archivo de proyecto.
l.updateConnectionProperties(Find_dic,replace_dic,True,False,False) aprx.save()

A continuación se muestra el script completo.

import arcpy, pprint aprx=arcpy.mp.ArcGISProject('current') map=aprx.listMaps()[0] l=map.listLayers()[0] pprint.pprint(l.connectionProperties) Find_dic = {'connection_info':{'database': 'C:\\arcgis\\TEST\\Editing\\Test.gdb'},'dataset': 'Springs','workspace_factory': 'File Geodatabase'} replace_dic = {'connection_info':{'url':r'https://services.arcgis.com/Wl7Y1m92PbjtJs5n/arcgis/rest/services/None/FeatureServer'},'dataset': '0','workspace_factory': 'FeatureService'} l.updateConnectionProperties(Find_dic,replace_dic,True,False,False) aprx.save()

El diccionario connectionProperties también puede actualizar la URL de servicio. En los siguientes pasos se describe cómo hacerlo.

  1. Siga los pasos del 1 a 3 de la sección anterior.
  2. Defina un parámetro para almacenar el diccionario.
conProp = l.connectionProperties
  1. Actualice la URL.
conProp['connection_info']['url'] = r'https://sampleserver6.arcgisonline.com/arcgis/rest/services/EmergencyFacilities/FeatureServer'
  1. Llame a la función updateConnectionProperties() para actualizar la fuente de datos y guarde el archivo de proyecto.
l.updateConnectionProperties(l.connectionProperties,conProp) aprx.save()

A continuación se muestra el script completo.

import arcpy, pprint p = arcpy.mp.ArcGISProject(r'C:\Projects\YosemiteNP\Yosemite.aprx') m = p.listMaps()[0] l = m.listLayers()[0] pprint.pprint(l.connectionProperties) conProp = l.connectionProperties conProp['connection_info']['url'] = r'https://sampleserver6.arcgisonline.com/arcgis/rest/services/EmergencyFacilities/FeatureServer' l.updateConnectionProperties(l.connectionProperties,conProp) aprx.save()

Id. de artículo: 000021613

Obtenga soporte con IA

Resuelva su problema rápidamente con el chatbot de inteligencia artificial de soporte de Esri.

Empieza a chatear ahora

Información relacionada

Descubrir más sobre este tema

Obtener ayuda de expertos en ArcGIS

Contactar con el soporte técnico

Empieza a chatear ahora

Ir a opciones de descarga