ERROR

No se puede abrir la tabla para Cargar

Last Published: April 25, 2020

Mensaje de error

En ArcMap, al ejecutar el script de Python para acceder a la tabla de atributos de un servicio de mapas agregado desde ArcGIS Server, aparece el siguiente error:

Error:
No se puede abrir la tabla para Cargar
User-added image

Causa

Este error se produce porque se utilizan servicios de mapas para acceder a la tabla de atributos. Los servicios de mapas no permiten acceder a los datos y se utilizan para mostrar la representación del mapa.

Solución o solución alternativa

Utilice una de las siguientes opciones para corregir el problema:
  • Utilice un servicio de entidades para acceder a los datos de la tabla de atributos en ArcMap. Los datos de la tabla de atributos obtenidos se pueden editar según el cálculo o el análisis realizados. Para obtener más información, consulte ArcGIS Server: ¿Qué es un servicio de entidades?
    Nota:
    No obstante, el servicio de entidades solo se puede editar si el propietario del servicio de entidades permite la edición. Para obtener más información, consulte Permisos de servicio de entidades y rastreo del editor.
  • Cree un script de Python según las entidades consultadas en el extremo REST del servicio de mapas. Guarde la respuesta como un archivo JSON y utilice ArcPy para convertir el archivo JSON en una capa de entidades que se guarda en una geodatabase local. El script de Python se utiliza para acceder al servicio de mapas.
    Nota:
    La consulta solo se puede ejecutar si el servicio de entidades tiene una operación compatible con consultas. Para obtener más información, consulte API REST de ArcGIS: Consulta (Servicio de mapas\Capa).
    1. Consulte las entidades deseadas con los datos de la tabla de atributos en el extremo REST del servicio de mapas en formato JSON.
      1. Especifique la cláusula WHERE con las entidades deseadas.
      2. Si lo desea, especifique el parámetro Campos de salida para limitar los campos en el archivo JSON resultante.
    2. Cree un script de Python para insertar todas las entidades con los datos de la tabla de atributos de la consulta para devolverlos en el formato JSON.
#importe los módulos requeridos
import requests
import urllib
import arcpy
import os
url = "[URL de consulta]"

#Especifique la cláusula WHERE y los campos de salida
where ="[nombre de campo de entrada ('valor de campo')]"
fields = "[campos de salida devueltos por la consulta]"

#Declare la parte de la solicitud de la URL web en un parámetro
params = urllib.parse.urlencode({'where' : where, 'outFields' : fields, 'f' : 'json' })

#Declare la respuesta de la página web
response = requests.get(url+params)

#Recupere el JSON como texto
jsn = response.text

#Establezca el espacio de trabajo del entorno
arcpy.env.workspace = "C:\\temp

#Guarde el JSON en un archivo
file = open("C:\\temp\\myFeatures.json", "a")
file.write(jsn)
file.close()

#Convierta el archivo JSON llamado "myFeatures" y una la carpeta de almacenamiento de la base de datos actual a la base de datos deseada
arcpy.JSONToFeatures_conversion("C:\\temp\\myFeatures.json", os.path.join("C:\\temp\\Data.gdb", "myfeatures"))

Id. de artículo:000018476

Obtener ayuda de expertos en ArcGIS

Contactar con soporte técnico

Descargar la aplicación de soporte de Esri

Ir a las opciones de descarga