LabVIEW NXG Data Types in TestStand

TestStand provides number, string, Boolean, and object reference built-in data types. TestStand also provides several standard named data types, including Path, Error, LabVIEWAnalogWaveform, and others. You can create container data types to hold any number of other data types. TestStand container data types are analogous to LabVIEW NXG clusters. You can use references to external objects, such as ActiveX (Microsoft ActiveX) objects or VISA sessions, between different types of code modules .

LabVIEW NXG includes a greater variety of built-in data types than TestStand does, so TestStand converts LabVIEW NXG data types in certain ways when calling VIs.

Converting LabVIEW NXG Numeric Representations

The following table shows how TestStand converts LabVIEW NXG numeric representations:

LabVIEW NXG Numeric Representation TestStand Data Type
Real number (U8, U16, U32, I8, I16, I32, SGL, or DBL) Number
64-bit integer numeric (I64) Number {Signed 64-bit integer}
Unsigned 64-bit integer numeric (UI64) Number {Unsigned 64-bit integer}
Fixed-point numeric TestStand does not support calling VIs with fixed-point numeric indicators or controls.
Complex number (CSG or CDB) Number TestStand maps each part of the complex number to separate TestStand Number properties.

Converting LabVIEW NXG Controls and Indicators

The following table shows how TestStand converts LabVIEW NXG controls or indicators:

LabVIEW NXG Control or Indicator TestStand Data Type
Enum (U32, U16, or U8) Enumeration
Ring control (Text Ring, Menu Ring, Text and Picture Ring, or Picture Ring) Number
String String
Path Path or string
ActiveX Control or Automation Refnum Object reference
Waveform LabVIEWAnalogWaveform To create variables for I64 or UI64 Waveforms, you must create a new custom data type, because the representation of the Y element that corresponds to the standard LabVIEWAnalogWaveform data type is set to double-precision 64-bit floating-point.
Refnum (File I/O, VI, Menu, Queue, TCP connection, and so on) Number {Signed 64-bit integer} You cannot use references to internal LabVIEW NXG objects inside TestStand or in other types of code modules. You can store only references to LabVIEW NXG objects in TestStand properties and then pass the properties to other VIs.
Timestamp String TestStand converts the LabVIEW NXG Timestamp data type to a System Time data type and then to a string data type with the m/d/yyyy h:mm:ss.sss AM/PM format, where
m Month as number without leading zero
d Day of the month as number without leading zero
yyyy Four-digit year
h Hour of the day, without leading zero (12-hour clock)
mm Minute of the hour, with leading zero
ss Second of the minute, with leading zero
sss Milliseconds of the second, with leading zero
AM/PM AM or PM uppercase
TestStand rounds fractions of a second to the nearest millisecond.
Error I/O Error By default, when a VI uses the standard LabVIEW NXG error out cluster as an output parameter, TestStand automatically passes that value into the Step.Result.Error property for the step. You can also update the value manually. If an error occurs during execution of the VI and the error out cluster is passed to Step.Result.Error , TestStand launches the Run-Time Error dialog box by default.
Array of x Array of TestStand ( x )
Variant Any TestStand data type
Note Passing LabVIEW NXG I/O references (DAQmx Task Name, DAQmx Channel Name, VISA Resource Name, etc.) through TestStand as a variant is not supported. Use the LabVIEWIOControl instead.
Cluster Container
I/O controls (DAQmx Task Name, DAQmx Channel Name, VISA Resource Name) LabVIEWIOControl