07-12-2016 10:05 AM
I have a subsequence that I point the user to when they are asked to isolate a board failure. To provide them with some flexibility, I have a popup that gives them a number of opetions (see attachment). I have a test procedure that instructs them to select/run individual steps (i.e. '1' or '3' in the png). The flow control (denoted by '2') is noise they don't really need to worry about, and may/will cause confusion (and possibly problems for me if they select them accidentally). Is there a way to hide these Flow Control steps during runtime so that the user only sees '1' and '2' (and the other similar 'valid' selections?
Solved! Go to Solution.
07-12-2016 12:32 PM
07-12-2016 01:11 PM
I just want to hide the flow control (if possible) so the user has less clutter through which to filter
07-12-2016 02:45 PM
Put it all in a subsequence and disable tracing into the sequence call.
07-12-2016 03:03 PM
I thought of that, but once I move the select statement (and the associated case statements) into a subsequence file, I lose scope, and the Select and Goto statements no longer have visibility into the labels found in the parent subsequence (i.e. MR_RPack_R55).
07-13-2016 06:20 AM
Hi,
You could use a subsequence to evaluate the result of the Message Popup ButtonHit,
By passing in the Result.ButtonHit and the subsequence shall return the unique step id for the appropriate step -
The subsequence would use the select/case structure to set Locals.NextStepUniqueId:
The top-level sequence could then call the returned step id as a post-action to the subsequence:
(SequenceFile attached).
Regards,
Charlie
Charlie Rodway | Principal Software Engineer | Certified TestStand Architect (CTA)
Computer Controlled Solutions Ltd | NI Silver Alliance Partner | GDevCon#1 Sponsor
07-13-2016 06:30 AM
If there wasn't an explicit need to have the logic as flow control, then I'd be tempted to compact it all into the post-action of the Message Popup;
By setting the Message Popup Post Action to Goto Step, <Specify by Expression>, Use Custom Condition (TRUE):
And using the following Expression:
Step.Result.ButtonHit == 1 ? RunState.Sequence.Main["MR_RPack_R55"].UniqueStepId : Step.Result.ButtonHit == 2 ? RunState.Sequence.Main["End_PCI_Isolation"].UniqueStepId : Step.Result.ButtonHit == 3 ? RunState.Sequence.Main["MR_R103"].UniqueStepId : Step.Result.ButtonHit == 4 ? RunState.Sequence.Main["PCI_Intf_PT"].UniqueStepId : ""
This should goto the appropriate step following the Message Popup.
(SequenceFile attached).
I hope this helps.
Charlie
Charlie Rodway | Principal Software Engineer | Certified TestStand Architect (CTA)
Computer Controlled Solutions Ltd | NI Silver Alliance Partner | GDevCon#1 Sponsor