Zusammenfassung
Legt die Domäne für ein bestimmtes Feld und optional für einen Subtype fest. Wenn kein Subtype angegeben ist, wird die Domäne nur dem angegebenen Feld zugewiesen.
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 Codierten Wert zu Domäne hinzufügen oder das Werkzeug Wert für Bereichsdomäne festlegen.
- Ordnen Sie der Domäne mithilfe dieses Werkzeugs eine Feature-Class zu.
Wenn eine Attributdomäne mit einer Feature-Class oder Tabelle verbunden ist, wird eine Attributvalidierungsregel in der Datenbank erstellt. Diese Attributvalidierungsregel beschreibt und beschränkt die gültigen Werte für einen Feldtyp.
Eine Attributdomäne kann mehreren Feldern in derselben Tabelle, Feature-Class oder demselben Subtype und mehreren Feldern in mehreren Tabellen und Feature-Classes zugeordnet sein.
Der Parameter Eingabetabelle nimmt Feature-Layer oder Tabellensichten an.
Syntax
arcpy.management.AssignDomainToField(in_table, field_name, domain_name, {subtype_code})
Parameter | Erklärung | Datentyp |
in_table | Der Name der Tabelle oder Feature-Class mit dem Feld, dem eine Domäne zugewiesen wird | Table View |
field_name | Der Name des Feldes, dem eine Domäne zugewiesen wird | Field |
domain_name | Der Name einer Geodatabase-Domäne, die dem Feldnamen zugewiesen wird. Alle verfügbaren Domänen werden automatisch geladen. | String |
subtype_code [subtype_code,...] (optional) | Der Subtype-Code, dem eine Domäne zugewiesen wird. | String |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_table | Die aktualisierte Eingabetabelle. | Tabellensicht |
Codebeispiel
Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion AssignDomainToField im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.AssignDomainToField_management("montgomery.gdb/Landbase/Parcels",
"ZONING_S", "ZoningFields", "1: government")
Im folgenden Skript wird die Funktion AssignDomainToField als Teil eines Workflows verwendet, um eine Attributdomäne zu erstellen, dieser Werte zuzuweisen und die Domäne einem Feld zuzuweisen.
# Name: MakeDomain.py
# Description: Create an attribute domain to constrain pipe material values
# 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"
# 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)
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja