NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Displaying an Error in the CVI User Interface

When an Error occurs in a sequence execution and "Run Cleanup" is selected from the Error popup, the User Interface displays a 'Passed' Status. What parameter in the sequence context can I access from C code will tell me what the real status of the execution is?

The code that is getting the 'Passed' status is:

oleErrChkReportErrInfo(TS_ExecutionGetProperty (panelRec->exeRec->exeH, &errorInfo, TS_ExecutionResultStatus, CAVT_CSTRING, &psResult));

which is called from:

GetExeStatusString(tEDPanelRec *panelRec, int *statusColor)

psResult will only show a 'Passed' status, even when the MainSequence result shows 'Error' in the Sequence Editor. I can't seem to find a parameter that contains the correct MainSequence executio
n status that I can access from C to update the CVI user interface.

Any help you can give on this would be greatly appreciated.
0 Kudos
Message 1 of 4
(2,916 Views)
Hi,

There is a SequenceError you could look at which did contain the reported error.

I tried to stimulate your query (, but failed) by running the example rtebeep.seq in the default CVI IO. But an error was reported in the execution display and the report.

Regards
Ray Farmer
Regards
Ray Farmer
0 Kudos
Message 2 of 4
(2,916 Views)
The Execution Display (step results) do show the error, and the report as well. What I've done is add a banner that shows the PASS or FAIL status in the Execution Display of the CVI User Interface - The SequenceError is valid until you get back to the process model (SequenceFilePostResultListEntry specifically), then it is reset, so it is not useful to use. What I need is a way to display the result (Pass/Fail/Error) of the "MainSequence" step in the process model, once execution has terminated, ideally using API calls in the User Interface to get that information. If you could tell me which properly object contains this status (and the path to that info) it would help alot.

Thanks,
-Jack
0 Kudos
Message 3 of 4
(2,916 Views)
Hello Jack,

The subSequence results and error information can be found under the locals tab of your process model. After executing the sequence, TestStand collects the result and stores under Locals.ResultList.

In the Process Model, the property path that contains the results for the client sequence is Locals.ResultList[0].TS.SequenceCall, and the error can be found under Locals.ResultList[0].Error

Another approach would be creating a global variable with the sequence status and update it from your client sequence. Because it is a global variable, you can access it anywhere.

Regards,

Roberto P.
Applications Engineer
National Instruments.
0 Kudos
Message 4 of 4
(2,916 Views)