Add Terminal Configuration (Utility Network)

Summary

Adds a terminal configuration to an existing utility network.

Features with terminals require constraints that define the valid configuration of the internal connectivity of the device or junction object. This tool allows you to add a new terminal configuration to a utility network that can be later assigned to a class at the asset group or asset type level using the Set Terminal Configuration tool.

Usage

  • Terminals are configured on a device or junction object by assigning a terminal configuration. Only one terminal configuration can be assigned to each of the asset types that support terminals.

  • The terminals on a feature have a directionality setting. They can be set as directional (only one flow direction is permissible) or bidirectional (both flow directions are permissible).

  • A minimum of two and a maximum of eight terminals must be specified. The terminal name should be a meaningful description such as high-side or source-side.

  • For features with three or four terminals, you can define valid configurations. This is designed to handle complex switching devices when you need to constrain the flow paths between pairs of terminals. For example, in a four-terminal device with terminals named A, B, C, and D, you may want to allow flow from A to B and C, but not from A to D.

  • The network topology must be disabled.

  • When working with an enterprise geodatabase the following are requirements:

Syntax

arcpy.un.AddTerminalConfiguration(in_utility_network, terminal_configuration_name, traversability_model, {terminals_directional}, {terminals_bidirectional}, {valid_paths}, {default_path})
ParameterExplanationData Type
in_utility_network

The input utility network to which the terminal configuration will be added.

Utility Network; Utility Network Layer
terminal_configuration_name

The name of the terminal configuration.

String
traversability_model

Specifies the directionality of the terminal configuration. A directional traversability model means the flow for the terminal will only go in one direction. A bidirectional traversability model means the terminal allows flow in both directions.

  • DIRECTIONALOnly one flow direction is permissible.
  • BIDIRECTIONALBoth flow directions are permissible.
String
terminals_directional
[[name, upstream],...]
(Optional)

The name and directional flow of each directional terminal. A minimum of two terminals must be specified, up to a maximum of eight. The name of each terminal cannot exceed 32 characters. This parameter is required if the traversability_model parameter value is DIRECTIONAL.

  • Name—Provide the name of the terminal.
  • Upstream—Indicate whether the terminal is upstream or downstream.
    • True—The terminal is upstream.
    • False—The terminal is downstream.
Value Table
terminals_bidirectional
[[name],...]
(Optional)

The name of each bidirectional terminal. A minimum of two terminals must be specified, up to a maximum of eight. The name of each terminal cannot exceed 32 characters. This parameter is required if the Directionality parameter value is Bidirectional (traversability_model = "BIDIRECTIONAL" in Python).

Value Table
valid_paths
[[Name, [Value]],...]
(Optional)

The name or names and valid path or paths for the terminal configuration. For bidirectional traversability, this parameter is required if you have three or more terminals. If you are using directional traversability, one of the terminals must be upstream to have valid configurations. Valid paths must be set to indicate which path or paths in a device or junction object are valid for a resource to travel through. Provide a name for each valid path and specify a value.

  • Name—The name of the valid path.
  • Value—The value of the valid path.
    • All—All paths are valid.
    • None—No paths are valid.
    • Terminal pair—A single path from one terminal to another, for example, A-B.
    • Collection of terminal pairs—A collection of single paths from one terminal to another, for example, A-B,A-C.
Value Table
default_path
(Optional)

The default path of the valid configurations. This will be assigned to new features that have this terminal configuration assigned to their asset type. If no valid configurations have been specified, the default configuration ALL will be used.

  • ALLAll paths are valid. This is the default.
  • NONENo paths are valid.
String

Derived Output

NameExplanationData Type
out_utility_network

The updated utility network.

Utility Network

Code sample

AddTerminalConfiguration example 1 (Python window)

Add a terminal configuration that is bidirectional with three terminals.

import arcpy
arcpy.AddTerminalConfiguration_un('Electric Utility Network', 'config1', 
                                  'BIDIRECTIONAL', None, 'A;B;C', 
                                  'Top A-B;Bottom A-C', 'Top')
AddTerminalConfiguration example 2 (Python window)

Add a terminal configuration that is directional with three terminals.

import arcpy
arcpy.AddTerminalConfiguration_un('Electric Utility Network', 'config2', 
                                  'DIRECTIONAL', 'A true;B true;C false', None, 
                                  'Top A-B;Bottom A-C', 'Bottom')
AddTerminalConfiguration example 3 (Python window)

Add a terminal configuration that is directional with three terminals. Valid paths are specified using a collection of terminal pairs.

import arcpy
arcpy.AddTerminalConfiguration_un('Electric Utility Network', 'config3', 
                                  'DIRECTIONAL', 'A true;B false;C false', None, 
                                  "AB A-B;ABAC 'A-B;A-C'", 'AB')

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics