NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Batch execution trace event

Solved!
Go to solution

hi

 

i am modifying testexec solution to support batch execution

looking for a way to identify similar trace event inside your api

 

for single uut i used 

exViewMgr_TraceEvent(object sender, NationalInstruments.TestStand.Interop.UI.Ax._ExecutionViewMgrEvents_TraceEvent e

 

how can i identify each socket starting new step event for example?

 

0 Kudos
Message 1 of 19
(4,304 Views)

Short answer: One ExecutionViewManager per execution.

 

Long answer:

Each socket is an individual execution. The ExecutionViewManager is connected to a single execution. That means that if you want to display/track multiple sockets, you need the same amount of ExecutionViewManagers (and appropriate visual controls).

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 2 of 19
(4,290 Views)

ok , can you please elaborate on the multiple execution view managers 

 

i created another AxExecutionViewMgr element named "axExecutionViewMgr1" and assigned its trace event to a dedicated handler function(hoping to handle this 2nd thread exec inside)

 

the thing is that this 2nd AxExecutionViewMgr trace event is not envoked

 

what else should i assign ?

0 Kudos
Message 3 of 19
(4,282 Views)

If you want to display the tracing, you need a second SequenceView.

Then connect the second SequenceView to the second ExecutionViewManager and assign the second socket execution to that ExecutionViewManager.

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 4 of 19
(4,278 Views)

can you please write this line which 

connects the second SequenceView to the second ExecutionViewManager and assign the second socket execution to that ExecutionViewManager.

 

I need coding support here..

c# .net

0 Kudos
Message 5 of 19
(4,276 Views)

Copy the line which is used for the default control and modify it accordingly.

 

Hint: The method you look for is "ConnectExecutionView" (for the first part of the question).

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 6 of 19
(4,274 Views)

this was the original line:

this.axExecutionViewMgr.ConnectExecutionView(this.axExecutionSteps, ExecutionViewOptions.ExecutionViewConnection_NoOptions);

modified it to :

this.axExecutionViewMgr1.ConnectExecutionView(this.axSequenceFileViewMgr1, ExecutionViewOptions.ExecutionViewConnection_NoOptions);

 

axExecutionViewMgr1 - additional execviemgr

axSequenceFileViewMgr1-additional seqview mgr

 

is this what u mean?

0 Kudos
Message 7 of 19
(4,272 Views)

Yes, and now you have to assign the socket execution to the ExecutionViewManager.

Search the code for any assignment of an execution (e) to an ExecutionViewManager, duplicate and modify the appropriate code accordingly. Please note that you might have to add more than just one line (in order not to break existing code).

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 8 of 19
(4,261 Views)

this is the only place:

private void axApplicationMgr_DisplayExecution(object sender, NationalInstruments.TestStand.Interop.UI.Ax._ApplicationMgrEvents_DisplayExecutionEvent e)
{
// bring application to front if we hit a breakpoint
if (e.reason == ExecutionDisplayReasons.ExecutionDisplayReason_Breakpoint || e.reason == ExecutionDisplayReasons.ExecutionDisplayReason_BreakOnRunTimeError)
this.Activate();

// show this execution
this.axExecutionViewMgr.Execution = e.exec;

this.axExecutionViewMgr1.Execution = e.exec;   //added now


// show the executions page in the list bar
this.axListBar.CurrentPage = EXECUTIONS_PAGE_INDEX;
// in case we are already showing the executions page, ensure we switch to steps or report tab as appropriate
this.ShowAppropriateTabs();
}

0 Kudos
Message 9 of 19
(4,248 Views)

This will attach the same execution to both SequenceView controls. This is not what you want.

You have to attach the socket 0 execution to SequenceView0 and socket 1 execution to SequenceView1....

Norbert
----------------------------------------------------------------------------------------------------
CEO: What exactly is stopping us from doing this?
Expert: Geometry
Marketing Manager: Just ignore it.
0 Kudos
Message 10 of 19
(4,246 Views)