|
POST
|
Off the top of my head, I can think of a few case studies from customers who have implemented multiple domains of water but if you reach out to your account manager, they should be able to find other customers/ case studies. Public Works Provo Benefits from Enhanced Connectivity (esri.com) City of Hastings: Going All In with Esri's ArcGIS Utility Network Sofiyska voda, part of Veolia Case Study (esri.com) You can also look at some of the water/wastewater/stormwater customer presentations from the ArcGIS Utility Network video channel for examples of customers who have been successful with the different domains.
... View more
01-17-2024
01:56 PM
|
1
|
1
|
3306
|
|
POST
|
Gavin, By default, the subnetwork trace is configured to stop at the boundaries of your configured subnetworks, in this case, pressure zones. Once you've configured all your subnetworks, everything will work correctly. If you wanted to have the trace stop at the pressure reducing valve, even though it wasn't configured to be a subnetwork controller, you could always just add a condition barrier to your trace to stop at pressure reducing valves. This would cause the trace to stop, even if the pressure reducing valve wasn't configured to be a subnetwork controller. I have seen customer datasets that contain pressure zones that don't stop at pressure reducing valves, but they're pretty rate (only a handful of such situations for several hundred pressure zones).
... View more
01-17-2024
01:29 PM
|
0
|
1
|
2813
|
|
POST
|
Each of these utilities has a separate solution you can download from Esri that contains a project, data model, instructions for implementation, and sample data. Depending on the level of sophistication of your GIS you'll need to decide between implementing the Data Management solution or the Utility Network solution for each of these commodities. This is discussed in detail in this presentation from IMGIS this year: https://mediaspace.esri.com/media/t/1_3hn07zzc/246131802 . If you do end up choosing the utility network, which is required to do network and analysis, you will want to look at the resources available through the Learn ArcGIS Utility Network for Water Utilites learning series. This series includes many articles and hands-on tutorial for water data that you can use to better understand the water utility network solution.
... View more
01-17-2024
11:10 AM
|
1
|
0
|
3333
|
|
POST
|
@GavinMcGhie A picture, or two, is worth a thousand words in this kind of situation, but I'll do my best to extrapolate your words into a mind-network 😁 We have an entire playlist of content devoted to understanding how to use the water utility network, for these kind of issues I'd recommend you either read the Water Quality Assurance article or read/do the Perform quality assurance on subnetwork tutorial (which covers several scenarios similar to this on a water dataset) The subnetwork trace will stop when it encounters either another subnetwork controller, a condition barrier, or a device whose terminals it cannot traverse. I'll break down your situation into two parts, sorry for the verbose responses. Pressure Reducing Valve The reason why your trace didn't stop at the pressure reducing valve for the lower system is because you haven't set up as a subnetwork controller yet. This is why we recommend you start with the lower systems (they also tend to be smaller). Pressure reducing valves are also devices that have a directional terminal configuration. Because you said the PRV was for a lower system, it sounds like your terminals are assigned correctly (water is flowing from the higher-pressure/upstream subnetwork to the lower-pressure/downstream subnetwork). Terminals The reason why the trace stopped at the check valves is because check valves have a directional terminal configuration, and your trace encountered the check valve on the edge connected to the downstream. Water is a source-based network which means that pressure is only allowed to move from the upstream terminal to the downstream terminal. If you think the trace should have continued, then you will need to 'flip' the terminals by connecting that stopped in your trace to connect to the downstream terminal and the line on the other side to connect to the upstream terminal. There are examples of this exact scenario in both the articles and tutorial I referenced above. You and your engineers know which edge is supposed to be the upstream edge/downstream edge, and once you know you'll need to let the utility network know so it can trace appropriately.
... View more
01-16-2024
05:04 PM
|
0
|
1
|
2923
|
|
POST
|
@gis_KIWI4 yep, that's the problem. A device with terminals will only act as a barrier for connectivity between the terminals, but if everything is connected to the same terminal the device can't act as a barrier because the connectivity is considered to not pass through the device. The fact that you encountered this likely means that you either created your own model from scratch or altered one of the existing models and only added rules for one terminal of the device. Normally if you were to have a line that could connect to either terminal and you forgot to specify which one, you would get an ambiguous connectivity error that would force you to connect the lines to each terminal on the switch.
... View more
01-16-2024
04:22 PM
|
1
|
2
|
3442
|
|
DOC
|
@AbigailCharbonneau check out the utility network upgrade history link on this page. We introduced several new layers and table to the utility network with the v4 utility network. That page will walk you through all the steps you need to take for each release, so you will need to do everything called out in the v4 changes and v5 changes. We also introduced many new capabilities and features, so I would recommend you also check out the links for the "What's New in the ArcGIS Utility Network".
... View more
01-16-2024
02:14 PM
|
0
|
0
|
33708
|
|
POST
|
@gis_KIWI4 Check to see if the two lines are connected to the same terminal, the condition barrier will only apply if the connectivity passes through the device.
... View more
01-16-2024
01:20 PM
|
0
|
6
|
3467
|
|
DOC
|
@AlanHope I've always considered this a compatibility issue, I've never measured whether there is any benefit with regards to performance between the different symbology formats. I would imagine it would depend on the complexity of the CIM definition and whether you're using PNG or SVG. There are other tradeoffs for each of these formats concerning quality as well as functionality (i.e. symbol-level arcade expressions). When this article was first written there wasn't an option to publish symbology that is compatible with all client types. So, if you had a web map or service that was used by a client that didn't support the full CIM Web Map specification you didn't have a lot of good options, and this was one of the workarounds. Now when you publish a map you can choose to publish symbols that are compatible with all client types (png) or to retain the original CIM.
... View more
01-16-2024
09:22 AM
|
0
|
0
|
14270
|
|
POST
|
@JoaquinMadrid1 Your first statement is not quite correct. If a feature is snapped midspan on a line, it will still act as a barrier from a tracing perspective (e.g. features on the other side of the barrier will not be included). However, visually it will still include the line where the tracing stopped because the first section is included in the trace and the second section isn't, but we can only select the whole line.
... View more
01-16-2024
09:06 AM
|
0
|
1
|
917
|
|
DOC
|
If you have a lot of these you need to do, it's possible to create a C# Add-In that uses the ArcGIS Pro SDK to convert all the symbols in a layer, map, or even project into separate named SVG files.
... View more
01-16-2024
09:03 AM
|
0
|
0
|
14303
|
|
POST
|
I wouldn't characterize the Utility Network as being a workaround in this situation. It is known that the geometric network is going away and that the utility network is one of several network management options to act as a replacement. The utility network supports tracing OOTB in web and mobile applications, so this appears to be an appropriate recommendation for the requirement. Supporting tracing on the GN through the experience builder is going to require several levels of customization, but it sounds like you are on the right path. Be warned that the second/third link in the original post is discussing the trace network (not a geometric network) so some of the finer points may not be applicable.
... View more
01-16-2024
06:08 AM
|
0
|
0
|
1362
|
|
BLOG
|
When the utility network was first released, it introduced a new concept to the Esri ecosystem and vocabulary, the Subnetwork. This abstraction was created to describe the different ways that users separate and manage their networks into network zones without using industry-specific terms like ‘Circuit’ or ‘Pressure zone’. But why do we use the term “subnetwork”? All the data used to manage the connectivity for one set of resources for a utility is stored in a utility network (e.g. the network). So, when this network is subdivided into smaller, topologically contiguous areas (circuits, pressure zones, etc.) then each of these zones can be accurately described as a sub-network. With this abstraction in place, a framework was created to manage each subnetwork as its own GIS object that can be visualized, analyzed, and even used for reporting purposes. An important component of this framework is the ability to track metadata on each subnetwork so users can understand how their system is changing over time. This metadata provides basic information like editor tracking fields or can be expanded to incorporate user-defined values such as the number of customers, number of protective devices, etc. Metadata also allows users to answer the most common, and important question that a GIS person gets asked: is this data correct? This is a surprisingly tough question because correct means different things to different people. However, breaking the original question down into more specific questions it becomes much easier to answer: When was the subnetwork last updated? When was the subnetwork last extracted to another system? Is this subnetwork up to date? Have features in the subnetwork been modified since it was last updated? Are there any known errors that need to be fixed in this subnetwork? The first two questions are easy to answer through several date fields maintained on the subnetwork, namely the Last Update Subnetwork and Last Ack Export Subnetwork fields. The last three questions can all be answered by looking at the Status field of a subnetwork (in earlier models this was called the ‘Is Dirty’ field) which includes the status values of Clean, Dirty, and Invalid. Here’s what these values mean: Clean – A subnetwork that has no known errors and is ready to be used for analysis. Dirty – A subnetwork that has been modified and that needs to be updated. Invalid – A subnetwork that has one or more known errors that need to be resolved. With the foundation established, the rest of this article will focus on how the system manages the Status field and how to interpret each of the different status values. Marking Subnetworks Dirty The key to managing the status of subnetworks in the utility network is that the system needs to be able to determine when a subnetwork is affected by an edit so it can be marked as dirty. While there are many ways to accomplish this, the software currently uses the validate network topology operation to discover and mark subnetworks as dirty. Because determining which subnetwork was affected by an edit requires tracing, it would introduce too much overhead to the editing process if the system performed this analysis after every edit. Finally, because all editing workflows affecting the network must be validated, this allows the system to ensure the state of subnetworks cannot get out of sync with the data as it is edited. But how does the system determine which subnetworks were modified? The system performs a subnetwork controller trace for all the validated features to discover which subnetworks were affected by the edits. The exact behavior differs slightly depending on whether the validated edits belong to a partitioned or hierarchical utility network. What do these terms mean and why does this matter? We’ll discuss this below. In a partitioned subnetwork, each feature can belong to at most a single subnetwork. This means that the system will analyze each tier of the network to determine if any of the edited features belong to that tier. Once a feature has been matched to a specific subnetwork it can be removed from analysis in subsequent tiers, and once all features are matched the analysis is complete, even if all tiers have not been analyzed. You can see a simplified example of a partitioned network can be seen below: In the case of a hierarchical network, each feature can belong to multiple subnetworks because the tiers of the network are nested in each other. As a result, the system must always analyze each tier in the network for all the edited features. You can see a simplified example of a hierarchical network below: Now that we’ve looked at the different topology types at a high level, we will examine several editing scenarios for each of these topology types and make note of how the system behaves. Partitioned When the network topology is validated in a partitioned network, the system needs to identify the subnetwork affected by each edit. To do this it identifies all the tiers in the network that have subnetworks and analyzes each tier to determine which subnetworks in each tier, if any, were affected by the edit. The system repeats this process with each tier until it has discovered network sources for all the edited features, or all the tiers in the network have been analyzed. Let’s look at a few examples of this behavior in action. In the first example below, a single edit is made to the utility network (purple hash polygon). When validate network topology runs it finds a single network source for the edit on the first tier it analyzed, the distribution tier. This allows validate to skip doing any analysis on the transmission tier since the system has already discovered a subnetwork controller that accounts for all the edits. In this second example, multiple edits in several different areas in the network are validated. The system must perform multiple traces to discover sources for all the edits because the edits occurred in multiple tiers of the network. In the third example, the system validates an edit made to a feature that is not connected to any subnetworks. In this case, the system must trace all the tiers in the network to confirm that no subnetworks were affected. As you can see, the validate network topology operation can more quickly identify the modified subnetworks in partitioned networks when the edits are limited to a single tier and when the subnetworks that were modified are smaller. As the number of tiers and the size of the subnetwork increase, the system will take longer to identify the modified subnetworks during validate network topology because it must perform more traces and the traces will take longer. Hierarchical Because every feature in a hierarchical network can belong to multiple tiers, the system must consider every tier in the network that has subnetworks when trying to identify subnetworks affected during validate network topology. Below you can see an example of a simple hierarchical network that has a single system subnetwork that contains two smaller subnetworks. In this first example below, a feature belonging to one of the smaller subnetworks is edited. The system first identifies the smaller subnetwork that the edit belongs to. However, because this is a hierarchical subnetwork the system must analyze all the remaining tiers in the network, and in this case, it identifies a second subnetwork in a different tier to mark as dirty. In the second example, a feature that belongs exclusively to the larger subnetwork is edited. In this case, the lower-ranking subnetworks do not get marked as dirty. This is because the edit didn’t affect any of the lower-ranking subnetworks. This logic is the same regardless of whether the network is source-based or sink-based because the highest-ranking network is always the outermost container in the hierarchy (the ultimate source or ultimate sink of the network). In the third example, a feature that does not belong to a subnetwork is edited. In this case, no subnetworks are marked as dirty. However, the utility network must trace each tier of the network to confirm that the feature doesn’t belong to any subnetworks. Because system subnetworks are so large, they can add a larger performance cost to validate network topology than smaller subnetworks. Also, because these subnetworks contain so many features, they are more likely to be marked as dirty during validate, and as a result, each system subnetwork often needs to be updated many times per day to stay clean. Because of this, it is common for the highest-level tiers in a hierarchical network to be set to not manage the status field and instead just update them on a nightly basis. In addition to reducing how often these subnetworks are updated, this configuration also improves the performance of validate network topology because it allows the utility network to skip this tier during validation. The next section of this article discusses how you can determine whether a tier is configured to manage the status field. Configuration Even though maintaining the Status field is the default behavior of the subnetworks in the utility network, there are some users, and entire industries, that do not make use of subnetwork status as part of their workflows. To support this configuration the Update Subnetwork Policy section of the Set Subnetwork Definition tool contains an option e to determine whether the corresponding tier in the subnetwork should ‘Manage IsDirty’. When this option is checked, state management is enabled the system will behave according to the ‘normal’ behaviors outlined in this article. When this option is unchecked, state management is disabled, and the system will no longer manage the status field during validate network topology. One of the side effects of disabling state management is that every subnetwork in the corresponding tier will always appear dirty, this is because the system has no way of identifying which subnetworks are modified during validation so it must always assume the network is dirty. Users who choose not to opt into this behavior (disabling state management) typically do so for one of two reasons: Their editing workflows result in subnetworks that are always dirty, or... Performance impacts Remember that this setting is configured separately for each tier in your network, so you may choose to leave this setting enabled for some tiers in your network (distribution, pressure zones, etc.) while disabling this for other, larger tiers (transmission, system, etc.). Regardless of how your network is currently configured, you can always change this setting later. If your model currently has this setting enabled, this option can be disabled if you don’t find managing the status field useful. If instead, you have a model that does not manage the status field, but you later decide that you want to take advantage of the status field in your workflows, it can be enabled. Validate Consistency The entire discussion up to this point has looked at how, when, and which subnetworks get marked as dirty when a dirty area is validated. This of course raises the question; how does the system respond or identify subnetworks that contain edits that haven’t been validated? This is where the idea of validating consistency during analysis comes into play. The default behavior when you perform a trace in the utility network is to validate the consistency of your trace result. What this means in practical terms is that the system checks to see if there are dirty areas associated with your trace results. If there aren’t any dirty areas associated with your results, then your results are considered consistent. However, if there are dirty areas associated with your trace results, the trace will fail, and you will receive an error letting you know that one or more dirty areas were discovered during the trace. If you want to ignore the dirty areas and see the trace results, potentially producing incorrect results, you can uncheck the option to Validate Consistency. How does this apply to subnetwork status? If dirty areas are encountered during update subnetwork, the subnetwork will be marked as dirty. However, a clean subnetwork can be consistent or inconsistent, depending on whether it has outstanding, unvalidated edits since it was last updated. If there are unvalidated dirty areas in your database, the system doesn’t know which subnetwork (if any) to mark as dirty until the edit is validated. Once all your dirty areas are validated, the corresponding subnetwork(s) are marked as dirty, and all traces will be consistent. What impact does this have on managing subnetworks? It means that you can’t necessarily look at the status of a subnetwork and know whether it is consistent. However, you can be confident that if you trace a subnetwork, you will receive an error if you attempt to analyze or export an inconsistent subnetwork, even if the subnetwork says it is clean. Conclusion Now that you’ve finished reading this article you should have a better understanding of the benefits and workflows associated with subnetwork management, and how the status field helps guide you through those workflows. You should also understand how the system manages this field and why certain industries may choose to only manage the status field for some of the tiers in their utility network.
... View more
01-02-2024
07:09 AM
|
16
|
3
|
6505
|
|
POST
|
The presentation from the second link (how to run a successful utility network prototype) can be found here: https://mediaspace.esri.com/media/t/1_2o2s2lev
... View more
01-02-2024
06:24 AM
|
0
|
0
|
1950
|
|
POST
|
The overall process looks good, but the timeline may be a little tight depending on how familiar you are with ArcPy and the ArcGIS API for Python. I'd recommend you not rush this and make sure you test it out in a dev or test environment first to figure out any issues ahead of time. You'll need to stop/restart the service in order to make the configuration changes to your rules, you should be able to script disabling/enabling things to reduce the likelihood of making a mistake.
... View more
12-21-2023
07:06 AM
|
1
|
0
|
3306
|
|
POST
|
You should be able to take either approach (directly in default or in a version then rec/post), either way I'd recommend testing it out in a staging/test/dev environment first and see which method minimizes the downtime for your users (then take a backup before running in production). Depending on how familiar you are with the different Python APIs it may be much simpler to do the edits directly in default, assuming you haven't marked default as protected.
... View more
12-21-2023
06:39 AM
|
1
|
2
|
3313
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | yesterday | |
| 1 | 2 weeks ago | |
| 1 | 2 weeks ago | |
| 1 | 2 weeks ago | |
| 1 | 2 weeks ago |
| Online Status |
Offline
|
| Date Last Visited |
yesterday
|