From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How do I display results (anywhere) from the SequenceFileLoad Step?

I want to be able to display the results from the SequenceFileLoad Sequence after the Sequence has been loaded to a window in a customized version of the CVI Test Executive User Interface. I can't seem to find where this Sequence gets called from in the Process Model (breakpoints are ignored), assuming that is where I want to make my changes.
0 Kudos
Message 1 of 2
(2,718 Views)
There are 3 types of callbacks: Model, Engine and FrontEnd callbacks (see table 1-1 and table 6-4 of the TS 2.0 User Manual).

What differentiates these types are
1) Where the callback sequences are located.
2) What calls the callback.

The SequenceFileLoad callback is an engine callback. This means that it is called by the TS engine and not your model. You place the callback in the sequence file, for which upon opening, you want the callback to run.

Since the engine is executing this callback you have no control over parameters that are passed into or out of the sequence. In addition, the file global and local variables of the executed SequenceFileLoad callback are lost when the execution completes.

You could have the callback write the values of
Locals.Result to a file or station globals so that the information is available after the execution completes. There are even temporary station globals (see Engine.TemporaryGlobals) that allow you to keep hidden station globals variables that does not get written to the StationGlobals.ini upon shutdown of your station. These hidden variables do not appear in the station global window.

Attached is a starting point for you. When you open this sequence file the Load callback puts its results into a temporary (hidden) station global. When you run the MainSequence, a subsequence is called that replaces its results with those contained in the temporary station global. This only occurs if the global exists. The subsequence also deletes the temporary global. The results appear as the results of the sequence call step in the MainSequence.

By the way, you enable tracing into the engine callbacks by checking the station option, "Trace Into Separate Execution Callbacks".
0 Kudos
Message 2 of 2
(2,718 Views)