Сводка
Устанавливает домен для конкретного поля класса объектов или для поля подтипа. Если подтипы не определены, домен будет присвоен указанному полю.
Использование
Управление доменами включает следующие шаги:
- Создать домен с помощью инструмента Создать домен (Create Domain).
- Добавить значения или установить диапазон значений с помощью инструмента Добавить кодированное значение к домену или инструмента Установить значение для интервального домена.
- Связать домен с классом пространственных объектов, используя этот инструмент.
Если атрибутивный домен связан с таблицей или классом пространственных объектов, в базе данных создается правило проверки атрибутов. Это правило проверки атрибутов описывает и ограничивает корректные значения для поля соответствующего типа.
Один атрибутивный домен может быть связан с несколькими полями в одной таблице, классе пространственных объектов или подтипе, а также в нескольких таблицах и классах пространственных объектов.
Для определения параметра Входная таблица (Input Table)можно использовать слои пространственных объектов или представления таблиц.
Синтаксис
arcpy.management.AssignDomainToField(in_table, field_name, domain_name, {subtype_code})
Parameter | Объяснение | Тип данных |
in_table | Имя таблицы или класса пространственных объектов, содержащего поле, которому будет назначен домен. | Table View |
field_name | Имя поля, которому будет назначен домен. | Field |
domain_name | Имя домена базы геоданных, который будет назначен выбранному полю. Доступные домены подгружаются автоматически. | String |
subtype_code [subtype_code,...] (Дополнительный) | Код подтипа, которому будет назначен домен. | String |
Производные выходные данные
Name | Объяснение | Тип данных |
out_table | Обновленная входная таблица. | Представление таблицы |
Пример кода
Пример скрипта окна Python для использования функции AssignDomainToField в режиме прямого запуска.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.AssignDomainToField_management("montgomery.gdb/Landbase/Parcels",
"ZONING_S", "ZoningFields", "1: government")
В следующем скрипте применяется функция AssignDomainToField как часть рабочего процесса создания атрибутивного домена, назначения значений в домен и присваивания домена полю
# 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)
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да