Skip To Content

Nombres de campo restringidos (configuración del entorno)

Las herramientas que distinguen el entorno de Nombres de campo restringidos utilizan esta configuración para distinguir entre nombres de campo restringidos o no restringidos. Los nombres de campo restringidos son los nombres de los campos en una clase de entidad o tabla que tienen el nombre de la clase de entidad o tabla de origen adjuntada en el nombre de campo. Esta configuración es relevante cuando se trabaja con datos unidos.

Notas de uso

  • La estructura predeterminada de los nombres de campo de la tabla de salida restringida es tableName.fieldName. Cuando no están restringidos, a los campos en la tabla o clase de entidad de salida siempre se les asigna un nombre con el formato fieldName.
  • En las instancias donde los nombres de campo restringidos pueden superar el ancho de nombre de campo permitido, establezca el entorno como UNQUALIFIED, por ejemplo, al unir shapefiles. Los campos de shapefiles se truncan a ocho caracteres.

Cuando las asignaciones de campos se incluyen en los parámetros de una herramienta, como lo están en muchas herramientas de la caja de herramientas de Conversión, los nombres de campo son automáticamente UNQUALIFIED, por lo que no es necesario establecer este entorno.

Sintaxis de cuadro de diálogo

  • Activada: el nombre de campo de salida incluye el nombre de la tabla. Esta es la opción predeterminada.
  • Desactivada: el nombre de campo de salida no incluirá el nombre de la tabla.

Sintaxis de secuencia de comandos

arcpy.env.qualifiedFieldNames = qualified_field_names

qualified_field_namesExplicación

Verdadero

El nombre de campo de salida incluye el nombre de la tabla. Esta opción también se puede establecer con la palabra clave QUALIFIED. Esta es la opción predeterminada.

Falso

El nombre de campo de salida no incluirá el nombre de la tabla. Esta opción también se puede establecer con la palabra clave UNQUALIFIED.

sintaxis de qualifiedFieldNames
# 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])

Temas relacionados