09-13-2010 04:18 PM
The TS code I need to modify needs to have a subsequence and the subsequence will have about 5 or 6 verify steps. What is the standard method for rolling up the results of all these Verify statements to give an overall pass/fail value for the subSequence? From other code I have looked at it looks like this can be passed up many levels: ie a sub-sub-sequence passes pass/fail up to the subsequence and it passes its pass/fail up to the main sequence.
Seems strange that I have been maintaining a lot of VIs in this suite for several months but never had to deal with TS's interpretation of pass/fail data before.
thanks,
jvh
Solved! Go to Solution.
09-14-2010 03:16 AM
jvh,
a sequencecall in TestStand has a quite simple result in the default settings: If one step of the subsequence fails, the calling step also returns "Failed".
You can change this on steplevel of the subsequence by disabling the option "Step Failure causes Sequence Failure" found in the run options of the step you want to modify.
This is the easiest way to change this behavior. There are other ways (e.g. customized sequence call step) as well if this is not the feature you are looking for.
Norbert
09-14-2010 08:49 AM
@Norbert B wrote:
jvh,
a sequencecall in TestStand has a quite simple result in the default settings: If one step of the subsequence fails, the calling step also returns "Failed".
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Thanks. So now that my calling step fails as I had hoped I need to look at its results in the next step to decide what to do. I know one can look at the previous step passfail result somehow, right?
09-14-2010 09:50 AM
Of course you can look at the previous result. Do you need anything more than a precondition? You can easily select the previous step (or any other step) status. Even if you don't want to use a precondition, you can look at the expression that is created by one to see the syntax.
09-14-2010 11:59 AM
I need the previous step result. Based on the result I will send one of two telnet messages to the UUT. Just need the syntax for for looking at the previous result.
thanx
09-14-2010 12:09 PM
Then a precondition should work just fine. You can simply select Insert Step Pass or Insert Step Fail and then pick the step. If you want to look at the property, it is RunState.PreviousStep.Result.Status.
09-14-2010 03:05 PM
Had to think about it a minute but believe I got it. I'll add two expression statements for pass and fail to set the string I need to send in a local. Then one of them will execute because they are looking at the same previously executed subsequence, set the local and I can pass it to my telnet VI. Ought to work like a hose....
Thanks.
09-14-2010 03:21 PM
If you have two expression statements, the second cannot use the previous step status because the previous step is your first expression statement. Why dare you unwilling to try the precondition where you can specify the step by name?
09-15-2010 09:23 AM
I am using the pre-condition. Perhaps my post was unclear where I stated "one of them will execute because they are looking at the same previously executed subsequence". There are two expressions and I used the pre-condition builder to have them both look at the same previously executed subsequence as opposed to looking at "the previous statement", which one could infer from my less than clear statement. So based on that previously executed statement only one of the expressions should be executed.
Sorry for the confusion. He is my steady ally, you know....