Agregar valor codificado al dominio (Administración de datos)
Resumen
Agrega un valor a una lista de valores codificados de dominio.
Uso
-
La administración de dominios comprende los siguientes pasos:
- Cree el dominio utilizando la herramienta Crear dominio.
- Establezca el rango de valores o agréguele valores para el dominio utilizando esta herramienta o la herramienta Establecer valor para dominio de rango.
- Asocie el dominio con una clase de entidad utilizando la herramienta Asignar dominio al campo.
-
El dominio de valor codificado incluye tanto el valor real que está almacenado en la base de datos (por ejemplo, 1 para pavimento) y una descripción de lo que significa el valor de código (por ejemplo, pavimento).
-
Un dominio de valor codificado que especifica un conjunto válido de valores para un atributo puede aplicarse a cualquier tipo de atributo: texto, numérico, fecha, y así sucesivamente. Por ejemplo, una lista de valores codificados para un atributo de texto puede incluir valores válidos de material de tubería: CL: tubería de hierro fundido; DL: tubería de hierro dúctil; ACP: tubería de amianto y concreto; o una lista de valores codificados puede incluir los valores numéricos que representen diámetros de tubería válidos: .75–3/4"; 2–2"; 24–24"; y 30–30".
-
Los dominios del espacio de trabajo también se pueden administrar en ArcCatalog o en la ventana Catálogo. Los dominios se pueden crear y modificar a través de la ficha Dominios en el cuadro de diálogo Propiedades de la base de datos.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_workspace |
La geodatabase que contiene el dominio que desea actualizar. | Workspace |
domain_name |
Nombre del dominio de atributo que tendrá un valor agregado a su lista de valores codificados. | String |
code |
Valor que se agregará a la lista de valores codificados del dominio especificado. | String |
code_description |
Una descripción de lo que representa el valor codificado. | String |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función AddCodedValueToDomain en el modo inmediato.
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.AddCodedValueToDomain_management("montgomery.gdb", "material", "1", "PVC")
Esta secuencia de comandos independiente utiliza la función AddCodedValueToDomain como parte de un flujo de trabajo para crear un dominio de atributos y otorgarle valores.
# Name: MakeDomain.py # Description: Create an attribute domain to constrain pipe material values # 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" # Set local parameters domName = "Material4" gdb = "montgomery.gdb" inFeatures = "Montgomery.gdb/Water/Distribmains" inField = "Material" # Process: Create the coded value domain arcpy.CreateDomain_management("montgomery.gdb", domName, "Valid pipe materials", "TEXT", "CODED") #Store all the domain values in a dictionary with the domain code as the "key" and the #domain description as the "value" (domDict[code]) domDict = {"CI":"Cast iron", "DI": "Ductile iron", "PVC": "PVC", \ "ACP": "Asbestos concrete", "COP": "Copper"} # Process: Add valid material types to the domain #use a for loop to cycle through all the domain codes in the dictionary for code in domDict: arcpy.AddCodedValueToDomain_management(gdb, domName, code, domDict[code]) # Process: Constrain the material value of distribution mains arcpy.AssignDomainToField_management(inFeatures, inField, domName) 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