The WorkflowExecutionResultobject provides the result of executing a step in the workflow.
The WorkflowExecutionResult provides the return code, which indicates the status of the step's execution. Each step has its own valid return codes and they can be used to guide the path of the workflow.
The code returned after executing a step in the workflow. It indicates whether the step was successful or failed and may be used to drive the workflow execution.
The following script shows how a return code can be obtained from a step's execution.
import arcpy, sys, traceback #Define the callback response function. In this case it will prompt the user using the console to respond. def callback(question, responses): # Print out the expected responses for resp in responses: print("[%i] %s" % (resp, resp)) # Prompt the user to respond val = int(input("%s - %s: " % (question, question))) # Return their response. Currently only returning the value, but could also return a note (for questions) and the name of the response return (val, "", "") #Establish a connection to a Workflow database conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc') #Get a Job for Execution job = conn.getJob(77601) try: #Execute the current Step in the workflow result = job.executeStep(callback=callback) print ("Executing the first step returned %i" % result.returnCode) #Run the next Step in the workflow result = job.executeStep(callback=callback) #Mark the step as complete job.markStepAsComplete(callback=callback) #Raised when a step in the workflow encounters an execution error except wmx.WorkflowExecutionStepError as e: print ("Step failed to execute:") print("-"*60) traceback.print_exc() #Raised when a workflow encounters an execution error except wmx.WorkflowExecutionError as f: print ("Workflow failed to execute:") print("-"*60) traceback.print_exc()