Définir le champ de sous-type (Gestion des données)

Synthèse

Définit le champ dans la table ou la classe d'entités en entrée qui stocke les codes de sous-type.

Utilisation

  • Une classe d'entités ou une table ne peut avoir qu'un seul champ de sous-type.

  • Une fois un champ de sous-type défini, les codes de sous-type peuvent être ajoutés à la classe d'entités ou à la table à l'aide de l'outil Ajouter un sous-type.

  • Vous pouvez également afficher et gérer des sous-types dans Vue des sous-types qui apparaît en cliquant sur le bouton Sous-types dans la section Création du ruban Données ou en cliquant sur le bouton Sous-types du ruban Vue des champs.

  • Cet outil peut également servir à effacer un champ de sous-type s’il devient inutile.

Paramètres

ÉtiquetteExplicationType de données
Table en entrée

Classe d’entités ou table en entrée qui contient le champ à définir comme champ de sous-type.

Table View
Nom de champ
(Facultatif)

Champ d’entier qui stocke les codes de sous-type.

Field
Supprimer la valeur
(Facultatif)

Indique si le champ de sous-type doit être effacé ou non.

  • Activé : le champ de sous-type va être effacé (défini sur Null).
  • Désactivé : le champ de sous-type ne va pas être effacé. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Table en entrée actualisée

Table ou classe d’entités mise à jour.

Vue tabulaire

arcpy.management.SetSubtypeField(in_table, {field}, {clear_value})
NomExplicationType de données
in_table

Classe d’entités ou table en entrée qui contient le champ à définir comme champ de sous-type.

Table View
field
(Facultatif)

Champ d’entier qui stocke les codes de sous-type.

Field
clear_value
(Facultatif)

Indique si le champ de sous-type doit être effacé ou non.

  • CLEAR_SUBTYPE_FIELDLe champ de sous-type va être effacé (défini sur Null).
  • DO_NOT_CLEARLe champ de sous-type ne va pas être effacé. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

NomExplicationType de données
out_table

Table ou classe d’entités mise à jour.

Vue tabulaire

Exemple de code

Exemple d’utilisation de l’outil SetSubtypeField (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction SetSubtypeField en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data/Montgomery.gdb"
arcpy.SetSubtypeField_management("water/fittings", "TYPECODE")
Exemple 2 d’utilisation de l’outil SetSubtypeField (script autonome)

Le script autonome suivant montre comment utiliser la fonction SetSubtypeField dans le cadre d’un processus pour ajouter des sous-types à un champ.

# Name: ManageSubtypes.py
# Purpose: Create a subtype definition
# 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/Montgomery.gdb"
# Set local parameters
inFeatures = "water/fittings"
# Process: Set Subtype Field...
arcpy.SetSubtypeField_management(inFeatures, "TYPECODE")
# Process: Add Subtypes...
# Store all the subtype values in a dictionary with the subtype code as the 
# "key" and the subtype description as the "value" (stypeDict[code])
stypeDict = {"0": "Unknown", "1": "Bend", "2": "Cap", "3": "Cross", 
             "4": "Coupling", "5": "Expansion joint", "6": "Offset", "7":"Plug", 
             "8": "Reducer", "9": "Saddle", "10": "Sleeve", "11": "Tap", 
             "12": "Tee", "13": "Weld", "14": "Riser"} 
    
# Use a for loop to cycle through the dictionary
for code in stypeDict:
    arcpy.AddSubtype_management(inFeatures, code, stypeDict[code])     
# Process: Set Default Subtype...
arcpy.SetDefaultSubtype_management(inFeatures, "4", "")
Exemple 3 d’utilisation de l’outil SetSubtypeField (fenêtre Python)

Le script de fenêtre Python suivant illustre l’utilisation de la fonction SetSubtypeField en mode immédiat pour effacer le champ de sous-type.

import arcpy
arcpy.env.workspace = "C:/data/Montgomery.gdb"
arcpy.SetSubtypeField_management("water/fittings", "", "TRUE")

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes