LabVIEWForum.de
Referenzen und Variant - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Referenzen und Variant (/Thread-Referenzen-und-Variant)



Referenzen und Variant - Wendigo - 10.01.2013 21:20

Hallo,

ich schreibe die Referenz von einem Control in ein Variant und möchte dieses Variant später


-rückkonvertieren
-in einen String umformen


Mit "Variant to Data" funktioniert das Umwandeln in einen String auch. Ich habe mir den Ausgabewert allerdings eher so vorgestellt, wie die Referenz unter "Probe" dargestellt wird.

Wie kann ich ein Variant rückkonvertieren, wenn ich nicht weiss, welcher Datentyp das Variant enthält?


RE: Referenzen und Variant - jg - 10.01.2013 21:54

In der "OpenG LabVIEW Data Library" im OpenG-Toolkit findest du passende VIs für dein Vorhaben.

Gruß, Jens


RE: Referenzen und Variant - Wendigo - 10.01.2013 22:04

(10.01.2013 21:54 )jg schrieb:  In der "OpenG LabVIEW Data Library" im OpenG-Toolkit findest du passende VIs für dein Vorhaben.

Gruß, Jens

Eine anderweitige Lösung gibt es nicht? Mir würde vorerst auch das Rückkonvertieren reichen.


RE: Referenzen und Variant - GerdW - 11.01.2013 08:58

Hallo Wendigo,

Zitat:Wie kann ich ein Variant rückkonvertieren, wenn ich nicht weiss, welcher Datentyp das Variant enthält?
Wenn du den Datentyp nicht kennst, musst du ihn (bzw. die Informationen darüber) aus den im Variant enthaltenen Daten extrahieren. Dies macht das von Jens genannte VI.
Du kannst natürlich auch selbst etwas programmieren, dann solltest du tief in die LabVIEW-Hilfe eintauchen...

Vielleicht solltest du auch erläutern, warum du Referenzen als Variant weiterreichst und warum du diese dann in Strings umwandelst!?


RE: Referenzen und Variant - Wendigo - 11.01.2013 09:29

Ich möchte spezifische Eigenschaften von einem Control, die immer variieren können in eine Liste schreiben. Dazu möchte ich stets auch die Referenz dazu angeben.

Ich habe das Toolkit nun mal installiert.

Ich wähle das VI "Format Variant into String" aus und möchte dies platzieren. Beim Platzieren soll ich aber die Datei "Get Refnum Type Enum from Data_ogtk.vi" auswählen. Wo finde ich diese?


RE: Referenzen und Variant - GerdW - 11.01.2013 09:35

Hallo Wendigo,

was willst du mit der Angabe der Referenz in dieser Liste erreichen?

Ich bin mir nicht sicher, aber diese Referenzen könnten sich mit jedem Programmaufruf ändern...


RE: Referenzen und Variant - Wendigo - 11.01.2013 10:07

Ich habe eben ein paar SubVI die mir die Referenzen etc. von Controls als Rückgabewert ausgeben. Und das soll ich eben in ner Liste auflisten. Mir ist bewusst, dass wenn die betroffenen VIs nicht offen sind, ich mit den Referenzen nichts anfangen kann. Aber, das soll eben alles in eine Liste. Man muss tun, was man tun muss Smile

(11.01.2013 09:29 )Wendigo schrieb:  Ich habe das Toolkit nun mal installiert.

Ich wähle das VI "Format Variant into String" aus und möchte dies platzieren. Beim Platzieren soll ich aber die Datei "Get Refnum Type Enum from Data_ogtk.vi" auswählen. Wo finde ich diese?

Kann es sein, dass das ToolKit nicht mit LabVIEW 2012 kompatibel ist?


RE: Referenzen und Variant - GerdW - 11.01.2013 10:18

Hallo wendigo,

Zitat:Kann es sein, dass das ToolKit nicht mit LabVIEW 2012 kompatibel ist?
KA, habe weder LV2012 noch OpenG auf diesem Rechner...
Vielleicht fehlt dir aber nur ein Teil des OpenG-Pakets, dieses besteht aus vielen Bibliotheken, die nach Aufgabenbereich sortiert sind.

Nochmal:
Warum der Umweg über ein Variant? Warum nicht einfach die Control-Referenzen über eine allgemeine (generische) Referenz weiterreichen?


RE: Referenzen und Variant - jg - 11.01.2013 10:34

"Format Variant Into String" taucht bei den "OpenG-String-Library" auf. Ich hatte dir zur "OpenG LabVIEW Data Library" geraten. Da ist das fehlende VI drinnen.

Wie hast du das installiert? Wenn du das per VIPM machst, der kennt die Abhängigkeiten der verschiedenen OpenG-Pakete untereinander!

Gruß, Jens


RE: Referenzen und Variant - Wendigo - 11.01.2013 10:41

Hat sich ursprünglich so angeboten.

Ein SubVI hat den Rückgabewert Controlreference, StyleID und ClassID. Ein anderes SubVI hat den Rückgabewert VI Name, Labels aller Controls auf em Frontpanel.

Daher hat sich ein allgemeiner Rückgabewert von Typ Variant eben angeboten. Die Rückgabewerte werden em anderen VI übergeben und dieses schreibt die besagten Rückgabewerte in eine Liste.
Ursprünglich wollte ich einfach ein Cluster machen, aber da die Rückgabewerte so viele unterschiedliche Werte von unterschiedlichen Datentypen beinhalten könnten, habe ich die vermutlich einfachere Lösung gewählt.

(11.01.2013 10:34 )jg schrieb:  "Format Variant Into String" taucht bei den "OpenG-String-Library" auf. Ich hatte dir zur "OpenG LabVIEW Data Library" geraten. Da ist das fehlende VI drinnen.

Wie hast du das installiert? Wenn du das per VIPM machst, der kennt die Abhängigkeiten der verschiedenen OpenG-Pakete untereinander!

Gruß, Jens

Wo finde ich denn dieses "OpenG LabVIEW Data Library"? Den Link zu "OpenG-String-Library" habe ich hier im Forum gefunden. Da haben mir meine Augen wohl einen Streich gespielt. Habe es mit VIPM installiert.

EDIT: Habs wohl im VIPM gefunden..

@JG: Welches VI hast du gemeint?