Codierten Wert zu Domäne hinzufügen (Data Management)
Zusammenfassung
Fügt einen Wert in die Liste codierter Werte einer Domäne ein.
Verwendung
-
Die Verwaltung von Domänen umfasst folgende Schritte:
- Erstellen Sie die Domäne mit dem Werkzeug Domäne erstellen.
- Fügen Sie der Domäne Werte hinzu oder legen Sie den Wertebereich fest. Verwenden Sie hierfür das Werkzeug Wert für Bereichsdomäne festlegen.
- Ordnen Sie der Domäne eine Feature-Class zu. Verwenden Sie hierfür das Werkzeug Domäne zu Feld zuweisen.
-
Die Domäne mit codierten Werten enthält den tatsächlichen Wert, der in der Datenbank gespeichert ist (z. B. 1 für Straßenbelag), sowie eine Beschreibung der Bedeutung des codierten Wertes (z. B. "Straßenbelag").
-
Eine Domäne mit codierten Werten, mit der eine Gruppe gültiger Werte für ein Attribut festgelegt wird, kann auf alle Attributtypen (Text, Zahl, Datum usw.) angewendet werden. Eine Liste codierter Werte für ein Textattribut könnte zum Beispiel gültige Werte für Rohrmaterialien enthalten: CL – Gusseisenrohr, DL – Kugelgraphitrohr, ACP – Asbestbetonrohr. Die Werteliste kann auch numerische Werte enthalten, die für gültige Rohrdurchmesser stehen: .0,75 – 3/4"; 2 – 2"; 24 – 24" und 30 – 30".
-
Sie können Workspace-Domänen auch in ArcCatalog oder dem Fenster Katalog verwalten. Domänen werden im Dialogfeld Eigenschaften: Datenbank auf der Registerkarte Domänen erstellt und bearbeitet.
Syntax
Parameter | Erläuterung | Datentyp |
in_workspace |
Die Geodatabase, in der sich die zu aktualisierende Domäne befindet. | Workspace |
domain_name |
Der Name der Attributdomäne, deren Liste mit codierten Werten ein Wert hinzugefügt wird. | String |
code |
Der Wert, der der Liste mit codierten Werten für die angegebene Domäne hinzugefügt wird. | String |
code_description |
Eine Beschreibung des codierten Wertes. | String |
Codebeispiel
Im folgenden Skript im Python-Fenster wird veranschaulicht, wie Sie die Funktion "AddCodedValueToDomain" im unmittelbaren Modus verwenden.
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.AddCodedValueToDomain_management("montgomery.gdb", "material", "1", "PVC")
In diesem eigenständigen Skript wird die Funktion "AddCodedValueToDomain" als Teil eines Workflows verwendet, um eine Attributdomäne zu erstellen und dieser Werte zuzuweisen.
# 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