<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Python Trace Geometric Network in Data Management Questions</title>
    <link>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497900#M28275</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm trying the same thing and not getting anywhere with the stand alone script. Bump.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 24 Sep 2013 22:28:30 GMT</pubDate>
    <dc:creator>KennethPierce</dc:creator>
    <dc:date>2013-09-24T22:28:30Z</dc:date>
    <item>
      <title>Python Trace Geometric Network</title>
      <link>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497899#M28274</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Not sure why they post in the Desktop/Online help that this can be run via a standalone python script because the output is a group layer which isn't a data type that can be written out by python. The only way I've been able to get this to run successfully is to use this in the Python Window in an ArcMap Session using the network data you want to trace. If someone else out there has been able to use this successfully via a standalone script, please let me know the steps involved because I'd very much appreciate it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's what I have so far. Definitely not the end product, but the only way I can work it so far:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;sdnNet = r'C:\SDNTest\SDN.gdb\SDN\SDN_Net'
cbs = r'C:\SDNTest\SDN.gdb\SDN\CatchBasin'
oid = 1
rows = arcpy.SearchCursor(cbs)
for row in rows:
&amp;nbsp;&amp;nbsp;&amp;nbsp; newNet = 'SDN_Net'+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp; flags = 'flags'+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp; exp = '"OBJECTID" = '+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(cbs,flags,exp)
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.gp.TraceGeometricNetwork(sdnNet, newNet, flags, "TRACE_DOWNSTREAM")
&amp;nbsp;&amp;nbsp;&amp;nbsp; oid += 1&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now that this is automated, I'm going to total the flow times along the paths that I calculated from another script and add them in to the corresponding flag in the actual network. Eventually I would like to turn this into a geoprocessing task on a public side arcgis server that users can perform this on the fly by selecting the flag of their choice, but for now I'm going to calc them all in myself.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:52:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497899#M28274</guid>
      <dc:creator>ChadMarch1</dc:creator>
      <dc:date>2021-12-11T21:52:53Z</dc:date>
    </item>
    <item>
      <title>Re: Python Trace Geometric Network</title>
      <link>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497900#M28275</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm trying the same thing and not getting anywhere with the stand alone script. Bump.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Sep 2013 22:28:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497900#M28275</guid>
      <dc:creator>KennethPierce</dc:creator>
      <dc:date>2013-09-24T22:28:30Z</dc:date>
    </item>
    <item>
      <title>Re: Python Trace Geometric Network</title>
      <link>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497901#M28276</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;While the help mentions Modelbuilder, the true is same for scripting.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; In ModelBuilder, you can use the Select Data tool to extract specific layers from the group layer and the Make_Feature_Layer tool to create a feature layer from the output of the Select Data tool. &lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I find it easier to run it in ArcMap once to figure out what layer you want from the group, then write the Python for Select followed by either Copy Features or Make Feature Layer (depending on the goals of your task).&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Sep 2013 14:33:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497901#M28276</guid>
      <dc:creator>KevinHibma</dc:creator>
      <dc:date>2013-09-25T14:33:24Z</dc:date>
    </item>
    <item>
      <title>Re: Python Trace Geometric Network</title>
      <link>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497902#M28277</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;While the help mentions Modelbuilder, the true is same for scripting.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;I find it easier to run it in ArcMap once to figure out what layer you want from the group, then write the Python for Select followed by either Copy Features or Make Feature Layer (depending on the goals of your task).&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;That's exactly what I was trying to do, but it will not work as a standalone script. Since it's output is a 'Group Layer' which is only supported within ArcMap, you can do nothing with the trace results. I've worked long and hard on this and this is what I've come to:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
# import arcpy module
import arcpy, os, sys, traceback
print 'done importing'

output = r'C:\SDNTest\SDN_Trace_Output.gdb'
if not os.path.exists(output):
&amp;nbsp;&amp;nbsp;&amp;nbsp; path = output.rsplit('\\',1)[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp; name = output.rsplit('\\',1)[1]
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CreateFileGDB_management(path,name)
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Output fgdb created at '+output
else:
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'deleting old outputs'
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = output
&amp;nbsp;&amp;nbsp;&amp;nbsp; fcList = [f for f in arcpy.ListFeatureClasses()]
&amp;nbsp;&amp;nbsp;&amp;nbsp; for fc in fcList:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Delete_management(fc)

# Set workspace
workspace = r'C:\SDNTest\SDN_Temp.gdb'
arcpy.env.workspace = workspace
arcpy.gp.overwriteOutput = True

# Global Variables

# Name of geometric network
sdnNet = 'SDN_Net'
# Feature class to be used as flags in tracing the geometric network
flags = 'CatchBasin'


# Predefined functions
def calcFlow(line,name,traceNet):
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Select the feature class of the traced network
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.SelectData_management(os.path.join(workspace,'SDN',sdnNet), name)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Used to check to see how many features in each feature class are selected in the trace
&amp;nbsp;&amp;nbsp;&amp;nbsp; desc = arcpy.Describe(name)
&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Number of selected features:", str(len(desc.fidSet.split(";")))

&amp;nbsp;&amp;nbsp;&amp;nbsp; # Make an in memory reference to the selected feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(os.path.join(workspace,name),line)

&amp;nbsp;&amp;nbsp;&amp;nbsp; linecount = int(arcpy.GetCount_management(line).getOutput(0))
&amp;nbsp;&amp;nbsp;&amp;nbsp; print linecount
 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Make an in memory reference to the selected feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(os.path.join(workspace,name),name)

&amp;nbsp;&amp;nbsp;&amp;nbsp; # Local variable to hold total of time in selected feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; time = 0

&amp;nbsp;&amp;nbsp;&amp;nbsp; # Begin cursor on selected feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; with arcpy.da.SearchCursor(line,["FlowTime_secs"]) as rows:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in rows:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Get value from FlowTime_secs field
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flow = row[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # If value has a value and it is not a space
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if flow != None or flow != ' ':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time += flow

&amp;nbsp;&amp;nbsp;&amp;nbsp; if time != 0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Time for {0} is {1}.'.format(line,time)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return [time,line]

try:
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Add flow time field to catch basins if not already present
&amp;nbsp;&amp;nbsp;&amp;nbsp; fields = [f.name for f in arcpy.ListFields(flags)]
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; newField = ['FlowTime']
&amp;nbsp;&amp;nbsp;&amp;nbsp; for field in newField:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if field not in fields:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.AddField_management(flags,field,'FLOAT')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print field+' added'+' to '+flags+'...'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break

&amp;nbsp;&amp;nbsp;&amp;nbsp; # Start an edit session. Must provide the worksapce.
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit = arcpy.da.Editor(workspace)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Edit session is started without an undo/redo stack for versioned data
&amp;nbsp;&amp;nbsp;&amp;nbsp; # (for second argument, use False for unversioned data)
&amp;nbsp;&amp;nbsp;&amp;nbsp; # For fgdbs, use settings below.
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.startEditing(False, False)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Start an edit operation
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.startOperation()
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; path = 'CatchBasin'
&amp;nbsp;&amp;nbsp;&amp;nbsp; fields = ['OID@','FlowTime']
&amp;nbsp;&amp;nbsp;&amp;nbsp; with arcpy.da.UpdateCursor(path,fields) as rows:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in rows:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oid = row[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; newNet = 'SDN_Net'+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flag = 'flag'+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; exp = '"OBJECTID" = '+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempGM = "GravityMain_Temp"+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempLL = "LateralLine_Temp"+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempOC = "OpenChannel_Temp"+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempCul = "Culvert_Temp"+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(flags,flag,exp)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.TraceGeometricNetwork_management(workspace+'\\SDN\\'+sdnNet,newNet,flag,"TRACE_DOWNSTREAM","#","#","#","#","#","NO_TRACE_ENDS","NO_TRACE_INDETERMINATE_FLOW","#","#","AS_IS","#","#","#","AS_IS")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; edgeList = [tempGM,tempLL,tempOC,tempCul]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mergeList = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total = 0
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for edge in edgeList:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; results = calcFlow(edge,edge.split('_')[0],newNet)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; total += results[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mergeList.append(results[1])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if total != 0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; row[1] = total
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break # Leave null
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; path = "tracePath_"+str(oid)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if len(mergeList) != 0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; trace = output+'\\'+path
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Merge_management(mergeList,trace)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Dissolve_management(trace,trace+'_dissolved','FlowTime_secs','#','#','DISSOLVE_LINES')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delete = [tempGM,tempLL,tempOC,tempCul,flag,newNet]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for each in delete:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.Delete_management(each)

# Code that runs when error(s) occurs
except:
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Aborts the edit operation.
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.abortOperation()
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Stop the edit session and save the changes
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.stopEditing(False)
&amp;nbsp;&amp;nbsp;&amp;nbsp; print '\nStopped editing and no changes were saved...'

&amp;nbsp;&amp;nbsp;&amp;nbsp; # If error occurs, get messages and report them back to user.
&amp;nbsp;&amp;nbsp;&amp;nbsp; print "\n" +arcpy.GetMessages(2)
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Get the python traceback object
&amp;nbsp;&amp;nbsp;&amp;nbsp; tb = sys.exc_info()[2]
&amp;nbsp;&amp;nbsp;&amp;nbsp; tbinfo = traceback.format_tb(tb)[0]
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Concatenate information together concerning the error into a message string
&amp;nbsp;&amp;nbsp;&amp;nbsp; pymsg = "\nPYTHON ERRORS:\nTraceback info:\n" + tbinfo + "\nError Info:\n" + str(sys.exc_info()[1])
&amp;nbsp;&amp;nbsp;&amp;nbsp; msgs = "ArcPy ERRORS:\n" + arcpy.GetMessages(2) + "\n"
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Print Python error messages for use in Python / Python Window
&amp;nbsp;&amp;nbsp;&amp;nbsp; print "\n" + pymsg + "\n" + msgs

# Code that executes when script is done.
finally:
&amp;nbsp;&amp;nbsp;&amp;nbsp; # Stop the edit operation.
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.stopOperation()

&amp;nbsp;&amp;nbsp;&amp;nbsp; # Stop the edit session and save the changes
&amp;nbsp;&amp;nbsp;&amp;nbsp; edit.stopEditing(True)
&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Script Complete...'
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The script will run as a stand alone script, but it writes out empty feature classes for every trace (which obviously isn't helpful).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I've posted on the ideas site regarding this, any up-votes would be appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Guess my next step is to brush up on my C# and jump into ArcObjects...&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 21:52:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-trace-geometric-network/m-p/497902#M28277</guid>
      <dc:creator>ChadMarch1</dc:creator>
      <dc:date>2021-12-11T21:52:56Z</dc:date>
    </item>
  </channel>
</rss>

