11-14-2013 05:01 AM
I'm a beginner with TestStand. I'm trying to go through the entire sequence until very end with some dialog windows left opened without waiting for a user to click OK/QUIT on the dialog window in order to go to the next step of the test. I want the test to end without any user interaction needed.
I've tried with dynamically called vi but it pauses the test - waits until user closes the window and what is more it does not pass the parameters to the dialog box (perhaps I did something wrong with dynamic call.
Is there any way to open dialog vi and proceed with the test with no user interaction?
PS Dialog vi only receives the arguments and displays them on the graph.
Solved! Go to Solution.
11-14-2013 05:53 AM
What you are looking for is modification of the UI to display this information.
Use Custom User Interface Messages (UIMsg) for this and adopt your custom UI for handling them.
Norbert
11-14-2013 06:04 AM
Unfortunately I don't understand what you mean, do you have any manual for that? that's mean i don't need VI anymore?
11-14-2013 06:17 AM
You can find information about creating custom UIs for TestStand applications in the TestStand documentation (installed with TestStand).
Also, TestStand 1 and 2 classes from NI cover these topics, for UI specifically the TestStand 2: Customization class.
A third source for documentation is the internet, recommended ni.com pages like the TestStand Advanced Architecture Series.
hope this helps,
Norbert
11-14-2013 06:56 AM
Uh, I think I know what you mean. I have already done UI (one of those ready ones). While creating a sequence file (*.seq) in one of steps I want to call a VI, draw a graph, left the window open and proceed with the following steps in the sequence(not wait for closing the VI). It ought to work independently of UI it is used in.
Is it possible?
Michał
11-14-2013 08:13 AM - edited 11-14-2013 08:15 AM
He Michal,
What you're describing is very possible. You mentioned that TestStand waits for the VI to close at the end of execution--that's expected, and but have a function you can use in LabVIEW called the Termination Monitor to monitor TestStand's status and exit the VI when TestStand is trying to end the execution. Here's a Help page on the Termination Monitor: http://zone.ni.com/reference/en-XX/help/370588D-01/lvteststand/teststand_-_get_termination_monitor_s...
I also have an example of the termination monitor in use, which I will attach to this email. The sequence file is in TestStand 2013 and the VI is in LabVIEW 2010. The seq file in this case just runs the VI so if you aren't able to open it due to your TestStand version, you can just call the VI with an Action step in a sequence to see it work.
Let us know if you have any more questions!
11-14-2013 09:19 AM - edited 11-14-2013 09:20 AM
The easiest thing to do would be to put your vi in a subsequence and call it using the "New Thread" option from a sequence call. If you do so you should using the terimination monitor and Thread.ExternallySuspended APIs in your vi to make it so that your other TestStand threads can be debugged and the execution can be terminated.
Hope this helps,
-Doug
11-14-2013 01:23 PM
I have used the VI you attached. I called in my own TestStand sequence. Although I did not get desired result - the window poped out but the test waited till I press stop button, the sequence execution did not proceed.
http://i79.photobucket.com/albums/j122/thor_tory/1_zpsf0b51954.png~original
Michał
11-14-2013 02:35 PM
OK, I set it as a new Thread and it works! Although one thing more, is it possible to generate the report too, now entire test goes to the very end but the report is generated after that new thread is closed. Is there anything to be done in that issue!?
Michał
11-15-2013 08:49 AM
Hey Michal,
Do you have On-The-Fly reporting turned on in your report options? I set up the sample VI to run in a new thread and set a breakpoint later in the sequence. At this point, in the directory with my sequence file I had a report_Tmp.xml file which contained the part of the report up to that point.