Назначить домен полю (Управление данными)

Сводка

Устанавливает домен для конкретного поля класса объектов или для поля подтипа. Если подтипы не определены, домен будет присвоен указанному полю.

Использование

  • Управление доменами включает следующие шаги:

    1. Создать домен с помощью инструмента Создать домен (Create Domain).
    2. Добавить значения или установить диапазон значений с помощью инструмента Добавить кодированное значение к домену или инструмента Установить значение для интервального домена.
    3. Связать домен с классом пространственных объектов, используя этот инструмент.
  • Если атрибутивный домен связан с таблицей или классом пространственных объектов, в базе данных создается правило проверки атрибутов. Это правило проверки атрибутов описывает и ограничивает корректные значения для поля соответствующего типа.

  • Один атрибутивный домен может быть связан с несколькими полями в одной таблице, классе пространственных объектов или подтипе, а также в нескольких таблицах и классах пространственных объектов.

  • Для определения параметра Входная таблица (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

Обновленная входная таблица.

Представление таблицы

Пример кода

AssignDomainToField, пример 1 (окно Python)

Пример скрипта окна Python для использования функции AssignDomainToField в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.AssignDomainToField_management("montgomery.gdb/Landbase/Parcels", 
                                     "ZONING_S", "ZoningFields", "1: government")
AssignDomainToField, пример 2 (автономный скрипт)

В следующем скрипте применяется функция 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)

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы