Add Terminal Configuration (Utility Network)

Summary

Adds a terminal configuration to an existing utility network.

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 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 or object have a directionality setting. They can be set as directional (only one flow direction is permitted) or bidirectional (both flow directions are permitted).

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

  • For features with three or four terminals, you can define valid paths. 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:

Parameters

LabelExplanationData Type
Input Utility Network

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

Utility Network; Utility Network Layer
Name

The name of the terminal configuration.

String
Directionality

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.

  • Directional —Only one flow direction is permitted.
  • Bidirectional —Both flow directions are permitted.
String
Terminals
(Optional)

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

  • Name—Provide the name of the terminal.
  • Upstream—Indicate whether the terminal is upstream or downstream.
    • Checked—The terminal is upstream.
    • Unchecked—The terminal is downstream.
Value Table
Terminals
(Optional)

The name of each bidirectional terminal. A minimum of two terminals must be specified, and a maximum of eight can be specified. 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 Path(s)
(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 four terminals. If you are using directional traversability, one of the terminals must be upstream to have valid configurations. Valid paths must be created 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 as well as a value.

  • Name—The name of the valid path.
  • Value—The value of the valid path.
    • All—Enter a value of All to create an option that indicates all paths are valid.
    • None—Enter a value of None to create an option that indicates that no paths are valid.
    • Terminal pair(s)—Enter a single or collection of terminal pairs. Enter a single terminal pair by specifying the path from one terminal to another separated by a hyphen, for example, A-B. Enter a collection of terminal pairs separated by a comma, 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 paths have been specified, the default path All will be used.

  • All —All paths are valid. This is the default.
  • None —No paths are valid.
String

Derived Output

LabelExplanationData Type
Updated Utility Network

The updated utility network.

Utility Network

arcpy.un.AddTerminalConfiguration(in_utility_network, terminal_configuration_name, traversability_model, {terminals_directional}, {terminals_bidirectional}, {valid_paths}, {default_path})
NameExplanationData 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 permitted.
  • BIDIRECTIONALBoth flow directions are permitted.
String
terminals_directional
[[name, upstream],...]
(Optional)

The name and directional flow of each directional terminal. A minimum of two terminals must be specified, and a maximum of eight can be specified. 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, and a maximum of eight can be specified. 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 four terminals. If you are using directional traversability, one of the terminals must be upstream to have valid configurations. Valid paths must be created 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 as well as a value.

  • Name—The name of the valid path.
  • Value—The value of the valid path.
    • All—Enter a value of All to create an option that indicates all paths are valid.
    • None—Enter a value of None to create an option that indicates that no paths are valid.
    • Terminal pair(s)—Enter a single or collection of terminal pairs. Enter a single terminal pair by specifying the path from one terminal to another separated by a hyphen, for example, A-B. Enter a collection of terminal pairs separated by a comma, 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 paths have been specified, the default path 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