NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How do you create multiple execution windows for a custom opterator interface

I am starting to create a custom operator interface for TestStand 3.5 using Labview 8.0.  This is my first exposure to custom operator interfaces (and ActiveX).  The example operator interfaces have only one execution window that changes based on the executions combo box.  My sequence is going to be run with the parallel sequence model (2 test sockets).  So I want my custom operator interface to have 2 execution windows, one for each test socket.  How can I do this?  I created a second execution window but it just mirrors the first execution window. 
0 Kudos
Message 1 of 8
(5,467 Views)

Ray,

Thanks for the example, unfortunatly I don't have the tools to see how this was accomplished. "It requires Microsoft Visual Studio 7 with version 1.1 of the
Dot Net Framework to compile. The example source code is written in CSharp."

But the executable worked and it proves to me that it can be done. Now I need to recreate parts in Labview.  Any ideas?

0 Kudos
Message 3 of 8
(5,449 Views)

Ok, progress is being made.  By trial and error I have discovered that I need to have multiple execution managers, not just multiple execution viewers.  Please correct me if I am wrong.

BTW/FYI, I am modifing the simple NI labview version of the operator interface

0 Kudos
Message 4 of 8
(5,442 Views)

Paul,

Sorry about that. This has come up before which is why I remembered the example.

Can you work anything out from the Csharp code?

Regards

Ray Farmer

Regards
Ray Farmer
0 Kudos
Message 5 of 8
(5,437 Views)
No, the csharp code is pretty foreign to me.  Im not a programmer by education by I have a few years of experience with Labview and CVI.
0 Kudos
Message 6 of 8
(5,434 Views)
You are correct about needing multiple ExecutionViewManager controls.
 
If you haven't already, you should read TestStand Reference Manual>>Chapter 9 Creating Custom Operator Interfaces>>Operator Interface Application Styles>>Multiple Window
0 Kudos
Message 7 of 8
(5,430 Views)

Hi, All:

 With the similar approach, I create a multiple window user interface with CVI. Although it can run, the Execution view doesn't display
anything while execution. In my user interface, there is an applicaiton manager resident in Parent form, and every child forms has
itsown Exection view and Manager.
 Referred to the C# sample, in the function :private void DisplayExecution(Execution execution)
  {
    ....
   if (executionForm == null) // execution is not in a form, make a new form
   {
    executionForm = new ExecutionForm(this, this.axApplicationMgr, execution);
    this.mChildFormsKeyedByViewMgr.Add(executionForm.GetViewMgr().GetOcx(), executionForm);
    SetNewChildFormLocation(executionForm);
   }
   ...
 I guess the execution form "hook" the exectuion view manager via Add(), so the exectuion view can be updated properly.
And according to reference manual of teststand, it mentions that "The application sets the ExecutionViewMgr.UserData property to
attach a handle, reference, or pointer that represents the window." But when I try to utilize this method, I got 2 problems:

1. How to get a window handle of a CVI panel? As execution view are resident in child panels, so I may need the window handle of
 individual child panels.
2. Even the window hanlde is gotten, how can I convert it to a VARIANT Type? According to the function panle of
TSUI_ExecutionViewMgrSetUserData (, NULL, ), the last parameter is a "VARIANT".

Any comments or instructions for my assumption?

Thank you for your help.

0 Kudos
Message 8 of 8
(5,292 Views)