Select to view content in your preferred language

Stormwater Utility Network Elevations not saving

123
5
Friday
MarkWasdahl1
Occasional Contributor

We have just migrated an ArcHydro Stormwater File GeoDB to a File GeoDB Stormwater Utility Network v1.4. We have been unable to save Upstream and Downstream elevations for Stormwater Lines. DB is Z enabled with an NAVD 1988 in US-Survey Ft units. XY is NAD83 SP West in US-Survey Ft units. Options: Distance Units are also set to Foot_US. ArcGIS Pro version is 3.5.4. Elevation Z-values are saving to Stormwater Devices.

0 Kudos
5 Replies
RobertKrisher
Esri Regular Contributor

Can you post a screenshot of what attributes or values you are expecting to be updated on the lines class? Do you have any attribute rules written to maintain these attributes as you are creating or updating features?

0 Kudos
MarkWasdahl1
Occasional Contributor

The attribute rules remain unchanged from the porting over of the Napierville schema. Values show as zero although I have tried a variety of numbers ranging from single digit to four digits. I simply assumed Stormwater Utility Network v1.4 had this baseline covered. I have attached a sample selected line with attributes shown in three images. All lines and points in this extent passed validation.

0 Kudos
RobertKrisher
Esri Regular Contributor

Can you please verify three things:

  1. The attribute rule for updating elevation to lines is assigned and enabled.
  2. The device/junctions on either end of the line have Z-values
  3. The line itself has z-values on its first and last vertex.
0 Kudos
MarkWasdahl1
Occasional Contributor

2 and 3 verified. Looking at attribute rule, number 1 above. Here it is:

// Assigned To: StormwaterLine
// Type: Calculation
// Name: Line - Main Slope
// Description: Adjusts the slope based on the upstream, downstream, and length of the main
// Subtypes: All
// Field: slope
// Trigger: Insert, Update
// Evaluation Order: 4
// Exclude From Client: False
// Disable: False

// Related Rules: Some rules rely on additional rules for execution. If this rule works in conjunction with another, they are listed below:
// - None

// Duplicated in: This rule may be implemented on other classes, they are listed here to aid you in adjusting those rules when a code change is required.
// - None

// ************* User Variables *************
// This section has the functions and variables that need to be adjusted based on your implementation

// Limit the rule to valid asset groups/subtypes
// ** Implementation Note: Instead of recreating this rule for each subtype, this rules uses a list of subtypes and exits if not valid
// If you have added Asset Groups, they will need to be added to this list.
var asset_group = $feature.assetgroup;
var valid_asset_groups = [4, 5, 6, 7]; // Pipe, Open Channel, Culvert, Linear Drain

// ************* End User Variables Section *************

// Limit the rule to valid asset groups
if (!Includes(valid_asset_groups, asset_group)) return $feature.slope;

if (IsEmpty($feature.UPELEV) || IsEmpty($feature.DOWNELEV))
{
return $feature.slope;
}
if (IsEmpty(Geometry($feature)) || Length(Geometry($feature)) == 0)
{
return $feature.slope;
}
return ABS(($feature.UPELEV - $feature.DOWNELEV)/Length(Geometry($feature)));

Under Field names, the "Geometry" data type is named "Shape". Should that be used in lieu of "$feature", above? There is also a Double Type Field st_length(SHAPE) that is my other choice.

Also, under Stormwater Device, the Field "elevation" is a short Integer instead of a Double. Not sure why? Is this elevation field intended for surface or invert/bottom?

0 Kudos
RobertKrisher
Esri Regular Contributor

The Geometry method takes a $feature and returns its geometry.

I recommend you test out this method by putting it in a popup expression on the line layer (have one for the upstream elevation and another for the downstream elevation), then click a few features and see what its outputting.

I'd defer to the data dictionary and @MikeMillerGIS about the elevation field.

0 Kudos