NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Can I override Engine Callback in Process Model?

Solved!
Go to solution
I'm confused. I suppose I can put the SequenceFilePostStep and the SequenceFilePostStepRuntimeError callbacks into the Process Model I use and thus override this engine callback for all my sequence files what I execute using this Process Model. What I actually see is that I should create these engine callbacks in each of my sequence files to make them work. The ones from Process Model are not called. Call Stack I have is <Process Model> - <Top Sequence File> - <Called Sequence File (where the error take place)>. So, I'd like to maintain my engine callbacks in one place <Process Model> instead of many places <Called Sequence File>.
0 Kudos
Message 1 of 3
(4,045 Views)
Solution
Accepted by topic author Sergey_Kolbunov

Hi,

 

If you'd like to maintain the engine callbacks in one place <Process Model> instead of many places <Called Sequence File>, then use ProcessModelPostStep and ProcessModelPostStepRuntimeError in your process model sequence file. These will be fired after each step in the client sequence. TS Reference Manual Table 10-1, "After the engine executes each step in any client
sequence file the process model calls and each step in any resulting subsequence calls."

 

The equivalent of this would be to use SequenceFilePostStep and the SequenceFilePostStepRuntimeError callbacks in all of your client sequence files. BTW if you wanted a comprehensive error handler you could use ProcessModelPostStepRuntimeError and SequenceFilePostStepRuntimeError in your process model. This would cover all the steps in the process model sequences, and in the client test sequences.

 

I think engine callbacks are enabled and disabled, as opposed to overridden. 

 

cc

Message 2 of 3
(4,030 Views)

Thank you dowNow,

 

I've followed the engine callbacks description from the TestStand I Course Manual. It says: " You can override engine callbacks for a specific sequence file or override them within a process model to affect any sequence file that uses that model." No more details there.

So, while at the second look it looks obvious that "SequenceFile" prefix is for sequence files and "ProcessModel" prefix is for process models, this idea did not come to my mind. I was fixed on the idea that override is always use the same name for a callback. Thanks again.

Message Edited by skof on 01-05-2010 01:44 PM
0 Kudos
Message 3 of 3
(4,010 Views)