Use the Create Diagram Layer Definition tool to initialize a custom diagram layer definition on a template.
This tool must be used in ArcGIS Pro, as it takes an input network layer referenced from an active map and prepares the network diagram composite layer for all diagrams that are based on the input template according to the layers in the input active map. After running with its default settings, each network diagram based on the input template displays the following:
- One layer for each utility network or trace network layer representing network features or network objects in the active map specified as the input.
- A set of extra layers that can be relevant or not to your template dedicated to the representation of the following types of network elements:
- Connectivity associations and structural attachments represented as polylines in diagrams
- Container polygon features, line features, and edge objects that can be transformed as points in diagrams
- Container point features and container junction objects that can be transformed as polygons in diagrams
- Junction objects represented as points in diagrams
- Edge objects represented as polylines in diagrams
- One layer, Reduction Edges, dedicated to the representation of aggregated network elements between two junctions.
After running the Create Diagram Layer Definition tool on a template, if you generate a diagram based on this template and compare the layers under the diagram layer to those for the network map you set as the active map, you will note also the following:
- A layer under the diagram layer exists with identical settings for each layer representing network features in the network map (the same layers and labeling properties, visibility, query filters, and so on).
Note:
In addition, if layers are in subtype group layers, those subtype group layers are kept under the diagram layer. This is true for the subtype group layers you can set up using the Add Preset > Subtype Group Layer command on the Map tab, but it is not true for standard group layers.
When the layers in the network map are standard group layers, those groups are dissolved on the built network diagram layer. There is no standard group layer under a composite layer; each layer displays at the same level in that case.
- There are no layers to represent features that are present in the network map but out of the utility network or trace network.
- The order of the layers under the network diagram layer is the same as the order of the layers in the network map.
With the above in mind, it's recommended that you create a specific map to use as input for the Create Diagram Layer Definition tool. Since working with map services that reference a large number of layers impacts performance, if you intend to access your network diagrams through a map service, think about the network features and network objects that give meaning to your diagram template when building this specific map. For example, there are some Remove Feature rules configured on your template to discard all the transmission network features. In this case, you don't want layers under the network diagram layer to represent transmission diagram features. To prevent the creation of these layers, ensure that you have no layer referencing transmission features in the map you use as input for the Create Diagram Layer Definition tool.
The following steps describe how to configure a specific input map and set up the Create Diagram Layer Definition tool to initialize a custom diagram layer definition on a template.
Requirements and prerequisites
The requirements and prerequisites when initializing a diagram layer definition on a template are as follows:
- This operation must be executed from either a utility network or trace network in a file geodatabase or a database connection to the utility network in an enterprise geodatabase. When working with a utility network in an enterprise geodatabase, you can't work from a service.
- For the case of a database connection to the utility network in an enterprise geodatabase, you must connect using the credentials of the database utility network owner.
- When working with a database connection to the utility network in an enterprise geodatabase, you must sign in to your ArcGIS Enterprise portal using the credentials of the portal utility network owner.
Initialize a custom diagram layer definition on your template
To initialize a custom diagram layer definition on a template, complete the following steps:
- Start ArcGIS Pro.
- When working with a utility network in an enterprise geodatabase, sign in to your ArcGIS Enterprise portal using the credentials of the portal utility network owner.
- Load your project or create one.
- Depending on the geodatabase you want to work with, do one of the following:
- When working with a utility network or trace network in a file geodatabase, add the file geodatabase to the project.
- When working with a utility network in an enterprise geodatabase, add the database connection file to the project or create a new one.
Caution:
Make sure the utility network is registered as branch versioned and you are connecting using the credentials of the database utility network owner.
- Activate a map that already references your network data through a database connection or a file geodatabase, or create a map by doing one of the following:
- Initialize a custom diagram layer definition on your template using simple layers to display all network source classes:
- In the Catalog pane, on the Project tab, under Databases, expand your geodatabase item and right-click the utility network or trace network.
- Click Add To A New Map.
- If you are prompted to add all source classes that participate in the utility network or trace network to the map, click Yes.
- Initialize a custom diagram layer definition on your template using preset subtype group layers:
- Create a map and click your template.
- On the Map tab, click Add Preset and click Subtype Group Layer.
- Browse to your geodatabase, select all the network source classes under the network dataset, and click OK.
- In the Catalog pane, on the Project tab, under Databases, expand your geodatabase item and drag the utility network or trace network to the active map.
Note:
You can also combine simple layers for some source classes and preset subtype group layers for others.
- Initialize a custom diagram layer definition on your template using simple layers to display all network source classes:
- Make a copy of the map.
This copy will be used with the Create Diagram Layer Definition tool.
- For each layer in the map, verify what the layer or subtype layer represents and remove those layers and subtype layers that are not relevant to your diagram template. For example, if your template is configured to expand all container point features of the network, remove the layers that represent point distribution assemblies or structure junctions.
- For each layer remaining in the map, optionally do the following:
- Split layers according to existing filters.
- Change the name of the layer.
- Set the layer appearance options.
- Set the layer labeling options.
- Reorder the layers or subtypes under subtype group layers in the map.
- If there are query filters set on one or more layers in the map to hide specific network features, optionally remove these filters so those features can be represented in generated diagrams:
- In the Contents pane, right-click the layer and click Properties.
- On the Layer Properties dialog box, click the Definition Query tab.
- Click Clear Expression at the bottom of the tab or modify the query expression to filter out the features you want to see in your diagrams.
- Click OK.
- Search for Create Diagram Layer Definition in the Geoprocessing pane search box and open the tool.
- Click the Input Network field drop-down arrow and select the network layer referenced in the active map.
- In the Input Diagram Template list, select the template for which you want to create the diagram layer definition.
- Expand the Additional Sublayers section and optionally do the following:
- Uncheck System Junctions if your diagrams will not contain system junctions.
- Keep Connectivity Associations checked if your template is configured to represent connectivity associations, in other words, if it is configured to run an Add Connectivity Associations rule or a Trace rule.
- Keep Structural Attachments selected if your template is configured to represent structural attachment associations, in other words, if it is configured to run an Add Structural Attachments rule.
- Uncheck Reduction Edges if your template is not configured to run Reduce Junctions or Collapse Container rules.
- In the Points for edges reduced as junctions and collapsed polygons list, identify each network source layer that represents line features or edge objects. If there is no Reduce Edges rule configured on your template to reduce the related diagram features, remove this layer. Identify each network source layer that represents container polygon features. If there is no Collapse Container rule configured on your template to collapse the related diagram features, remove this layer.
- In the Polygons for containers list, identify each network source layer that represents container point features or container junction objects. If there is a Collapse Container rule configured on your template to collapse the related diagram features or a Remove Feature rule to remove them, remove this layer.
- In the Points for junction objects list, identify each network source layer that represents junction objects. If there is a Collapse Container rule configured on your template to collapse the related diagram features or a Remove Feature rule to remove them, remove this layer.
- In the Polylines for edge objects list, identify each network source layer that represents edge objects. If there is a Collapse Container rule configured on your template to collapse the related diagram features or a Remove Feature rule to remove them, remove this layer.
- For each layer retained in steps 13e to 13h above, check the Subtype Layer check box if you want the related layer to be created using preset subtype group layers. Otherwise, the layer will use simple layer representation categorized per subtype.
- Click Run.
Verify diagram layer definition initialization
To verify that the diagram layer definition is initialized the way you want, on the modified template, complete the following steps:
- Select a set of network elements from the layers and object tables referenced in the active map.
- Generate a temporary diagram based on your template.
- In the Manage group on the Network Diagram tab, click All Layers so all layers currently set on the related diagram template are present in the Contents pane under the network diagram layer, even those not used.
- Verify that these layers display in the same manner as the network features in the active geographic map.
- Reinitialize the diagram layer definition on your template by completing steps 7 through 14 above again. This involves refining the layers in the map you built during steps 7 through 9 and running the Create Diagram Layer Definition tool for your template using this map.
- Edit the layers under the newly generated network diagram layer and import those new settings as a new diagram layer definition on the template.
Caution:
When consuming the network through a service, an additional step is required to get the modified diagram template fully operational on the network service: you must connect to your ArcGIS Server, and stop and restart this service.