Skip To Content

Noms de champs qualifiés (paramètre d'environnement)

Les outils dédiés à l'environnement Noms de champs qualifiés utilisent ce paramètre pour faire la distinction entre les noms de champs qualifiés et non qualifiés. Les noms de champs qualifiés sont les noms des champs d'une classe d'entités ou d'une table auxquels est ajouté le nom de la classe ou de la table d'origine. Ce paramètre est approprié dans le cadre de l'utilisation de données jointes.

Remarques sur l'utilisation

  • La structure d'appellation par défaut des champs qualifiés de la table en sortie est tableName.fieldName. S'agissant des champs non qualifiés de la classe d'entités ou de la table en sortie, le format utilisé est toujours fieldName.
  • Dans les instances où les noms de champ qualifiés peuvent dépasser la largeur de nom de champ autorisée, vous devez définir l'environnement sur UNQUALIFIED, par exemple, lors de la jointure de fichiers de formes. Les champs de fichier de formes sont tronqués à huit caractères.

Lorsque des appariements de champs sont inclus dans les paramètres d'un outil, comme c'est le cas dans de nombreux outils de la boîte à outils Conversion, les noms des champs sont automatiquement NON QUALIFIES ; il n'est donc nul besoin de définir cet environnement.

Syntaxe de la boîte de dialogue

  • Coché – Le nom de champ en sortie inclut le nom de la table. Il s'agit de l'option par défaut.
  • Non coché – Le nom de champ en sortie n'inclut pas le nom de la table.

Syntaxe de script

arcpy.env.qualifiedFieldNames = qualified_field_names

qualified_field_namesExplication

Vrai

Le nom de champ en sortie inclut le nom de la table. Ce paramètre peut également être défini à l'aide du mot-clé QUALIFIED. Il s'agit de l'option par défaut.

Faux

Le nom de champ en sortie n'inclut pas le nom de la table. Ce paramètre peut également être défini à l'aide du mot-clé UNQUALIFIED.

Syntaxe 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])

Rubriques connexes