Il peut arriver qu'un VI doive traiter des données de différents types de façon générique. Vous pourriez écrire un VI pour chacun des types de données, mais il est difficile de maintenir de multiples exemplaires d'un VI, car il faut penser à modifier tous les exemplaires si vous en modifiez un. Vous pouvez résoudre ce genre de problème en utilisant le type de données variant disponible dans LabVIEW. Le type de données variant est un conteneur générique pour tous les autres types de données disponibles dans LabVIEW. Lorsque vous convertissez d'autres données en variant, le variant stocke les données et le type initial des données, ce qui permet ultérieurement à LabVIEW de reconvertir correctement les données variant dans les données d'origine. Par exemple, si vous convertissez des données chaîne en variant, le variant stocke le texte de la chaîne et un indicateur signalant que ces données étaient une chaîne (plutôt qu'un chemin, un tableau d'octets, ou d'autres types LabVIEW possibles).

Utilisez les fonctions Variant pour créer et manipuler des données variant. Vous pouvez convertir des données LabVIEW de n'importe quel type en données de type variant afin d'utiliser ces dernières avec d'autres VIs et fonctions. Plusieurs propriétés et méthodes, telles que la méthode Obtenir un VI:Type de données du connecteur et la propriété Connecteur:Type de données, renvoient le type de données variant. Utilisez les VIs d'analyse de types de données pour obtenir le type de données d'un variant et les informations sur le type de données. Vous pouvez aussi vérifier si le type de données d'un variant correspond à un type de données spécifique.

Utilisez des données de type variant lorsqu'il est essentiel de manipuler les données indépendamment de leur type, comme par exemple quand vous transmettez ou que vous stockez des données, que vous lisez et/ou écrivez à partir ou vers des dispositifs inconnus ou que vous stockez des informations dans une pile, une file d'attente ou un notificateur, ou encore que vous effectuez des opérations sur un jeu de commandes hétérogènes.

Par exemple, utilisez des données de type variant lorsque vous utilisez des objets ActiveX qui requièrent des données de type variant. Vous pouvez aussi utiliser des données de type variant avec les références de commande pour lire ou modifier les valeurs d'une commande sélectionnée par programmation.

Vous pouvez aussi utiliser la fonction Aplatir en chaîne pour convertir un type de données en données de type chaîne et représenter les données indépendamment de leur type. Il est utile d'Aplatir les données en chaînes lorsque vous utilisez TCP/IP pour transmettre des données car ce protocole ne peut interpréter que les chaînes. Toutefois, l'utilisation de données aplaties est limitée, puisque LabVIEW ne peut pas transformer les données aplaties quand le type de données d'origine ne correspond pas au type de données résultant de la conversion. Vous ne pouvez pas aplatir des données variant ActiveX. De plus, la tentative de redresser un entier aplati sous la forme d'un nombre à virgule flottante de précision étendue se solde par un échec.

Le type de données variant a un autre avantage : il est capable de stocker les attributs des données. Un attribut est un ensemble d'informations sur les données que vous définissez et que le type de données variant enregistre. Par exemple, si vous voulez connaître l'heure à laquelle des données ont été créées, enregistrez-les comme données variant et ajoutez-leur un attribut nommé Heure pour stocker la chaîne d'heure. Les données des attributs peuvent être de n'importe quel type. Utilisez des attributs variant quand vous voulez trier les données en fonction d'un attribut particulier, identifier le périphérique ou l'application qui a généré les données ou filtrer les données pour trouver uniquement les données des variants comportant un attribut particulier.

Remarque Si vous utilisez la fonction Aplatir en chaîne sur des données variant, LabVIEW aplatit le variant et tout son contenu, y compris les attributs. Cependant, si vous utilisez la fonction Variant en chaîne aplatie, LabVIEW n'aplatit que le variant et supprime les attributs.