Renseigner les champs d'ID de substitution (Network Analyst)

Synthèse

Crée et renseigne des champs supplémentaires dans les classes d'entités tournants, qui référencent les tronçons à l'aide d'ID de substitution. Les ID de substitution permettent un autre ensemble d'identifiants qui peuvent aider à maintenir l'intégrité des entités tournants en cas de mise à jour des tronçons source.

Utilisation

  • L’outil crée et renseigne de nouveaux champs nommés AltID<n>, où n est le nombre maximal de tronçons par tournant. Par exemple, pour les classes d’entités tournants à deux tronçons, l’outil crée et renseigne des champs nommés AltID1 et AltID2.

  • Les shapefiles n’ont pas d’identifiant unique permanent, contrairement au champ ObjectID de la géodatabase. Les ID de substitution peuvent éviter le problème de décalage de l'identifiant rencontré de manière courante lors de l'utilisation de classes d'entités tournants dans un espace de travail de fichier de formes.

  • Si les tronçons en entrée n'ont pas de champ d'ID de substitution, par exemple un identificateur unique fourni par un fournisseur de données, vous devez créer et renseigner un champ de ce type pour permettre son utilisation par cet outil afin de référencer les entités tournants.

Paramètres

ÉtiquetteExplicationType de données
Jeu de données réseau en entrée

Jeu de données réseau dont les classes d'entités tournants reçoivent des champs d'ID de substitution. Les champs sont créés sur toutes les classes d'entités tournants ajoutées en tant que tournant en entrée au jeu de données réseau.

Network Dataset Layer
Nom du champ d'ID de substitution

Nom du champ d'ID de substitution sur les sources de tronçons du jeu de données réseau. Toutes les sources de tronçons référencées par des tournants doivent avoir le même nom de champ d'ID de substitution.

String

Sortie obtenue

ÉtiquetteExplicationType de données
Jeu de données réseau en entrée mis à jour

Jeu de données réseau mis à jour.

Couche du jeu de données réseau

arcpy.management.PopulateAlternateIDFields(in_network_dataset, alternate_ID_field_name)
NomExplicationType de données
in_network_dataset

Jeu de données réseau dont les classes d'entités tournants reçoivent des champs d'ID de substitution. Les champs sont créés sur toutes les classes d'entités tournants ajoutées en tant que tournant en entrée au jeu de données réseau.

Network Dataset Layer
alternate_ID_field_name

Nom du champ d'ID de substitution sur les sources de tronçons du jeu de données réseau. Toutes les sources de tronçons référencées par des tournants doivent avoir le même nom de champ d'ID de substitution.

String

Sortie obtenue

NomExplicationType de données
out_network_dataset

Jeu de données réseau mis à jour.

Couche du jeu de données réseau

Exemple de code

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

Exécutez l’outil avec tous les paramètres.

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.PopulateAlternateIDFields(network, "ID")
Exemple 2 d’utilisation de l’outil PopulateAlternateIDFields (script autonome)

Le script Python ci-dessous illustre l’utilisation de l’outil PopulateAlternateIDFields dans un script autonome.

# Name: PopulateAlternateIDFields_ex02.py
# Description: Create and populate the alternate ID fields for all turn sources
#              in the network dataset.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env

#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb/Transportation"

#Set local variables
inNetworkDataset = "Streets_ND"
altIDFieldName = "ID"

#Populate alternate IDs on all turn sources in the network dataset
arcpy.PopulateAlternateIDFields_na(inNetworkDataset,altIDFieldName)

print("Script completed successfully.")