From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
06-29-2012 09:57 AM - edited 06-29-2012 09:58 AM
There has been some confusion on our production floor concerning the execution status not matching the UUT result so I did a little experiment with the full featured UI and the Demo computer mother board test. The results replicate the issue and is shown in the attached picture.
What I did was to run the example sequence three times consecitivly (i.e. within the UUT loop) and set the first and third SN to pass and had the second run fail. When the execution completes the exection status seems to indicate that the Run 3 failed which confilicts with the UUT status. I am thinking this may be a bug.
Any comments?
07-02-2012 03:37 PM
If any one UUT fails within the Execution then the Execution fails. This is a feature 😉
07-02-2012 03:41 PM
That is how I explained it to the operators, but they don't have the insite into the whole process model, executions etc. So, it was very hard for me to defend them saying, "look right here, it says fail, Run 3".
07-03-2012 09:54 AM
You can change the behavior by overriding the PreUUT callback or modifying the process model to do:
RunState.Root.RunState.SequenceFailed = False
If you put this in the preuut callback, it should be the last step and you should give it a precondition of:
Parameters.ContinueTesting
So that it doesn't set it to false if the user says to stop so you will correctly get failed if the last UUT failed.
Hope this helps,
-Doug
07-03-2012 10:29 AM
Doug,
This did not work. RunState.Root.RunState.SequenceFailed must not be the correct variable that is being displayed at the end but I think I understand the workaroud you are suggesting. I'll see if I can determine what status is being displayed.
Thanks,
Paul
07-03-2012 02:26 PM
I'll see if I can determine what status is being displayed.
BTW I gave up on this. If anybody has a workaround, let me know.
07-04-2012 01:28 AM
One of the work around or containment :
1) Dont display the confusing execution status.
2) Create a status window ( custom panel) to display the status compatible with the end users.
Details:
1)Over ride process clean back in your test sequence.
Add this in a statement step :
RunState.Thread.PostUIMessageEx(UIMsg_CloseWindows, 0, "", RunState.Execution, False)
2)Over ride Post UUT in your sequence
The Post UUT has the relevant status details in parameters
parameters.result.status ( Passed or Failed)
parameters.UUT.serialnumber
Use this to update a custom status panel developed in Labview or CVI...
Hope this helps.
07-04-2012 07:31 AM
SunRS,
Your #1 was close to a solution that I found desirable, however I didn't like that the execution was closed and didn't allow viewing of the report. But, UI message and the ProcessCleanup callback were the keys to make the desired solution. What I did was place the following UI message in the ProcessCleanup callback.
RunState.Thread.PostUIMessageEx(UIMsg_ModelState_TestingComplete, 0, RunState.Root.RunState.Sequence.Main["MainSequence Callback"].Result.Status, ThisContext , False)
Thanks,
Paul
(mark 1 more for the production operators)
07-04-2012 07:41 AM
Also,
I added the following precondition to that step:
AnyOf:
!RunState.Root.RunState.SequenceFailed
!RunState.Root.RunState.SequenceError.Occurred
End AnyOf
07-06-2012 09:26 AM
@paulmw wrote:
Doug,
This did not work. RunState.Root.RunState.SequenceFailed must not be the correct variable that is being displayed at the end but I think I understand the workaroud you are suggesting. I'll see if I can determine what status is being displayed.
Thanks,
Paul
It worked for me, I tried it before I suggested it. What version of TestStand are you using and what process model?
-Doug