Deutsch

How To: Drucken der Liste von Feature-Classes für eine ArcSDE-Geodatabase

Zusammenfassung

Mit diesen Anweisungen wird beschrieben, wie eine Liste von Feature-Classes für eine ArcSDE-Geodatabase gedruckt wird.

Vorgehensweise

Durch die Ausführung des folgenden Python-Skripts wird eine Liste aller Feature-Classes aus der ausgewählten SDE-Geodatabase erzeugt.

  1. Öffnen Sie ArcMap.

  2. Klicken Sie auf die Schaltfläche Python-Fenster.

    [O-Image] PythonWindow2
 
Code:

import arcpy 
from arcpy import env 
import os 

# Establish connection for workspace 

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

#call ListFeatureClass function
fcList = arcpy.ListFeatureClasses()

# Print the name of the current fc:
for fc in fcList:
    print fc

  1. Bearbeiten Sie das folgende Skript. Wählen Sie den Namen der SDE-Verbindungsdatei oder den Speicherort der Geodatabase-Verbindung aus. Kommentieren Sie mit ## den nicht verwendeten Abschnitt aus.
Es gibt zwei Möglichkeiten, den Datenbank-Workspace in das Python-Skript einzugeben:
  • Geben Sie den Speicherort des Datenbankverbindungspfades für die Geodatabase an. Kopieren Sie den Pfad aus dem ArcCatalog-Fenster.
[O-Image] Location777
  • Geben Sie den Dateinamen des SDE-Verbindungspfades der Geodatabase an. Klicken Sie mit der rechten Maustaste auf die ausgewählte Datenverbindung, klicken Sie auf Eigenschaften, und extrahieren Sie auf der Registerkarte Allgemein den Pfad aus dem Feld Name. Kopieren Sie den Pfad aus dem ArcCatalog-Fenster.
[O-Image] DatabaseProperties
  1. Fügen Sie den oben kopierten Pfad in das Python-Skript ein.
[O-Image] CopynPaste
  1. Fügen Sie das ganze obige Skript in das Python-Fenster in ArcMap ein, und drücken Sie die EINGABETASTE. Die Liste der ArcSDE-Feature-Classes wird angezeigt.
  2. Um die ArcSDE-Feature-Classes in eine Datei auszugeben, verwenden Sie den folgenden Code:
Code:
import arcpy 
from arcpy import env 
import os 

# Set the workspace for the ListFeatureClass function 
env.workspace = r"Database Connections\Child Database 1017857.sde"
# Use the ListFeatureClasses function to return a list of all fc's in the sde gdb: 
fcList = arcpy.ListFeatureClasses() 

# Write the name of the current fc in text file:
txtFile = open(r"C:\data\FeatureClassList.txt","w")
for fc in fcList:
    print fc

    # Write messages to a Text File
    txtFile.write(fc)
    txtFile.write (os.linesep)

#close text file
txtFile.close()

print "done"
Hinweis:
Um dieses Skript in einen Geoverarbeitungsservice zu konvertieren, ersetzen Sie den Umgebungs-Workspace-Parameter wie folgt:
env.Workspace = arcpy.GetParameterAsText(0)