LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to query a dynamically loaded subVI for its input terminal names?

Solved!
Go to solution

Hello,

 

I have an application where I am using dynamically loaded subVI's and I need a way to query the subVI for its input terminal names.  I will be using many different subVI's now and in the future and the terminals will not be known.

Any help would be greatly appreciated.

 

Thank you in advance! 

0 Kudos
Message 1 of 7
(3,287 Views)

If you have the reference to the instance of the SubVI, then you can use the VI.Panel.Controls[] property to get an array of all of the control/indicator references. You can then check the 'indicator' and 'label' property to determine the name and find out if it is a control or indicator.

 

There is also a VI scripting property for 'is on connector pane' but this probably won't work in a built application.

 

(Typically, if I am dynamically calling VIs, I use the asynchronous call by reference node which forces you to keep the connector pane the same and then use other methods to communicate to my dynamically called SubVIs)


LabVIEW Champion, CLA, CLED, CTD
(blog)
0 Kudos
Message 2 of 7
(3,281 Views)

Sam

 

Thanks for the quick response. I do have a reference to the subVI  but I can't find VI.Panel.Controlls[] . I'm new to LabView so if you could point me in the right direction that would be a help.

 

Thanks,

Larry

0 Kudos
Message 3 of 7
(3,267 Views)
Solution
Accepted by lsmith5161
0 Kudos
Message 4 of 7
(3,256 Views)

First you get the reference to the front panel of the VI, then you get the Controls[] property:

FrontPanelControls.png


LabVIEW Champion, CLA, CLED, CTD
(blog)
Message 5 of 7
(3,254 Views)

Nevermind, I found it thanks for the help!

0 Kudos
Message 6 of 7
(3,252 Views)

The credit goes to Sam, I just showed the property nodes that he described!

0 Kudos
Message 7 of 7
(3,227 Views)