-> Hier kostenlos registrieren
Hallo zusammen,
ich hab ein kleines Problem mit einer While schleife.
Ich habe einen Datenbaustein in dem 50 Benutzer abgelegt sind. Jeder Benutzer hat ein eigenen RFID Code.
Jetzt möchte ich natürlich wissen, wenn der Benutzer xy seine Karte Scannt welcher Benutzer das ist. Das Funktioniert auch mit der Schleife soweit ganz gut.
Jedoch sobald ein Code gescannt wird der nicht im Datenbaustein ist springt die CPU auf Stop mit dem Fehler "Temporärer CPU-Fehler: Bereichslängenfehler in FB 2".
Irgendwie fehlt eine Abbruch Bedingung. Könnt Ihr mir da bitte weiterhelfen.
ich hab ein kleines Problem mit einer While schleife.
Ich habe einen Datenbaustein in dem 50 Benutzer abgelegt sind. Jeder Benutzer hat ein eigenen RFID Code.
Jetzt möchte ich natürlich wissen, wenn der Benutzer xy seine Karte Scannt welcher Benutzer das ist. Das Funktioniert auch mit der Schleife soweit ganz gut.
Jedoch sobald ein Code gescannt wird der nicht im Datenbaustein ist springt die CPU auf Stop mit dem Fehler "Temporärer CPU-Fehler: Bereichslängenfehler in FB 2".
Irgendwie fehlt eine Abbruch Bedingung. Könnt Ihr mir da bitte weiterhelfen.
Code:
#Addierung := 1; //Die Variable Temp "Addierung" auf 1 setzen.
IF #Freigabe THEN
WHILE #Addierung <> #Ausgewählter_Benutzer DO //Solange die While schleife ungleich ist soll sie Funktionieren
IF #RFID_CODE <> #Benutzer.Benutzer[#Addierung].RFID_CODE THEN //Wenn der Wert ungleich ist dann +1 addieren
#Addierung := #Addierung + 1;
ELSE
#Ausgewählter_Benutzer := #Addierung; //ansonnsten den Wert von der Variable Addieren in die Variable Ausgewählte_Benutzer schreiben
END_IF;
END_WHILE;
END_IF;