Summary
Defines the field in the input table or feature class that stores the subtype codes.
Usage
A feature class or table can have only one subtype field.
After a subtype field is set, subtype codes can be added to the feature class or table using the Add Subtype tool.
The subtypes of a feature class or table can also be managed in ArcCatalog. Subtypes can be created and modified using the Subtypes Property page on the dataset's Properties dialog box.
This tool can also be used to clear the subtype field if a subtype field is no longer needed.
Syntax
arcpy.management.SetSubtypeField(in_table, {field}, {clear_value})
Parameter | Explanation | Data Type |
in_table | The input table or feature class that contains the field to set as a subtype field. | Table View |
field (Optional) | The integer field that will store the subtype codes. | Field |
clear_value (Optional) | Specifies whether to clear the subtype field.
| Boolean |
Derived Output
Name | Explanation | Data Type |
out_table | The updated table or feature class. | Table View |
Code sample
SetSubtypeField example (Python window)
The following Python window script demonstrates how to use the SetSubtypeField function in immediate mode.
import arcpy
arcpy.env.workspace = "C:/data/Montgomery.gdb"
arcpy.SetSubtypeField_management("water/fittings", "TYPECODE")
SetSubtypeField example 2 stand-alone script)
The following stand-alone script demonstrates how to use the SetSubtypeField function as part of a workflow to add subtypes to a field.
# Name: ManageSubtypes.py
# Purpose: Create a subtype definition
# Import system modules
import arcpy
# Set the workspace (to avoid having to type in the full path to the data every
# time)
arcpy.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 subtype 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", "")
SetSubtypeField example 3 (Python window)
The following Python window script demonstrates how to use the SetSubtypeField function in immediate mode to clear the subtype field.
import arcpy
arcpy.env.workspace = "C:/data/Montgomery.gdb"
arcpy.SetSubtypeField_management("water/fittings", "", "TRUE")
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes