NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Monitor the previous step result "RunState.PreviousStep.Result" of Teststand running client sequence file in a outside exe file

I try to build an exe file in CVI, which is used to monitor the previous step result "RunState.PreviousStep.Result", when certain client sequence file is running. I have some concerns.
1, Is this kind of monitor tool already available?
2, which API function should I use in order to get the running Teststand handle?
3, when having the handle, can I use the API function like "TS_PropertyGetValNumber (GlobalseqContextCVI, NULL, "RunState.PreviousStep.Result.Numeric", 0, &Numeric);"?
4, thread concern?
Thanks!
Jacky
0 Kudos
Message 1 of 2
(6,010 Views)
Hi,
  I assume from the title that you're trying to make a separate cvi executable that monitors for a separate operator interface running a sequence file.
The best architecture in this case is to use the post step callback in the client sequence file to place the result into a queue where the name of the queue starts with a * (such as *fred ). This makes the queue available across processes. The post step callback has a parameter which is the step itself, so you could easily get the Parameters.Step.Result.Status from that along with the nameof(Parameters.Step) and whatever else you needed.
 
Then make your separate cvi executable run a sequence that gets that information by reading the queue. i.e. the other cvi executable would be an operator interface in itself.
 
That way you don't miss a step result.
 
Hope that makes sense.
 
Thanks

Sacha
// it takes almost no time to rate an answer Smiley Wink
0 Kudos
Message 2 of 2
(5,931 Views)