NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

I would like to do something after every subsequence finish execution. Is there any engine callbacks?

Solved!
Go to solution
After every sequence finish execution in a client sequence file, i want to check the status of every step in that sequence. Based on the status, say i want to do something. Currently i am having a subsequence that gets called at the end of every sequence. I was wondering whether i could move this subsequence into some callbacks so that i don't have to call explicitly in every sequence.
0 Kudos
Message 1 of 4
(3,440 Views)
Solution
Accepted by topic author Nathan Vaidyanathan

Saravisu,

 

There is a way, using the SequenceFilePostStep callback. This will execute for every step, but you can use a Flow Control 'If' to Check for PropertyExists("Parameters.Result.TS.SequenceCall"); when true, the step results for the sequence call will be in Parameters.Result.TS.SequenceCall.ResultList.

 

Note this will only execute for steps that occur in the sequence file that contains the SequenceFilePostStep callback.

 

-Jack

Message 2 of 4
(3,431 Views)

If you are able to modify the process model, you could use the ProcessModelPostStepCallback.  That will fire at the end of each step of any client sequence file of that process model. 

 

Keep in mind that any PostStepCallback will incur a performance penalty, since it will be run after each step.

Josh W.
Certified TestStand Architect
Formerly blue
Message 3 of 4
(3,424 Views)

Jack,

 

Thanks Jack. That did the trick. It is working nicely.

 

Josh,

 

Thanks josh. Yes i do have the access to processmodel. I will definitely look into putting that into the process model so that i don't have to ask all the developers to include the callback in their sequence. 

0 Kudos
Message 4 of 4
(3,391 Views)