le 03-09-2015 07:26 AM
ouadji a écrit :
Bonjour Eric,
L'idée du Variant est magnfique.
Le seul (gros) soucis est qu'il faut en connaître le contenu (type) pour pouvoir en extraire l'information.
Pas vraiment, car le variant contient la donnée mais aussi le type, et il est possible de récupérer les types à partir du variant.
dans mon exemple de la création d’une fonction permettant de convertir (formater) « n’importe quoi » en une chaine de caractère (toutes les données dans la même chaîne de caractères). Le but est de permettre l'utilisation pour les rapports .
Il n’est pas possible de coder la fonction pour String, 1D de string, DBL, cluster de … une fonction avec un variant fera le travail. Convertir le variant en un tableau de VData, et boucle sur les VData
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
03-09-2015 08:18 AM - modifié 03-09-2015 08:18 AM
Excel et les variants ...
j'aurais du mal de tester et de mettre en pratique ... je n'ai pas l'utilité de travailler avec Excel
par contre, ici :
Je serais bien intéressé de connaître le code contenu dans le sous-VI rectangulaire cablé au sélecteur d'entrée de la structure Case.
le 03-09-2015 09:14 AM
tu ne me cris plus dessus....
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 03-09-2015 09:18 AM
Les bibliothèques OpenG, les indispensables à télécharger
Les bibliothèques OpenG contiennent des centaines de VIs en open source créés par la communauté OpenG et partagés dans le cadre de la licence BSD-3-Clause (approuvée par Open Source Initiative). Cela permet une utilisation commerciale dans vos applications propriétaires. Ces bibliothèques sont indispensables pour vos projets LabVIEW, à télécharger gratuitement, elles contiennent des VIs réutilisables couvrant tous les domaines d'applications. Elles incluent :
via le VIMP
Les outils qui vous veulent du bien : dégager plus de temps pour coder avec les solutions NI,
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 03-09-2015 10:39 AM
Tatatata. Ne parle pas de VIPM ou OpenG à Ouadji, il n'en veut pas (vu qu'il ne connaît pas ^^)
En vrai, les variants contiennent 2 parties : Type, et Data. Le Type est un descripteur, un tableau d'entier dont le rôle est de spécifier le type de la donnée du variant. C'est grâce au décodage de ce descripteur qu'il est possible de connaître le type de la donnée. Même pour les types de données complexes.
Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.
03-09-2015 11:49 AM - modifié 03-09-2015 11:54 AM
correct Eric ... pas d'OpenG pour moi.
Pourquoi ? ... par principe, je n'aime pas d'utiliser des "Lego" dont je ne connais pas le contenu.
Luc ... la notion de "gagner du temps" n'a pas de sens pour moi, vu que la finalité est le plaisir de programmer.
Ceci dit ... Je comprends à 200% que gagner du temps à un sens dans un univers différent du mien.
Je vais quand même aller voir ce qu'il ya dans ce VI (celui cablé au sélecteur de la structure Case)
pour voir comment il arrive à extraire le type des données contenues dans un variant.
et ... je reprogrammerai l'idée à ma façon.
Pourquoi reprogrammer ce qui existe déjà ? ... Tout simple, pour apprendre !
Car c'est seulement à ce moment là que j'aurai réellement compris (et acquis) quelque chose de plus.
Utiliser des boîte noires "entrées-sorties" n'offre, pour moi, aucun intérêts. (dans l'idée d'une connaissance réelle d"un langage)
Eric : " il n'en veut pas (vu qu'il ne connaît pas ^^) " rhoo, un peu facile celle là.
Je ne connaissais pas les XControl, les XNodes, la récursivité sous LV, et j'en passe ... ce qui ne m'a pas "empêché de".
Et plus globalement, je ne connaissais pas LV ... ce qui ... la suite est connue
[edit]
un kudo pour Luc, pour son lien ... papier intéressant que je vais lire avec intérêt.
Qui de plus ... m'a permis de voir ton visage un peu correctement
Woaw ... ça le fait, beau mec, la classe
[/edit]
03-09-2015 03:07 PM - modifié 03-09-2015 03:07 PM
ouadji a écrit :
Je vais quand même aller voir ce qu'il ya dans ce VI (celui cablé au sélecteur de la structure Case)
pour voir comment il arrive à extraire le type des données contenues dans un variant.
et ... je reprogrammerai l'idée à ma façon.
C’est un VI magnifique. Il contient le code… des données… Je ne suis pas sûr que tu le réécrives…
Bonne chance
A+
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
03-09-2015 06:24 PM - modifié 03-09-2015 06:35 PM
j'ai ouvert le VI OpenG "Get TDEnum from Data"
Je découvre quelque chose que je ne connaissais absolument pas.
Je ne parle pas des VIs OpenG par eux-mêmes, mais de ce qu'ils utilisent.
Les Descripteurs de type (Eric en a parlé rapidement dans une de ses réponses)
Je viens (ci-dessus) de sortir d'un variant le type exact de la donnée qu'il contient .... un Tableau 2D de booléens.
et ça ... c'est la "Pierre de Rosette", la clef manquante.
alors là .... c'est une porte énorme qui s'ouvre.
Silence et méditation s'impose.
[edit] Ces Descripteurs de type ouvrent la porte d'un vrai polymorphisme [/edit]
le 03-10-2015 02:52 AM
ouadji a écrit :
et ça ... c'est la "Pierre de Rosette", la clef manquante.
je t'avais dit....
Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion
MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group
le 03-10-2015 03:02 AM
Grâce à la participation de vous tous, après quelques itérations et en variant l'argumentation, ouadji semble sur le point de succomber aux charmes de cette fonctionnalité ô combien utile ! Le chemin aura été long mais il me semble que le but n'a encore jamais été aussi proche.
PS : A quand une nouvelle version du Chess Game avec des variants ?