Subtype hinzufügen (Data Management)
Zusammenfassung
Fügt den Subtypes in der Eingabetabelle einen neuen Subtype hinzu.
Verwendung
-
Bevor Sie neue Subtypes hinzufügen können, müssen Sie zunächst ein Feld aus der Feature-Class oder Tabelle als Subtype-Feld festlegen. Verwenden Sie hierfür das Werkzeug Subtype-Feld festlegen.
-
Wenn Sie einen Subtype hinzufügen, dessen Code bereits vorhanden ist, wird der neue Subtype ignoriert.
-
Wenn Sie die Beschreibung eines vorhandenen Subtypes ändern möchten, müssen Sie zunächst den Subtype entfernen und anschließend einen neuen Subtype mit demselben Code und einer neuen Beschreibung hinzufügen.
-
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 Feature-Class oder Tabelle mit der zu aktualisierenden Subtype-Definition. | Table View |
subtype_code |
Ein eindeutiger Ganzzahlwert für den hinzuzufügenden Subtype. | Long |
subtype_description |
Eine Beschreibung des Subtype-Codes. | String |
Codebeispiel
Mit dem folgenden Skript im Python-Fenster wird veranschaulicht, wie die Funktion "AddSubtype" im unmittelbaren Modus verwendet wird.
import arcpy
from arcpy import env
env.workspace = "C:/data/Montgomery.gdb"
arcpy.SetSubtypeField_management("water/fittings", "TYPECODE")
arcpy.AddSubtype_management("water/fittings", "1", "Bend")
Mit dem folgenden eigenständigen Skript wird veranschaulicht, wie einem Feld mit der Funktion "AddSubtype" Subtypes 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