Español

Cómo: Imprimir la lista de clases de entidad para una geodatabase de ArcSDE

Resumen

Las instrucciones proporcionadas describen cómo imprimir una lista de clases de entidad para una geodatabase de ArcSDE.

Procedimiento

La ejecución del siguiente script de Python produce una lista con todas las clases de entidad de la geodatabase SDE elegida.

  1. Abra ArcMap.

  2. Haga clic en el botón de la ventana de Python.

    [O-Image] PythonWindow2
 
Código:

import arcpy 
from arcpy import env 
import os 

# Establecer conexión para el espacio de trabajo 

env.workspace = r"Database Connections\Child Database"

#call ListFeatureClass function
fcList = arcpy.ListFeatureClasses()

# Imprimir nombre de la clase de entidad (fc) actual:
for fc in fcList:
    print fc

  1. Edite el script siguiente. Seleccione el nombre del archivo de conexión SDE o la ubicación de la conexión de la geodatabase. Use ## para comentar la sección no utilizada.
Hay dos formas de ingresar el espacio de trabajo de la base de datos en el script de Python:
  • Proporcione la ubicación de la ruta de conexión de base de datos para la geodatabase. Copie la ruta desde la ventana de ArcCatalog.
[O-Image] Location777
  • Proporcione el nombre de archivo de la ruta de conexión SDE de la geodatabase. Haga clic con el botón derecho en la conexión de datos seleccionada, haga clic en Propiedades y en la pestaña General, extraiga la ruta del campo Nombre. Copie la ruta desde la ventana de ArcCatalog.
[O-Image] DatabaseProperties
  1. Pegue la ruta copiada anteriormente en el script de Python.
[O-Image] CopynPaste
  1. Pegue todo el script anterior en la ventana de Python en ArcMap y pulse Intro. Se muestra la lista de clases de entidad de ArcSDE.
  2. Para imprimir las clases de entidad de ArcSDE en un archivo, consulte el código siguiente:
Código:
import arcpy 
from arcpy import env 
import os 

# Establecer el espacio de trabajo de la función ListFeatureClass 
env.workspace = r"Database Connections\Child Database 1017857.sde"
# Usar la función ListFeatureClasses para devolver una lista de todas las fc (clases de entidad) en la geodatabase sde: 
fcList = arcpy.ListFeatureClasses() 

# Escribir el nombre de la fc actual en archivo de texto:
txtFile = open(r"C:\data\FeatureClassList.txt","w")
for fc in fcList:
    print fc

    # Escribir mensajes en archivo de texto
    txtFile.write(fc)
    txtFile.write (os.linesep)

#cerrar archivo de texto
txtFile.close()

print "done"
Nota:
Para convertir este script en un servicio de geoprocesamiento, reemplace el parámetro de espacio de trabajo ambiental de la siguiente manera:
env.Workspace = arcpy.GetParameterAsText(0)