Summary
Adds a diagram rule to a diagram template to assign a particular capability on diagram features currently represented in the diagram. This capability is used by some other rules executed later in the rule sequence. The diagram features to process are queried from a network source class or object table by attributes.
Learn more about the Add Diagram Feature Capability rule
Caution:
This tool is a configuration and administration tool.
Note:
This tool impacts the consistency of any existing diagrams based on the input diagram template. All of the existing diagrams become inconsistent and open with a consistency warning icon until they are updated.
Usage
This tool is not supported when working with a utility network or trace network service. You must use either a utility network or trace network in a file geodatabase or a database connection to a utility network or trace network in an enterprise geodatabase. When working with an enterprise geodatabase the following are requirements:
- The Input Network parameter value must be from a database connection established as the database utility network owner or database trace network owner.
- The connected ArcGIS Enterprise portal account must be the portal utility network owner or portal trace network owner.
- This tool must be connected to the default version, which is expected to be public and not protected.
Use the Prevent to collapse parent or Allow to collapse parent option to flag diagram features so they prevent or allow their parent container to be collapsed by Collapse Container rules executed later in the rule sequence, that is, rules set up using the Add Collapse Container Rule or Add Collapse Container By Attribute Rule tool.
Use the Prevent to reduce junction or Allow to reduce junction option to flag diagram junctions so they are discarded or not by Reduce Junction rules executed later in the rule sequence, that is, rules set up using the Add Reduce Junction Rule or Add Reduce Junction By Attribute Rule tool.
Syntax
arcpy.nd.AddDiagramFeatureCapabilityByAttributeRule(in_utility_network, template_name, is_active, network_source, where_clause, {capability}, {description})
Parameter | Explanation | Data Type |
in_utility_network | The utility network or trace network containing the diagram template to modify. | Utility Network; Trace Network |
template_name | The name of the diagram template to modify. | String |
is_active | Specifies whether the rule will be enabled when generating and updating diagrams based on the specified template.
| Boolean |
network_source | The network source class or object table that references the features or objects associated with the diagram features to which the particular capability will be assigned. | Table; Feature Class |
where_clause | An SQL expression used to filter out the features or objects of interest among the specified network source feature class or objet table. For more information on SQL syntax, see SQL reference for query expressions used in ArcGIS. | SQL Expression |
capability (Optional) | Specifies the capability that will be assigned to the queried diagram features at the end of the rule execution. This capability will be used by other rules executed later in the rule sequence.
| String |
description (Optional) | The description of the rule. | String |
Derived Output
Name | Explanation | Data Type |
out_utility_network | The updated utility network or trace network. | Utility Network; Trace Network |
out_template_name | The name of the diagram template. | String |
Code sample
Add a Diagram Feature Capability rule to the MyTemplate1 template to flag all the switches so they prevent their container from being collapsed later.
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DistributionDevice = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
input_DiagramTemplate = "MyTemplate1"
arcpy.AddDiagramFeatureCapabilityByAttributeRule_nd(
input_Network, input_DiagramTemplate, 'ACTIVE',
input_DistributionDevice, 'ASSETGROUP=14', "PREVENT_TO_COLLAPSE_CONTAINER")
Environments
Licensing information
- Basic: No
- Standard: Yes
- Advanced: Yes