NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Access to resultlist

Hello,

How do you access the test results found in "ResultList" which are generated while in the main sequence? When I am back in the SequentialModel sequence I am unable to find the data that was just generated. Actually, I would like to access this information from within a subsequence call (PostUUT Callback). I have thought about the reference that is being used in other subsequence calls (TestReport Callback) but I cannot seem to change the inputs to PostUUT Callback (i.e. add the reference) futhermore if I were able to get the reference in there how would I decode it in LabVIEW?

Thanks,

Kevin
0 Kudos
Message 1 of 17
(6,858 Views)
Assuming that your test sequence is actually generating some results, when you return to the process model sequence the results can be found at Locals.ResultList[0].TS.SequenceCall.ResultList. If you need all of the test results in the PostUUT Callback you should be able to copy the MainSequenceResults container from the parameter list in either TestReport or LogToDatabase sequence and select Locals.ResultList[0] to pass to it when you specify the module.
Message 2 of 17
(6,859 Views)
Thanks Dennis, I got as far as pass the container by reference in the PostUUT Callback (basically by trial and error :-). Now I have a container, how do I decode or access the information within LabVIEW?
0 Kudos
Message 3 of 17
(6,860 Views)
The Locals.ResultList[0].TS.SequenceCall.REsultList was very helpful...Thanks!
0 Kudos
Message 4 of 17
(6,862 Views)
I posted this question to the TestStand List and Sacha sent me a vi that was really close to solving my problem. The key point I was missing was that within the Locals.ResultList[x].TS.SequenceCall.ResultList resided the UUT Result Container(s)! Not the data for each test run for the UUT. I was also missing the method of how to get at that container (via refnum) which is done by using 'GetObjectProperty' This method allowed me to get a refnum for the Locals.ResultList[x].TS.SequenceCall.ResultList in order to obtain the number of elements (where x is the last test number run). Then using 'ResultList[%d].TS.SequenceCall.ResultList[y]' from the Locals.ResultList refnum I was able to extract the actual data from each of the tests run (for example ResultList[%d].TS.S
equenceCall.ResultList[0].TS.StepName) via the 'GetValString' method. Another point, if you are trying this from scratch, is that the first thing you must do is get the renum from the 'Caller' of the subsequence. I am posting a vi to help illustrate...pictures are worth a 1000 words 🙂

Hope this helps someone else too...

Kevin
Message 5 of 17
(6,869 Views)
Yes!, Thanks a lot! It's very useful for analyzing and presenting results in Labview.
0 Kudos
Message 6 of 17
(6,546 Views)
Can you explain how you actually use this VI?  I assume you call it from TestStand and pass it the sequence context.  Then what?
0 Kudos
Message 7 of 17
(6,522 Views)
Hello mrbean,

Well, yes, I call this VI from TestStand, and for collecting the ResultList info that it's important to present and to record in an external database. Find attached a subVI example. I suppose there are other interesting solutions/purposes, even more elegant -- but I found it very useful.

Regards,

0 Kudos
Message 8 of 17
(6,505 Views)
Hi,
 
So why dont you use the LogToDatabase callback?
 
Regards
Ray Farmer
Regards
Ray Farmer
0 Kudos
Message 9 of 17
(6,504 Views)
Smiley Happy It's for a special tailored database in which I use a non-NI database toolkit.
0 Kudos
Message 10 of 17
(6,492 Views)