Subtype-Feld festlegen (Data Management)
Zusammenfassung
Definiert das Feld in der Eingabe-Tabelle oder -Feature-Class, in dem die Subtype-Codes gespeichert sind.
Verwendung
-
Eine Feature-Class oder Tabelle kann nur über ein Subtype-Feld verfügen.
-
Nachdem ein Subtype-Feld festgelegt wurde, können der Feature-Class oder Tabelle mit dem Werkzeug Subtype hinzufügen Subtype-Codes hinzugefügt werden.
-
Sie können die Subtypes einer Feature-Class oder Tabelle auch in ArcCatalog verwalten. Subtypes werden im Dialogfeld "Eigenschaften" des Datasets auf der Registerkarte "Subtypes" erstellt und geändert.
Syntax
Parameter | Erläuterung | Datentyp |
in_table |
Die Eingabe-Tabelle oder Feature-Class mit dem Feld, für das ein Subtype-Code festgelegt werden soll. | Table View |
field |
Ganzzahlfeld, in dem die Subtype-Codes gespeichert werden. | Field |
Codebeispiel
Mit dem folgenden Skript im Python-Fenster wird veranschaulicht, wie die Funktion "SetSubtypeField" im unmittelbaren Modus verwendet wird.
import arcpy from arcpy import env env.workspace = "C:/data/Montgomery.gdb" arcpy.SetSubtypeField_management("water/fittings", "TYPECODE")
Mit dem folgenden eigenständigen Skript wird veranschaulicht, wie Subtypes mit der Funktion "SetSubtypeField" einem Feld hinzugefügt werden.
# Name: ManageSubtypes.py # Purpose: Create a subtype definition # Author: ESRI # Import system modules import arcpy from arcpy import env try: # Set the workspace (to avoid having to type in the full path to the data every time) env.workspace = "C:/data/Montgomery.gdb" # Set local parameters inFeatures = "water/fittings" # Process: Set Subtype Field... arcpy.SetSubtypeField_management(inFeatures, "TYPECODE") # Process: Add Subtypes... # Store all the suptype values in a dictionary with the subtype code as the "key" and the # subtype description as the "value" (stypeDict[code]) stypeDict = {"0": "Unknown", "1": "Bend", "2": "Cap", "3": "Cross", "4": "Coupling",\ "5": "Expansion joint", "6": "Offset", "7":"Plug", "8": "Reducer",\ "9": "Saddle", "10": "Sleeve", "11": "Tap", "12": "Tee", "13": "Weld", "14": "Riser"} # use a for loop to cycle through the dictionary for code in stypeDict: arcpy.AddSubtype_management(inFeatures, code, stypeDict[code]) # Process: Set Default Subtype... arcpy.SetDefaultSubtype_management(inFeatures, "4") except Exception, e: # If an error occurred, print line number and error message import traceback, sys tb = sys.exc_info()[2] print "Line %i" % tb.tb_lineno print e.message