I am developing a fully custom operator UI for TestStand 2012 SP1 (without ActiveX / ApplicationMgr etc; I know, I know...). I'm trying to handle UIMsg_BreakOnRunTimeError appropriately and need advice.
1) My first issue is that I'm calling DisplayRunTimeErrorDialogEx() with the appropraite SequenceContext, however the dialog disables several of the options. Under Handle Current Error, Retry, Ignore and Abort Immediately (no cleanup) are grayed out (disabled) as well as the Break checkbox. With the same sequence SequenceEditor and the sample op UI display this dialog properly. Any ideas on what's causing this?
2) Secondly, how best to handle the user's selections? dontShowAgainForExecution, dontShowAgainForBatch, and suspendExecution seem straightforward enough per the documentation. i.e.
if (dontShowAgainForExecution) execution.RTEOptionForThisExecution = RTEOptions.RTEOption_Continue; if (dontShowAgainForBatch) thread.SetBatchRTEOption(RTEOptions.RTEOption_Continue); if (suspendExecution == false) execution.Resume(); // Correct? The execution seems already paused. What to do if this value is true?
Now what about runTimeErrorAction? I assume for RTEOption_Abort I call execution.Abort(). What are the proper steps for RTEOption_Continue, RTEOption_Ignore, RTEOption_Retry, & RTEOption_ShowDialog?
3) Lastly, once the dialog is closed, my execution completes with the result status Passed rather than Error. What's going on here?
Your help is appreciated as always,
-- Terrence Jones