Ajouter une valeur codée à un domaine (Gestion des données)

Synthèse

Ajoute une valeur à une liste de valeurs précodées d'un domaine.

Utilisation

  • La gestion de domaine comprend les étapes suivantes :

    1. Créer le domaine à l'aide de l'outil Créer un domaine.
    2. Ajouter des valeurs ou définir la plage de valeurs pour le domaine à l’aide de cet outil ou de l’outil Définir les valeurs d’un domaine par plage.
    3. Associer le domaine à une classe d'entités à l'aide de l'outil Attribuer un domaine à un champ.
  • Le domaine de valeurs précodées inclut la valeur réelle stockée dans la base de données (par exemple, 1 pour la chaussée) et une description de la signification de la valeur du code (par exemple, chaussée).

  • Un domaine de valeurs précodées qui spécifie un ensemble valide de valeurs pour un attribut peut s’appliquer à tout type d’attribut - texte, numérique, date, etc. Par exemple, une liste de valeurs précodées pour un attribut de texte peut comprendre les valeurs valides des matériaux des canalisations : CL – canalisation en fonte, DL – canalisation en fonte ductile ou ACP – canalisation en amiante-béton. Une liste de valeurs précodées peut aussi comprendre les valeurs numériques qui représentent les diamètres de canalisation valides : .75–3/4" ; 2–2" ; 24–24" et 30–30".

Paramètres

ÉtiquetteExplicationType de données
Espace de travail en entrée

Géodatabase contenant le domaine à mettre à jour.

Workspace
Nom du domaine

Nom du domaine attributaire dont la liste de valeurs précodées se voit ajouter une valeur.

String
Valeur du code

Valeur à ajouter à la liste de valeurs précodées du domaine spécifié.

String
Description du code

Description de ce que la valeur précodée représente.

String

Sortie obtenue

ÉtiquetteExplicationType de données
Espace de travail mis à jour

Espace de travail mis à jour

Espace de travail

arcpy.management.AddCodedValueToDomain(in_workspace, domain_name, code, code_description)
NomExplicationType de données
in_workspace

Géodatabase contenant le domaine à mettre à jour.

Workspace
domain_name

Nom du domaine attributaire dont la liste de valeurs précodées se voit ajouter une valeur.

String
code

Valeur à ajouter à la liste de valeurs précodées du domaine spécifié.

String
code_description

Description de ce que la valeur précodée représente.

String

Sortie obtenue

NomExplicationType de données
out_workspace

Espace de travail mis à jour

Espace de travail

Exemple de code

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

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.AddCodedValueToDomain_management("montgomery.gdb", "material", "1", "PVC")
Exemple 2 d’utilisation de l’outil AddCodedValueToDomain (script autonome)

Ce script autonome utilise la fonction AddCodedValueToDomain dans le cadre d’un processus visant à créer un domaine attributaire et à lui attribuer des valeurs.

# Name: MakeDomain.py
# Description: Create an attribute domain to constrain pipe material values
 
# 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"
 
# Set local parameters
domName = "Material4"
gdb = "montgomery.gdb"
inFeatures = "Montgomery.gdb/Water/Distribmains"
inField = "Material"
 
# Process: Create the coded value domain
arcpy.CreateDomain_management("montgomery.gdb", domName, "Valid pipe materials", 
                              "TEXT", "CODED")
# Store all the domain values in a dictionary with the domain code as the "key" 
# and the domain description as the "value" (domDict[code])
domDict = {"CI":"Cast iron", "DI": "Ductile iron", "PVC": "PVC", \
           "ACP": "Asbestos concrete", "COP": "Copper"}
    
# Process: Add valid material types to the domain
# use a for loop to cycle through all the domain codes in the dictionary
for code in domDict:        
    arcpy.AddCodedValueToDomain_management(gdb, domName, code, domDict[code])
    
# Process: Constrain the material value of distribution mains
arcpy.AssignDomainToField_management(inFeatures, inField, domName)

Rubriques connexes