Agregar subtipo (Administración de datos)
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
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
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")
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 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