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 

Dieses Thema hat akzeptierte Lösungen:

Case-Struktur führt True und False aus (Ereignisschleife)



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!

23.08.2017, 10:39
Beitrag #1

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
Case-Struktur führt True und False aus (Ereignisschleife)
Hallo liebe LV-Gemeinde,

ich habe seit langem mal wieder eine Frage. Nach dem Umstieg auf LV2016 machte sich Ernüchterung breit, viele Abstürze und unerklärbares Verhalten waren normal. Gleiches beim neuen DAQmx. Nach vielen Updates ist es besser geworden.
Jetzt habe ich jedoch eine komische Verhaltensweise, welche ich euch mal zeigen möchte. Eventuell mache ich auch etwas falsch. Man denk immer man hat alles richtig gemacht und dann hat man doch wieder nen Ei.

Die zwei Strings oben sind die beiden möglichen Barcodes.

Bei Nr. 1 ergibt es ein False und ich bekomme die Ausgabe "Bitte scannen Sie den 2D-Code."
Bei Nr. 2 ergibt es wie gewünscht ein True und ich bekomme trotzdem die Ausgabe "Bitte scannen Sie den 2D-Code, welche im False-Case steht"

   

There goes ja the Dog in the pan crazy.

Ideen?


Angehängte Datei(en)
8.0 .vi  Test_Scan.vi (Größe: 30,52 KB / Downloads: 246)

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.08.2017, 11:01
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Du setzt die Ausgabe "String" auch nur im Time-Out-Case zurück. Zwecks "Update While Typing" bei der Eingabe "Barcode" werden bei Scan per Barcode-Scanner mglw. alle Buchstaben einzeln übertragen, die Eventstruktur bekommt das mit, und somit hast du erst einmal eine ganze Menge Events, bevor dein "Ö" erkannt wird.

Debug doch einfach mal, wie oft die Event-Struktur-Schleife wirklich aufgerufen wird.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 11:05
Beitrag #3

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Danke für den Tipp Jens, ich mach mal Mittag und dann schau ich mal.

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 12:11
Beitrag #4

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Hab das eben noch mal geprüft und du hast Recht. Mit jedem Schleifendurchlauf wird ein Char eingelesen und somit gibts bis zum Erscheinen des "Ö" ein False. Wie kann ich in diesem Fall die Fallunterscheidung realisieren?

In meinem Programm ist anstelle von "Barcode2" ein Sub-VI verlinkt in welchem die Namensauflösung erfolgt. Selbst wenn bei "Ö" ein True erreicht wird, wird dieses anscheinend nicht ausgeführt oder liefert kein Ergebnis. In der Highlightfkt. werden die pinken Strippen vom VI zum Indicator grau.

   

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 12:32
Beitrag #5

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Update.

Wenn ich im Case "TRUE" die bool´sche Konstante von TRUE auf FALSE stelle, werden die Serien- und Artikelnummer ausgegeben. Sobald aber die While-Schleife beendet wird, gibts das Sub-VI nur zwei leere Strings aus. Ich raffs nicht.

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 12:39 (Dieser Beitrag wurde zuletzt bearbeitet: 23.08.2017 12:40 von jg.)
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)

Akzeptierte Lösung

(23.08.2017 12:11 )HIMI schrieb:  Hab das eben noch mal geprüft und du hast Recht. Mit jedem Schleifendurchlauf wird ein Char eingelesen und somit gibts bis zum Erscheinen des "Ö" ein False. Wie kann ich in diesem Fall die Fallunterscheidung realisieren?
Du könntest überprüfen, ob der Barcode-Scan wirklich beendet ist... Wenn ich es richtig im Kopf habe, dann geben Barcode-Scanner gerne einen Zeilenumbruch mit aus. Das könnte mit überprüft werden bei der Eingabe...

Gruß, Jens

(23.08.2017 12:32 )HIMI schrieb:  Update.

Wenn ich im Case "TRUE" die bool´sche Konstante von TRUE auf FALSE stelle, werden die Serien- und Artikelnummer ausgegeben. Sobald aber die While-Schleife beendet wird, gibts das Sub-VI nur zwei leere Strings aus. Ich raffs nicht.
Bitte SubVI inkl. definierter Ausgaben posten. Und von welcher LabVIEW-Version bist du umgestiegen?

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.08.2017, 12:57 (Dieser Beitrag wurde zuletzt bearbeitet: 23.08.2017 13:04 von HIMI.)
Beitrag #7

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Sehr gute Idee, der Scanner sollte parametrierbar sein. Zur Zeit liefert er keinen Zeilenumbruch o.ä.
Ich bin umgestiegen von LV2012.
Update.

Hab den Scanner parametriert und ein ENTER angehangen. Vorteil ist, dass man das "Update value while typing" nicht mehr braucht. Der Rubel rollt wieder. Mich würde nur trotzdem gern noch interessieren warum das Sub-VI die Werte nicht ausgibt, wenn die Schleife abgebrochen wird.


Angehängte Datei(en)
8.0 .vi  SN_Art_String.vi (Größe: 31,97 KB / Downloads: 213)

8.0 .vi  Test_Scan.vi (Größe: 30,39 KB / Downloads: 227)

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 13:32
Beitrag #8

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Von welchem SubVI sprichst du genau? Welche Schleife meinst du genau? Bahn

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 13:46
Beitrag #9

HIMI Offline
LVF-Padawan
*


Beiträge: 40
Registriert seit: Apr 2011

2016
2010
EN

09385
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Das Bild in Beitrag #4 zeigt mein "Hauptprogramm" mit dem Sub-VI "SN_Art_String". Dieses Sub-VI liefert keine Werte, wenn im Hauptprogramm die While-Schleife durch die bool´sche Konstante im Case "True" beendet wird.

LabVIEW 2016
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.08.2017, 14:02 (Dieser Beitrag wurde zuletzt bearbeitet: 23.08.2017 14:05 von jg.)
Beitrag #10

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Case-Struktur führt True und False aus (Ereignisschleife)
Achso: Programmierfehler deinerseits (zumindest sieht es laut Screenshot so aus...), du gibts nur den Teil vor dem ersten Ö an dein SubVI weiter, und suchst dann nach einem weitern Ö als Trennzeichen. Hmm

EDIT: Wobei sich deine Suche nach Ö vor Aufruf deines SubVI ja sowieso erledigt hat, da du jetzt auf Zeilenumbruch reagierst.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Question Schalter deaktivieren führt zu race condition, wie umgeht man das? TpunktN 4 3.522 12.05.2021 09:18
Letzter Beitrag: TpunktN
  Case-Struktur: Angegebener Case nicht vorhanden braendy 10 6.925 02.02.2021 15:05
Letzter Beitrag: Lucki
  Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False bachatero18 4 5.779 07.11.2020 14:08
Letzter Beitrag: Martin.Henz
  CAN Nachrichten in Array verarbeiten und aus Case Struktur weiterverarbeiten Tomate27 4 4.607 17.07.2020 13:30
Letzter Beitrag: Tomate27
  Steuerung, Case-Struktur pixie_2 4 4.168 16.04.2020 14:30
Letzter Beitrag: GerdW
  Änderung von großen Cluster (Type Def.) führt zu out of Memory exeption spacz 8 6.638 28.10.2019 09:01
Letzter Beitrag: spacz

Gehe zu: