Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
folgendes Problem: Ist es irgendwie möglich 2 VIs gegenseitig aufrufen zu lassen?
d.h. VI A ruft im Falle eines bestimmten Cases VI B auf, und
VI B ruft im Falle eines bestimmten Cases VI A auf.
Das bei der Wahl von "falschen" Case-Werten eine Enldosschleife entsteht ist mir durchaus bewusst. Ich kann momentan mein Pb aber nicht anders lösen außer die VIs A & B unter A' & B' erneut zu speichern und A' in B einfügen und B' in A einfügen. Ist aber irgendwo sch.. wenn VIs der gleichen Funktion unter verschiedenen Namen gespeichert sind.
geist07
"Zwei Dinge sind zu unserer Arbeit nötig: Unermüdliche Ausdauer und die Bereitschaft, etwas, in das man viel Zeit und Arbeit gesteckt hat, wieder wegzuwerfen." (Albert Einstein)
-------------------------------------------------------------------------- Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Zu diesem VI hätte ich auch mal eine Frage, da das im Grunde das gleiche ist, welches ich gerade in dem "Einführung in LabVIEW"-Buch bearbeite.
Warum kann man nicht einfach die Genauigkeit des Indikators ändern? Dann bekomme ich immer den Fehler 1031 mit der Meldung:
LabVIEW: VI Reference type does not match VI connector pane.
Ich hab auch schon die Anschlüsse neu verdrahtet, das VI gespeichert und geschlossen, aber das hilft alles nichts. Ich könnte mir schon vorstellen, dass das mit der Rekursion zu tun hat und da irgendwas sich gegenseitig in die Quere kommt, aber genaueres leider nicht.
Grüßle
S.
P.S.: Mit der Materie des dynamischen Aufrufs von VIs beschäftige ich mich erst 2 Tage, vorher hab ich das immer statisch gemacht. Von daher bin ich da noch etwas grün.
Hört sich so an, als ob der connector pane deines VIs nicht mit der Referenzkonstante am Eingang von "VI-Referenz öffnen" übereinstimmt, da unterschiedliche Datentypen vorliegen. Am einfachsten geht es, indem du im BD das Icon des VIs mit der Maus per Drag&drop in die Konstante ziehst. Ansonsten geht es natürlich auch per Rechtsklick auf die Konstante -> VI-Server Klasse auswählen -> Durchsuchen...
Das VI kann ich leider nicht ins BD ziehen, da sagt das Programm mir immer, dass das VI nicht rekursiv ausgeführt werden kann. Das wäre dann ja auch ein statischer Aufruf des VIs, oder? Und wenn ich das über das Kontextmenü mache, bekomme ich ein leeres Quadrat. In LV 8.5.1 funktioniert das hingegen besser, obwohl mir der rechte Durchblick immer noch fehlt