Ein paar Anmerkungen.
1. Daten in Queue
Daten, die per se für die Allgemeinheit zugänglich sein sollen, in einer Queue zu speichern, hat einen strategischen Nachteil: Einmal ausgelesen sind sie für andere nicht mehr zugreifbar. Wenn, dann Melder nehmen. Oder FGV.
2. Daten in Queue
Siehe HeaderSubVI, Cluster "Main Data Cluster". Schreiben nach Queue. Beim Schreiben in die Queue werden die beiden anderen Untercluster mit konstanten Werten belegt. Woher weiß der Queue-Auslesende, welcher Untercluster gültige Daten aufweist? Besser: FGV nehmen mit Enumerator SetHeaderCluster.
3. VI unsichtbar laufen lassen und in SubPanel anzeigen.
Man kann das so machen. Hat aber (mindestens) einen Nachteil. Folgendes:
Du hast VI X im SubPanel laufen und öffnest über den Projektmanager (nebenbei: mit Projektmanager, so gehört sich das) VI Y. Jetzt kannst du beide VI (X und Y) bearbeiten, was nicht unbedingt nachteilig sein muss. Wenn du jetzt aber Y beendest (kann ja vorkommen, wenn man auf Schließen klickt), dann wird die Abarbeitung beendet. Schließt du jetzt X (was kein Schließen ist, sondern nur ein FP unsichtbar machen), und machst VI Y im SubPanel sichtbar, so ist zwar VI Y sichtbar - es wird aber nicht ausgeführt.
4. Zugriff auf das FP vom FGV aus.
Ich trenne immer gerne Daten vom FP. Das hat den Vorteil, dass grundsätzlich jedes VI (das BD eines jeden VIs) Zugriff auf diese Daten hat ohne selbst ein FP-Element für die Daten haben zu müssen (globale Variablen würden den selben Zweck erfüllen). Irgendwann jedoch muss der Anwender die Daten (z.B. Konfigurationsdaten) eingeben. Das mach ich dann so: Beim Starten des VIs, das als Eingabemaske dient, wird eine Referenz auf den Eingabecluster in das FGV übergeben. Somit kann die FGV auf das Eingabeelement schreiben (oder davon Lesen). Der Anwender mache nun eine Eingabe, daraufhin wird im Cluster-Value-Change-Event der komplette Cluster an die FGV übergeben (Enumerator: neue Daten). Jetzt kommt der Vorteil: In der FGV kann man den Cluster auf Eingabefehler überprüfen (Vorteil?: Der Code steht nicht im Haupt-VI) und kann ihn wieder zurückschreiben. Weiterer Vorteil: Methode Lesen von File - und dann Schreiben nach FP. Das sind alles Maßnahmen, die das BD des Haupt-VIs möglichst klein und damit übersichtlich halten. Und außerdem ist alles das, was bezüglich eines Datensatzes zusammengehört, in "einer Klasse gekapselt".