Инструменты, использующие параметр среды Поддержка полноценных имен полей (Qualified Field Names), будут применять этот параметр для различения полноценных и неполноценных имен полей. Полноценные имена полей – это имена полей класса пространственных объектов или таблицы, которые имеют имя исходного класса пространственных объектов или таблицы, добавленные в само имя поля. Этот параметр важен при работе с соединенными данными.
Примечания по использованию
- По умолчанию, структура названия полей определенной выходной таблицы выглядит так: tableName.fieldName. Если таблица не определена, полям в выходной таблице или классе пространственных объектов всегда будет присвоено имя в формате fieldName.
- В экземплярах, где поддерживаемые полноценные имена могут превысить допустимую величину названия поля, вам следует установить параметр как UNQUALIFIED, например, это может пригодиться при соединении шейп-файлов. Длина названия полей шейп-файла ограничивается 8 символами.
Если соответствия полей включены в параметры инструмента, как и для многих инструментов в наборе Конвертация (Conversion), то имена полей автоматически будут UNQUALIFIED, поэтому нет необходимости устанавливать этот параметр.
Синтаксис диалога
- Отмечено – выходные имена полей будут содержать имя таблицы. Это значение используется по умолчанию.
- Не отмечено – выходные имена полей не будут содержать имя таблицы.
Синтаксис скриптов
arcpy.env.qualifiedFieldNames = qualified_field_names
qualified_field_names | Описание |
---|---|
True | Выходные имена полей содержат имя таблицы. Также это можно установить, используя ключевое слово QUALIFIED. Это значение используется по умолчанию. |
False | Выходные имена полей не будут содержать имя таблицы. Также это можно установить, используя ключевое слово UNQUALIFIED. |
# Name: addjoin.py
# Purpose: Join a table to a featureclass and have the output
# unqualified
# Import system modules
import arcpy
import sys
try:
# Set environment settings
arcpy.env.workspace = "C:/data"
arcpy.env.qualifiedFieldNames = False
# Set local variables
inFeatures = "Habitat_Analysis.gdb/vegtype"
layerName = "veg_layer"
joinTable = "vegtable.dbf"
joinField = "HOLLAND95"
expression = "vegtable.HABITAT = 1"
outFeature = "Habitat_Analysis.gdb/vegjoin"
# Create a feature layer from the vegtype featureclass
arcpy.MakeFeatureLayer_management(inFeatures, layerName)
# Join the feature layer to a table
arcpy.AddJoin_management(layerName, joinField, joinTable, joinField)
# Copy the layer to a new permanent feature class
# Output fields are unqualified, so the field name will
# not contain the origin table
arcpy.CopyFeatures_management(layerName, outFeature)
except Exception:
e = sys.exc_info()[1]
print(e.args[0])