INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Schleifenabbruch klappt nicht



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!

01.06.2010, 08:18
Beitrag #1

Labneuling Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Apr 2010

9.0
2010
de


Deutschland
Schleifenabbruch klappt nicht
Hallo!

Ich schaffe es irgendwie nicht eine while-Schleife vorzeitig abzubrechen, hoffe jemand sieht den Fehler.

Was mein Subvi machen soll: Es sollen alle am Computer angeschlossenen Geräte durchsucht werden und von dem "richtigen" soll dann der Visa Resourcenname zurückgegeben werden. Um das richtige Gerät zu finden schicke ich ein Befehl :idn? an alle angeschlossenen Geräte und wenn das richtige gefunden wurde (richtige Antwort kommt zurück) dann soll die Schleife abbrechen und der Visa-name ausgegeben werden. Als Eingang kommt ein Stringfeld mit Adressen, wenn das richtige Gerät gefunden wurde will ich aus dem Stringfeld die Adresse auslesen. Der Index vom Feld sollte die Schleifenlaufvariable sein, weil die Schleife beim richtigen Gerät ja abgebrochen wird. Leider läuft die Schleife durch das ganze Feld auch wenn das richtige Gerät gefunden wurde. Ich weiß einfach nicht wieso es nicht abbrechen will.....


   

Ich hatte es am Anfang ohne Sequenzstruktur versucht und dann noch mit, aber geht beides nicht :-(
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
01.06.2010, 08:27 (Dieser Beitrag wurde zuletzt bearbeitet: 01.06.2010 10:22 von dimitri84.)
Beitrag #2

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Schleifenabbruch klappt nicht
Wieso benutzt du die doofe lokale Variable? Das Ergebnis davon sind Race-Conditions vom feinsten.

Also einfach einen Draht ziehen von der Lesepufferanzeige zum Vergleichsoperator. Lokale Variable löschen.

' schrieb:Ich hatte es am Anfang ohne Sequenzstruktur versucht und dann noch mit, aber geht beides nicht :-(
Mach's ohne. So wie jetzt hat sie praktisch keinen Zweck. Die lokale Variable "Index" kannst du dir auch sparen. Wenn du einen Draht ziehen kannst, dann mach' es auch.


Gruß dimitri

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.06.2010, 08:43
Beitrag #3

Labneuling Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Apr 2010

9.0
2010
de


Deutschland
Schleifenabbruch klappt nicht
Oh danke daran lag es wirklich. Am Anfang hatte ich es aber genau so und es hat nicht geklappt. Obwohl die Strings optisch 100% gleich waren, hat er sie nicht als gleich erkannt.

Ich frag mich wieso es gleich am Anfang so nicht ging.....hm

Danke dir, jetzt klappts :-)!!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.06.2010, 08:50 (Dieser Beitrag wurde zuletzt bearbeitet: 01.06.2010 08:52 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Schleifenabbruch klappt nicht
Hallo Neuling,

"Obwohl die Strings optisch 100% gleich waren..."

Ja, das ist so eine Sache mit den Strings! Da gibt es diese ganzen Leerzeichen, Tabs und diverse non-printable chars... Hast du dir deine Strings schon mal als Hexcode angeschaut, um festzustellen, warum ein Test auf Gleichheit nicht funktioniert?

Alternativ: Wenn das gesuchte Gerät nur einmal in deinem Setup vorkommt, kannst du die Antwort auf :IDN? ja auch auswerten, indem du einen bekannten Teilstring suchen lässt (z.B. den gemeldeten Gerätetyp)...

Und ja: VIs werden nur sehr selten besser, wenn man unkontrolliert lokale Variablen einfügt... (Die lokale Variable "Index" ist ebenfalls unnötig, auch hier kann man einen Draht verwenden!)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.06.2010, 10:09
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Schleifenabbruch klappt nicht
Bevor Du auf Gleichheit untersuchst, solltes Du beim empfangenen String unbedingt die Funktion     anwenden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.06.2010, 11:00
Beitrag #6

Labneuling Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Apr 2010

9.0
2010
de


Deutschland
Schleifenabbruch klappt nicht
Danke euch für die Hinweise, versuche in Zukunft darauf zu Achten. Wieso der Vergleich am Anfang nicht geklappt, weiß ich auch nicht. Hatte sogar die Antwort vom Gerät per Copy&Paste in die Vergleichskonstante eingefügt (also die Antowrt mit der Antwort berglichen) und trotzdem wurde keine Gleichheit festgestellt.

Danke nochmals.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
01.06.2010, 12:48
Beitrag #7

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Schleifenabbruch klappt nicht
100% Dafuer. Mit so einem Problem hatte ich heute auch zu tun. Nach dem Lesen eines Wertes aus einer DB hatte ich die Funktion "Trim Whitespace" verwendet, aber beim Schreiben in die DB nicht..... Jetzt hat ein Bediener (nach 1 Jahr) seinen Wert mit einem Leerzeichen am Schluss gespeichert und schon hat die Untersuchung auf Gleichheit nicht mehr geklappt. Hab's aber Gott sei Dank gleich gefunden. Big Grin

Gruß Markus

' schrieb:Bevor Du auf Gleichheit untersuchst, solltes Du beim empfangenen String unbedingt die Funktion [attachment=55462:clip.png] anwenden.

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Asynchroner Aufruf eines VIs klappt nicht in der EXE Msengxxl 4 3.760 09.03.2021 16:09
Letzter Beitrag: Msengxxl
  Aktivierung klappt nicht mstefan26 9 11.190 13.07.2012 16:01
Letzter Beitrag: NWOmason
  Eingabeauffoerderung Express Vi Modifieziert klappt nicht Moses 5 4.743 20.04.2010 15:12
Letzter Beitrag: GerdW
  Schleifenabbruch Sennar 4 4.848 20.04.2010 11:54
Letzter Beitrag: Y-P
  Array umformen klappt nicht dali4u 3 5.376 24.09.2009 12:35
Letzter Beitrag: jg
  FIR-Filterung klappt nicht Oliver 3 4.543 02.11.2006 14:26
Letzter Beitrag: Oliver

Gehe zu: