Summary
Creates and populates additional fields on the turn feature classes that reference the edges by alternate IDs. The alternate IDs allow for another set of IDs that can help maintain the integrity of the turn features in case the source edges are being edited.
Usage
The tool creates and populates new fields called AltID<n>, where n is the maximum number of edges per turn. For example, for two-edge turn feature classes, the tool creates and populates fields called AltID1 and AltID2.
Shapefiles do not have a persistent unique identifier, unlike the geodatabase's ObjectID field. Alternate IDs can avoid the ID shift problem commonly encountered when working with turn feature classes in a shapefile workspace.
If the edge feature sources do not have an alternate ID field, for example, a unique identifier provided by a data vendor, then you must create and populate such a field so that it can used by this tool to reference the turn features.
Syntax
PopulateAlternateIDFields_na (in_network_dataset, alternate_ID_field_name)
Parameter | Explanation | Data Type |
in_network_dataset | The network dataset whose turn feature classes are to receive alternate ID fields. The fields will be created on all of the turn feature classes added as a turn source to the network dataset. | Network Dataset Layer |
alternate_ID_field_name | The name of the alternate ID field on the edge feature sources of the network dataset. All edge feature sources referenced by turns must have the same name for the alternate ID field. | String |
Code sample
PopulateAlternateID Fields example 1 (Python window)
Execute the tool using all parameters.
network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.PopulateAlternateIDFields(network, "ID")
PopulateAlternateID Fields example 2 (stand-alone Python script)
The following Python script demonstrates how to use the PopulateAlternateID fields tool in a stand-alone script.
# 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
#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")
#Set environment settings
env.workspace = "C:/Data/SanFrancisco.gdb/Transportation"
#Set local variables
network = "Streets_ND"
alt_ID_field_name = "ID"
#Populate alternate IDs on all turn sources in the network dataset
arcpy.na.PopulateAlternateIDFields(network, alt_ID_field_name)
print("Script completed successfully.")
Environments
Licensing information
- ArcGIS Desktop Basic: Yes
- ArcGIS Desktop Standard: Yes
- ArcGIS Desktop Advanced: Yes