NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

I'm dying for some error information.

I posted a question about this yesterday, but can't seem to make any headway...

I am trying to read the error information from a failed sequence execution from the ProcessUIMessageEventEngine callback - I'm working mostly in the UIMsg_EndExecution and UIMsg_BreakOnRunTimeError callbacks. The Execution.ErrorObject give me no information; same with Execution.ResultStatus. I've also tried reading the thread error object values.

I am using the SequentialModel.seq process model that ships with TestStand 2.0.1. I've tried both the single pass and Test UUTs entry points, I can't get error information out of either. I think Scott was saying that this process model might not be propogating the error information and the 3.0 process model has
fixed that? Is there a 201 version of SequentialModel.seq with this fix? Is it possible to simply distribute the 3.0 version of SequentialModel.seq with the 201 engine?

I also had this crazy idea that I could get step pass\fail information from the ProcessUIMessageEventEngine messages. Unfortunately, I don't see any 'Step_Passed' or 'Step_Failed' messages. Is there any way to be notified of step status?

Thanks for the help,

Aaron
0 Kudos
Message 1 of 3
(2,795 Views)
Hello Aaron -

I don't know if this is the ideal approach, but what you might try is to forgo the end of execution UI message and go for something a little more custom.

Some sort of 'SequenceFilePostStepFailure' Callback in your TS sequence to trap all the information and hold it in a FileGlobal or Local variable might be a place to start. Inside the callback you could post a custom UI message to alert your operator interface that the step had failed and either (a) pass the OI the entire variable (container of info) as an activeX parameter, or (b) let the UI message handler code in the OI use Sequence Context to quickly query TS about the "Parameters.Step" (or "Parameters.Result") value of the callback sequence.

There's also a more generic 'post step' version of th
e callback that triggers after every step, so you could be sending constant messages back and forth to your OI to say 'passed' or 'failed'. I need to go back and look at your earlier post to see the whole story. In any case, this is just one idea, but implementing the callback, whether in 2.0.1 or 3 isn't too difficult and may be a way around having to propagate the data in a more brute-force method or trying to extract the data you want from one of the traditional UI messages.

Regards-
Elaine
Cheers,
Elaine R.
www.bloomy.com
0 Kudos
Message 2 of 3
(2,795 Views)
Aaron -
One new feature of TestStand 3.0 is that the default process models sent some new defined UUT or model events that contain status type information.

Since you are using 2.0.1, you could update your process model to do something similar, that is, post a custom message to your OI. The function you would use would be Thread.PostUIMessage(). A custom message needs to be greater than UIMsg_UserMessageBase (Value: 10000). You could pass the status of the MainSequence call from the TestUUTs or SinglePass entry point using the stringDataParam parameter of the function.

Scott Richardson (NI)
Scott Richardson
0 Kudos
Message 3 of 3
(2,795 Views)