Resumen
Agrega un nuevo subtipo a los subtipos de la tabla de entrada.
Uso
En la tabla o clase de entidad, se debe asignar un campo como campo de subtipo antes de que se puedan agregar subtipos nuevos. Esto se hace con la herramienta Establecer campo de subtipo.
Si agrega un subtipo cuyo código ya existe, se ignorará el subtipo nuevo.
Si necesita cambiar la descripción de un subtipo existente, primero deberá quitar el subtipo, después agregar un subtipo nuevo con el mismo código y una nueva descripción.
Los subtipos de una tabla o clase de entidad también se pueden administrar en ArcCatalog. Los subtipos se pueden crear y modificar con la pestaña Propiedades de subtipo en el cuadro de diálogo Propiedades del dataset.
Sintaxis
AddSubtype_management (in_table, subtype_code, subtype_description)
Parámetro | Explicación | Tipo de datos |
in_table | Tabla o clase de entidad que contiene la definición de subtipo que se actualizará | Table View |
subtype_code | Un valor entero único para el subtipo que se agregará | Long |
subtype_description | Una descripción del código de subtipo | String |
Ejemplo de código
Ejemplo de Agregar subtipo (ventana de Python)
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función AddSubtype en el modo inmediato.
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")
Ejemplo 2 de Agregar subtipo (secuencia de comandos independiente)
La siguiente secuencia de comandos independiente demuestra cómo utilizar la función AddSubtype como parte de un flujo de trabajo para agregar subtipos a un campo.
# Name: ManageSubtypes.py
# Purpose: Create a subtype definition
# Author: ESRI
# Import system modules
import arcpy
try:
# 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 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 as err:
print(err.args[0])
Entornos
Información sobre licencias
- ArcGIS for Desktop Basic: Sí
- ArcGIS for Desktop Standard: Sí
- ArcGIS for Desktop Advanced: Sí