Summary :: Usage :: Parameters :: Outputs :: Warnings :: Limitations :: Code sample

Summary


This tool checks for specific attribute errors on each polyline in your river network.

Usage


This tool checks for specific attribute errors in your river network; any found would indicate corruption in the dataset, these are typically caused by editing. This tool searches for:


Null polyline ID values

- The polyline ID must have an integer value.

Duplicate polyline ID values

- The polyline ID must be unique.

From node ID equals To node ID

- These must not be the same, this would indicate a polyline looping in on itself.


Any found to be poorly attributed have their polyline ID written to an error log table called tblAttributes. If the table already exists then a new table name is created with a simple numeric suffix.


The tool optionally adds the error log table to the map (default) and if selected builds a standard relate between river network layer and error log table. You can use the relate to select and jump to the polyline to streamline your editing experience.

Parameters


Name

Help

Data type

River Network

The river network. For best results the network should be within a File GeoDatabase

Feature Layer

Add Error Log Table to Map

If this is ticked (default) the error log table will be added to the map for your convenience if any errors were found.

Boolean

Build a Relate for Error Log

If this tick box is checked then the error log table must be loaded into the map and RivEX builds a standard relate between the Error Log table and the river network layer. You can use the relate to help you jump to and review the error.

Boolean

Outputs


This tool creates a stand alone table named tblAttributes, if any poorly attributed polylines are encountered within the river network.  The table is created in the RivEX workspace folder and stored in the File GeoDatabase found in ..\RivEX_Workspace\ErrorLogs\fGDB_RivEXErrorLogs.gdb


Advice on the structure of the error log table and how it can be used is found within this section of the manual. Take note of the warning if you plan to construct a model using the error log output in subsequent processing.

WarningWarnings

If errors are found, you might be able to resolve them by simply running the network through the Extract Network Topology and write to Workspace tool to rebuild and correctly attribute the node and polyline fields in your river network.  If that does not resolve the errors then the source of the corruption is likely to be topological and require further investigation.


With the release of ArcGIS Pro 3.2.1 a switch control appears on parameters that accept tables\feature classes, do not interact with it! More advice here.


Limitations


All polylines in the river network are tested, if a selection existed this is cleared prior to processing.


Code sample


A minimum code example showing how to call this tool in a python script. This can be run in console or your preferred IDE. If you right click on the tool in the RivEX toolbox and select properties you can view parameter order.


import arcpy

# Import RivEX toolbox
arcpy.ImportToolbox(r"C:\RivEX_ArcPro\RivEX.atbx")

try:
    # Input river Feature Class
    fc = r"C:\Temp\ORN\ORN.gdb\ORN"

    # Run RivEX quality control tool
    res = arcpy.srcQCAttributes_RivEX(fc, False, False)

    # The rivers Feature Class, a derived output
    fcRivers = res.getOutput(0)
    
    # Get error table
    tblError = res.getOutput(1)

    # Check if error table exists
    if arcpy.Exists(tblError):
        # Count number of rows
        res = arcpy.GetCount_management(tblError)
        n = int(res.getOutput(0))
        if n > 0:
            print(str(n) + " error(s) were recorded")
    else:
        print("No error table created!")
except arcpy.ExecuteError:
    print("FAILED to quality control network")


Return to top of page