LabVIEWForum.de
Cluster mit Variablen Namen aus Array - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Cluster mit Variablen Namen aus Array (/Thread-Cluster-mit-Variablen-Namen-aus-Array)

Seiten: 1 2


Cluster mit Variablen Namen aus Array - HübeLix - 30.06.2016 10:00

Guten Tag werte Gemeinde,

ich habe eine kleine Denkaufgabe.

Ich lese aus einer Datei Initialisierungswerte mit entsprechenden Bezeichnungen aus.
Diese verarbeite ich in zwei Arrays, in einem stehen die Zahlenwerte und im anderen stehen die Bezeichnungen.

Jetzt möchte ich hieraus ein Cluster erstellen.

Jetzt die Aufgabe: Wie bekomme ich die Namen aus dem Array in die Namen der einzelnen Werte des Clusters. Bzw. Geht dies überhaupt

Hat jemand damit schon einmal eine Erfahrung gemacht?

Danke Smile


RE: Cluster mit Variablen Namen aus Array - GerdW - 30.06.2016 10:18

Dazu müsstest du Scripting verwenden, dann kannst du den Cluster programmatisch erstellen…

Zitat:Diese verarbeite ich in zwei Arrays, in einem stehen die Zahlenwerte und im anderen stehen die Bezeichnungen.
Warum zwei Arrays? Ich kann dir nur Key-Value-Paare mittels Variant-Attributen empfehlen…


RE: Cluster mit Variablen Namen aus Array - Trinitatis - 30.06.2016 10:27

(30.06.2016 10:00 )HübeLix schrieb:  Jetzt die Aufgabe: Wie bekomme ich die Namen aus dem Array in die Namen der einzelnen Werte des Clusters. Bzw. Geht dies überhaupt

Hat jemand damit schon einmal eine Erfahrung gemacht?

Du kannst dir über einen Eigenschaftsknoten alle Referenzen der Clusterelemente ausgeben lassen (gemäß ihrer Indizierung).
Diese Referenzen kannst du in ein Array schreiben und dieses Array in ein anderes VI kopieren. In diesem anderen VI kannst du dann jedem Element des Referenzenarrays über einen Eigenschaftsknoten einen Namen aus deiner Namentabelle zuweisen. Voraussetzung hierfür ist jedoch, dass das VI mit deinem Cluster (dessen Elemente du umbenennen willst) im Ruhezustand ist.
Den Cluster musst du allerdings vorher mit Hand erstellt haben (oder über VI scripting)


Gruß, Marko


RE: Cluster mit Variablen Namen aus Array - HübeLix - 01.07.2016 07:53

Vielen Dank euch Beiden für die Lösungsvorschläge. Hättet ihr noch Links wo diese Methoden erklärt werden?2hands

Ich habe schlussendlich einen anderen Weg gewählt, ich verarbeite meine Daten so das ich einen Array erhalte in dem die Beschriftung und die Werte
enthalten sind.

In meinen späteren VIs suche ich nach der jeweiligen Bezeichnung der Werte, so kann die Reihenfolge der Werte in der Ini-Datei verändert werden.
Entsprechend ziehe ich die Daten raus die ich möchte und ordne diese zu. Box


RE: Cluster mit Variablen Namen aus Array - Trinitatis - 01.07.2016 18:09

(01.07.2016 07:53 )HübeLix schrieb:  Vielen Dank euch Beiden für die Lösungsvorschläge. Hättet ihr noch Links wo diese Methoden erklärt werden?2hands

Ich habe schlussendlich einen anderen Weg gewählt, ich verarbeite meine Daten so das ich einen Array erhalte in dem die Beschriftung und die Werte
enthalten sind.

In meinen späteren VIs suche ich nach der jeweiligen Bezeichnung der Werte, so kann die Reihenfolge der Werte in der Ini-Datei verändert werden.
Entsprechend ziehe ich die Daten raus die ich möchte und ordne diese zu. Box

Ich glaube, wir haben hier etwas aneinander vorbeigeschrieben. Wir sind davon ausgegangen, dass du einen Cluster programmatisch erstellen und seinen Controls programatisch Beschriftungen zuweisen möchtest. Das erste geht nur mit Scripting, das 2. mit Scripting bzw. mit der von mir skizzierten Methode.
Jetzt gehe ich aber eher davon aus, dass du einfach nur einen bestehenden Cluster füllen möchtest mit Bezeichnungen und Zahlenwerten.
Das geht durchaus deutlich einfacher. Ein mitgeliefertes VI oder ein Screenshot hätten hier sicher Klarheit geschaffen.


Gruß, Marko

PS: Deine Verwendung von Emotikons erschließt sich mir im übrigen auch nicht so ganz...


RE: Cluster mit Variablen Namen aus Array - Lucki - 04.07.2016 14:07

Vielleicht will Hübelix es einfach so?
[attachment=56229]


RE: Cluster mit Variablen Namen aus Array - Trinitatis - 06.07.2016 10:08

(04.07.2016 14:07 )Lucki schrieb:  Vielleicht will Hübelix es einfach so?

...na vielleicht teilt er uns das ja noch mit...


RE: Cluster mit Variablen Namen aus Array - Tobias1 - 19.08.2016 09:53

Hallo zusammen,

ich bin zwar nicht Hübelix, interessiere mich aber für die Lösung von Lucki.
Ich möchte einmalig eine Kalibrierdatei auslesen und die Namen der Kalibrierfaktoren mit deren Werten verknüpfen, so dass ich im Anschluss einen Cluster erhalte, dessen einzelne Komponenten ich später mit der Funktion "Nach Namen aufschlüsseln" aufrufen kann. Das angefügte Bild scheint genau das Vorgehen darzustellen, welches mein Problem löst. Allerdings kann ich den Lösungsweg anhand des Bildes nicht reproduzieren. Wäre jemand so nett, ein solches VI zur Verfügung zu stellen?

Um zu verdeutlichen was ich vorhabe, befindet sich im Anhang ein Beispielprogramm mit meiner Kalibrierdatei, welche ich auslese. Ich erhalte aus der Datei sowohl ein Array mit den Kalibrierwerten und ein Array mit den zugehörigen Variablennamen. Im VI selbst habe ich den Dateipfad zum Auslesen meiner Kalibrierdatei auf "C:\Downloads\Beispiel_Cluster_Variablennamen_lv14_img\Kalibrierdatei2.csv" eingestellt.

Vielen Dank im Vorraus für etwaige Hilfe!

Beste Grüße

Tobias


RE: Cluster mit Variablen Namen aus Array - GerdW - 19.08.2016 10:09

Hallo Tobias,

Zitat: so dass ich im Anschluss einen Cluster erhalte, dessen einzelne Komponenten ich später mit der Funktion "Nach Namen aufschlüsseln" aufrufen kann. Das angefügte Bild scheint genau das Vorgehen darzustellen, welches mein Problem löst.
Dein VI scheint dieses Problem zu lösen - tut es aber nicht!

- In deinem VI verwendest du nicht "Unbundle by name", sondern nur "Unbundle".
- UnbundleByName zeigt dir momentan nur Elementnamen nach dem Schema "xyz [lfd. Nr.]" - das dürfte kaum sein, was du willst.
- Luckis Beispiel oben ändert "nur" die Untertitel der Clusterelement, nicht die eigentlichen Namen - UnbundleByName bezieht sich aber auf die Namen…
- Du kannst den Cluster nicht zur Laufzeit mit neuen Elementnamen erstellen, deshalb verwendet Lucki ja die Untertitel!
- Wenn du einen Cluster dynamisch definieren könntest (d.h. Elemente mit neuen Namen erstellen), dann müsstest du auch UnbundleByName dynamisch an die Namen anpassen können - alle diese "könnte" verdeutlichen Dinge, die in LabVIEW nicht möglich sind…
- Die Funktion ArrayToCluster wird leider selten richtig verwendet, ich halte sie auch hier für am falschen Platz…

Ansonsten: Profil_ergaenzen


RE: Cluster mit Variablen Namen aus Array - Tobias1 - 29.08.2016 10:04

Hallo GerdW,

Danke erstmal für die Antwort!

Mein Programm war nicht als Lösungsvorschlag gedacht, sondern benötigt diesen Lösungsvorschlag zur Fertigstellung! Mein Programm liest nur Variablennamen und Variablendaten aus einer CSV-Datei. Im Anschluss daran würde ich diese gerne einmalig zusammenführen, so dass die getrennt vorliegenden Namen und Daten einmalig zusammengeführt werden können.

Ich dachte, dass genau dies von Luckis Programm getan wird.

mfg
Tobias