Table Of Contents

VI Interop (G Dataflow)

Version:
Last Modified: September 25, 2017

Calls a VI sourced in the version of LabVIEW you specify and returns the output of the VI. Configure the settings for this node to call the desired VI.

This node requires you to have LabVIEW 8.0 or later installed on the local computer.

When this node executes for the first time, it launches the specified version of LabVIEW and runs the specified VI in that version of LabVIEW. The launched LabVIEW application remains open even after this node finishes executing.

spd-note-note
Note  

If you launch the specified version of LabVIEW before the VI Interop node executes for the first time, the node fails to execute. Make sure the specified version of LabVIEW is closed before executing the node for the first time.

connector_pane_image
datatype_icon

error in

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

error in does not contain an error error in contains an error
If no error occurred before the node runs, the node begins execution normally.

If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

Default: No error

datatype_icon

error out

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

error in does not contain an error error in contains an error
If no error occurred before the node runs, the node begins execution normally.

If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

Additional Inputs and Outputs

After you specify the path to the VI you want to call, the inputs and outputs of the specified source VI appear on this node.

If you make any changes to the specified source VI after setting the path for the VI Interop node, you must clear the VI Path and reconfigure the VI Interop node to call the updated VI. Otherwise, the VI Interop node does not register the changes to the specified VI.

Automatic LabVIEW Version Selection

When you specify a path to a VI, this node automatically sets the LabVIEW version to the version in which the VI is saved if that version is available. Otherwise, the node automatically sets the LabVIEW version to the nearest LabVIEW version available on the local computer.

You can manually select a different available version of LabVIEW if you do not want to use the version that this node selects.

Node Behavior When Calling a VI That Contains Type Definitions

If the VI you call contains instances of a type definition, this node neither recognizes the type definition nor converts the type definition to a G Type. If the VI expects a type-defined input or generates a type-defined output, this node ignores the type definition and uses the data type of the type definition for the node input or output. This means that a type-defined input or output on the specified VI is not connected to a G Type in the corresponding input or output of the VI Interop node.

Unsupported LabVIEW Features and Behaviors

The VI Interop node fails to execute and generates an error when attempting to call a VI under the following conditions:

  • The VI contains a channel output.
  • The VI contains classes.
  • The VI contains variant data that contains classes.
  • The VI is an FPGA VI.
  • You attempt to call a VI that is part of an LLB or packed library.
  • You launch the LabVIEW version set on the VI Interop node before executing the node for the first time.
  • You attempt to pass a reference through the VI Interop node.
spd-note-note
Note  

Do not use this node if you are building applications for deployment. The VI Interop node only works in the development environment because the VI Interop node requires the previous version of LabVIEW to execute correctly.

Calling Code from Previous Versions of LabVIEW

The VI Interop node allows you to use functionalities from previous versions of LabVIEW that do not currently exist in LabVIEW NXG.

If you cannot replicate the functionality using LabVIEW NXG features, consider moving the functionality into a subVI in the original version of LabVIEW and use the VI Interop node to call the subVI from your LabVIEW NXG application.
spd-note-note
Note  

Using multiple VI Interop nodes in one project can slow down the runtime performance in the development environment.

Where This Node Can Run:

Desktop OS: Windows

FPGA: This product does not support FPGA devices

Web Server: Not supported in VIs that run in a web application


Recently Viewed Topics