Select to view content in your preferred language

Adding data from two different layers into another layer, stormwater pipes feature IDs

1577
16
02-27-2024 07:43 AM
MaureenSpiessl
Occasional Contributor

Hello,

This is a going to be a long shot, but I am looking for advice or website material anything to help with an issue I have.  This is a stormwater ArcGIS Pro issue.

The issue:

  • I need to create two new fields (Up_stream and Down_stream nodes) in our established inventory list of stormwater pipe infrastructure. The two new fields (which I have created) in our Pipe layer,  needs to be populated to indicate which stormwater infrastructure the pipes are flowing to and from.
    • EX. Inlet X (up steam flows to) ------Pipe-----> Manhole Y or Inlet Z (down stream flows from)
  • I need to find a way to populate into the two new fields the feature IDs for the To (downstream) and From (Upstream) stormwater infrastructures.

Research question:

  • Does anyone have any insight and how to tackle this situation or have ideas where I can look up tutorials etc.   
  • Has anyone had experience with this? I’m sure we are not the only one out to encounter this type of issue.

 

Worst case I manually input the feature ID for each pipe segment, but I am sure there must be something to help jumpstart the process.

 

Thank you an advance 🙂 

16 Replies
RobChasan
Regular Contributor

Is the Feature ID field you are referencing the built in non-editable field that comes automatically with shape file feature classes, aka ObjectID in GDBs?  If it is, you shouldn't use it and you should define a separate field in the feature class.  

0 Kudos
Bud
by
Esteemed Contributor
  1. Can you provide a few screenshots? With labelled features?
  2. And can you show us the attribute table? And manually populate a few values to indicate what you're looking for?
  3. Does a tool like Spatial Join help you?
    1. Also, an idea implemented in 3.2: Spatial Join by Attribute (Match Fields)
  4. Do you want to batch-populate the values one time, then manually update them going forward? Or do you want to also find a way to automatically populate the fields every time a feature is created or modified, using an attribute rule?
  5. What version of ArcGIS Pro?
  6. What kind of geodatabase? File geodatabase? Oracle enterprise geodatabase? Etc.
    1. If it's an enterprise geodatabase, then what spatial type doe the feature classes use? ST_GEOMETRY?
  7. Are the pipe features digitized in the direction of flow?
  8. Do the inlet and manhole features have invert elevations? I.e., a field that indicates the elevation that the pipe connects to the inlet or manhole?
  9. Is Up_stream always either an inlet or a manhole?
  10. Is Down_stream always a manhole, never an inlet?
    1. What about outfalls?
  11. It would be relatively straightforward to determine what points (inlets and manholes) would be associated with a given pipe -- due to proximity. But it's not clear to me how you would know what inlet/manhole is to be the Up_stream value (in the pipe layer). And what inlet/manhole is to be the Down_stream value.

    For example, for Pipe1, how do you know what manhole is upstream vs. downstream?
    Bud_0-1709223185409.png
0 Kudos
Bud
by
Esteemed Contributor

I asked a colleague, and they said they use the direction of the line to determine what manhole is upstream vs. downstream.

0 Kudos
MaureenSpiessl
Occasional Contributor

That is what we generally use as well but we have vendor that requires the up stream and down stream fields filled in to complete work orders. 

Our water and sewer department have these fields filled in but they are all manhole to manhole and it was easier for them to populate the fields then stormwater. 

Thank you.

0 Kudos
MaureenSpiessl
Occasional Contributor

Hello, thank you for your list of questions. I will answer them as best as I can. I will state that I am fairly new to this position as well as this Stormwater GIS analyst position is new. So I am dealing with a database that may or may not have been maintained well. I have a lot of data cleanup in my near future 😊

1) The screen shots of the application.

MaureenSpiessl_0-1709561808693.png

 

  • We do have arrows that are used to visually identify water flow of the pips.
  • The manholes, inlets, outfalls, etc. are all given a separate FeatureID separate from the ObjectID.
  • Visually speaking we can tell the direction of water flow, however we need the upstream and downstream fields filled in with infrastructure to which the pipes are flowing from and to.
    • EX.MaureenSpiessl_1-1709561808706.png

       

    • We need to populate the two fields to fill in the data relating to either a manhole to manhole or manhole to inlet or inlet to outfall etc. Note: I manually added the data here to show what I am trying to do.
    • The reason we need this data is for one of our camera truck vendors need these fields filled in for their work flow to begin.

 

2) Attribute table.

  1. MaureenSpiessl_2-1709561808721.png

     

3) Spatial Join, I am unsure if that will be useful but I can look into it.

4) I would like to batch-populate all current fields and then manually update as we move forward and add new infrastructure.  Although that might be nice to find a way to automatically populate the fields every time a feature is created or modified, using an attribute rule, but to start I just need to populate the fields so that our vendors can start work.

5) ArcGIS Pro 3.2.0

6) I am pretty sure it is just a file geodatabase.

7) Yes the pipe features are created to indicate the flow of water.

😎 Inlet and manhole invert elevations--- not really. That data is unfortunately not the best maintained. The feature layers for inlets and manholes do have some invert elevation data but I would not rely on it. The pipe feature layer does have the invert elevation data.

  1. Inlet feature layer attribute table

MaureenSpiessl_3-1709561808722.png

  1. Pipe feature layer attribute table

MaureenSpiessl_4-1709561808722.png

9) I believe so that the up_stream is always going to be either a manhole or an inlet.

10) Yes, once again I believe so. Some downstream may empty via a outfall or a ditch.

11) I hear ya, this is one of the biggest issues I am dealing with.

  1. Your screen shot is what I need to accomplish and the only way I know which manhole or inlet is up or down stream is by visually looking at the map with the labels turned on and filling in the fields manually

12) I was unaware with the state of the data that I am working with, so even if I can figure out a way to populate the two new field with as much data as I can and then I can manually add the rest. There are over 900,000 pipe segments in this database and our elevation data is not the best kept.  So even if I can get a portion of that filled in that would be great. I have a lot of work to do cleaning up years’ worth of data.

 

Thank you. 

Bud
by
Esteemed Contributor

Similar to what @RhettZufelt mentioned:

If your pipes are digitized in the right direction (arrow symbol points the right way) then you could use the point (manhole, inlet, or outfall) that is closest to the start point of the line to populate the Up_stream field of the pipe. And use the point (manhole, inlet, or outfall) that is closest to the end point of the line to populate the Down_stream field of the pipe.

That should be possible using OOTB geoprocessing tools.

@MErikReedAugusta might find this interesting.

0 Kudos
MErikReedAugusta
Frequent Contributor

Thanks for the tag, @Bud .  I'm skimming this, now, and I'm pretty sure we have this exact setup, and I already wrote a Python script to fill in those Up/Down IDs.  I'll drop it here in a bit, once I reformat it.

 

@MaureenSpiessl , do you also have any linking IDs on the Manholes?  For example, on our Point feature, we have OutPipe and InPipe fields where I can drop an ID, in addition to the Up/Down ID fields on the Pipes.  That's a bit more complicated, but it's also doable.

MaureenSpiessl
Occasional Contributor

Hello,

We do not have any linking IDs connecting the manhole or inlet with a pipe, but that does seem useful for the future. I believe before I joined the team here, they relied on visual maps etc. to see the connections of pipes to manholes and inlets.

Thank you. 

0 Kudos
RhettZufelt
MVP Notable Contributor

that code doesn't rely on any common field/IDs.  It just intersects the beginning and end point of the line with the points (MH's) and transfers the MHID and ELEV values (you can just drop the elevation part) from the point to the respective end of the line.

This code is for an attribute rule to do exactly what you requested in the original post.  You should be able to modify it to iterate through all the lines in calculate field tool.

R_

0 Kudos