-> Hier kostenlos registrieren
Hallo,
ich habe folgende Anlage:
Ich lese aus einem Barcodescanner eine Zahl im ASCII Format aus. (14 Zeichen)
Die ersten 8 Zeichen sind meine Auftragsnummer.
Diese Zeichen kopiere ich nun in einen String und wandle sie mit dem FC String_to_DI in eine Dezimalzahl um (32bit)
Nun benötige ich diese Dezimalzahl als BCD Zahl. Dazu nutze ich den Befehl DTB in S7.
Das funktioniert bei 7 stelligen Zahlen prima.
Leider bekomme ich ein Problem wenn mein 8. Zeichen keine 0 ist, dann kommt nur Müll heraus.
Nun habe ich herausgefunden, das die Operation die 32 Bit Ganzahl in eine 7stellige BCD Zahl mit Vorzeichen wandelt. Ich benötige aber 8 Zahlen
Wie kann ich nun meine Zahl am einfachsten wandeln? Gibt es einen FC der die DINT Zahl in eine 8 stellige Zahl ohne vorzeichen wandelt??
ich habe folgende Anlage:
Ich lese aus einem Barcodescanner eine Zahl im ASCII Format aus. (14 Zeichen)
Die ersten 8 Zeichen sind meine Auftragsnummer.
Diese Zeichen kopiere ich nun in einen String und wandle sie mit dem FC String_to_DI in eine Dezimalzahl um (32bit)
Nun benötige ich diese Dezimalzahl als BCD Zahl. Dazu nutze ich den Befehl DTB in S7.
Das funktioniert bei 7 stelligen Zahlen prima.
Leider bekomme ich ein Problem wenn mein 8. Zeichen keine 0 ist, dann kommt nur Müll heraus.
Nun habe ich herausgefunden, das die Operation die 32 Bit Ganzahl in eine 7stellige BCD Zahl mit Vorzeichen wandelt. Ich benötige aber 8 Zahlen
Wie kann ich nun meine Zahl am einfachsten wandeln? Gibt es einen FC der die DINT Zahl in eine 8 stellige Zahl ohne vorzeichen wandelt??