Удалить домен из поля (Управление данными)
Резюме
Удаляет связи атрибутивного домена из класса пространственных объектов или поля таблицы.
Использование
-
Этот инструмент - противоположная операция функции Назначить домен полю (Assign Domain To Field). При удалении домена из поля удаляется связь между полем и атрибутивным доменом.
-
Когда домен будет удален из поля, правило проверки атрибутов для этого поля будет удалено из базы данных.
-
Тот же атрибутивный домен может быть объединен со сложными полями той же таблицы, классом пространственных объектов или подтипом так же, как со сложными таблицами и классами пространственных объектов. Удаление домена из поля не повлияет на другие связи домена.
-
Доменами рабочих областей можно также управлять в ArcCatalog или в окне Каталога. Домены можно создать и изменить на вкладке Домены (Domains) диалогового окна Свойства базы данных (Database Properties).
-
Можно использовать текущие слои карты для определения Входной таблицы.
-
В параметре Подтип (Subtype) кнопка Добавить значение (Add Value) используется только в ModelBuilder. В ModelBuilder, если предыдущий инструмент не был запущен или не существует его производных данных, параметр Подтип может не быть заполнен значениями. Кнопка Добавить значение (Add Value) позволяет добавить ожидаемое значение(я), так что вы можете завершить диалог Удалить домен из поля (Remove Domain From Field) и продолжить построение модели.
Синтаксис
Параметр | Объяснение | Тип данных |
in_table |
Входная таблица, содержащая атрибутивный домен, который будет удален. | Table View |
field_name |
Поле, которое больше не будет связано с атрибутивным доменом. | Field |
subtype_code [subtype_code,...] (дополнительно) | Выбирает код(ы) подтипов, которые больше не связаны с атрибутивным доменом. | String |
Пример кода
Пример скрипта Python для выполнения функции Удалить домен из поля (Remove Domain From Field) с запуском из окна Python в ArcGIS.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.RemoveDomainFromField_management("montgomery.gdb/water/distribmains", "DIAMETER")
Пример скрипта Python для рабочего процесса редактирование атрибутивного домена. Функция Удалить домен из поля (Remove Domain From Field).
# Name: RemoveDomainsExample.py
# Purpose: Update an attribute domain to constrain valid pipe material values
# Author: ESRI
# Import system modules
import arcpy, os
from arcpy import env
try:
# Set the workspace (to avoid having to type in the full path to the data every time)
env.workspace = "data"
# set local parameters
inFeatures = "Montgomery.gdb/Water/DistribMains"
inField = "MATERIAL"
dWorkspace = "Montgomery.gdb"
domName = "Material"
codedValue = "ACP: Asbestos concrete"
codeField = "TYPE"
descField = "DESRIPT"
# Process: Remove the constraint from the material field
arcpy.RemoveDomainFromField_management(inFeatures, inField)
# Edit the domain values
# Process: Remove a coded value from the domain
arcpy.DeleteCodedValueFromDomain_management(dWorkspace, domName, codedValue)
# Process: Create a table from the domain to edit it with ArcMap editing tools
arcpy.DomainToTable_management(dWorkspace, domname, dWorkspace + os.sep + domname , codeField, descField)
# Process: Delete the domain
arcpy.DeleteDomain_management(dWorkspace, domName)
# Edit the domain table outside of geoprocessing
# and then bring the domain back in with the TableToDomain process
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