-> Hier kostenlos registrieren
Hallo, ich stehe vor folgendem Problem.
Ich erhalte von einem Sick Lector 620 einen Code die Länge des Codes variiert je nach Leseergebniss Good Read 18Byte No Read 6 Byte.
Die Daten werden in einem Datenbaustein als Zeichen eingetragen.
z.B. Code = 1234
im DB
DB72.dbb290 = 1
DB72.dbb291 = 2
DB72.dbb292 = 3
DB72.dbb293 = 4
oder im Fall das der Lector 620 den Code nicht lesen konnte wird als Ergebniss NoRead übertragen.
das sieht dann so aus.
DB72.dbb290 = N
DB72.dbb291 = o
DB72.dbb292 = R
DB72.dbb293 = e
DB72.dbb294 = a
DB72.dbb295 = d
Diese zeichenfolge schiebe ich mit SFC 20 blockmove in eine String Variable, die ich dann Vergleichen kann.
In der Anlage sind zwei Codeleser Verbaut, deren Ergebniss verglichen wird.
Das hab ich auch schon so weit Realisiert.
Ich möchte jetzt die je nach Codelänge entstehenden freien Variablen mit dem Platzhalter ( ' ' ) auffüllen, so das in der Stringvariable nur immer der Letzte gelesene Wert steht.
Bei einem Good Read des Lectors werden ab DB72.dbb
Da ich das ganze abhängig von der Codelänge machen möchte hätte ich das ganze gerne Berechnet.
Die Anzahl der Bytes des Leseergebnisses wird vom Lector in einer Variablen übergeben.
d. h. Startadresse (z.b. Db72.dbb290) + anzahl der aktuell eingelesenen Bytes (z.B. 6) = Startadresse ab der der Platzhalter in die Stringvariable geschrieben werden soll. (z.B. DB72.DBB296)
Ab dieser Startadresse soll die Stringvariable mit dem Platzhaltersymbol ( ' ' ) gefüllt werden.
Ich hab in diese Richtung wenig bis gar keine erfahrung, und hoffe das ihr mir ein bisschen auf die sprünge helfen könnt.
Mfg
CZach
Ich erhalte von einem Sick Lector 620 einen Code die Länge des Codes variiert je nach Leseergebniss Good Read 18Byte No Read 6 Byte.
Die Daten werden in einem Datenbaustein als Zeichen eingetragen.
z.B. Code = 1234
im DB
DB72.dbb290 = 1
DB72.dbb291 = 2
DB72.dbb292 = 3
DB72.dbb293 = 4
oder im Fall das der Lector 620 den Code nicht lesen konnte wird als Ergebniss NoRead übertragen.
das sieht dann so aus.
DB72.dbb290 = N
DB72.dbb291 = o
DB72.dbb292 = R
DB72.dbb293 = e
DB72.dbb294 = a
DB72.dbb295 = d
Diese zeichenfolge schiebe ich mit SFC 20 blockmove in eine String Variable, die ich dann Vergleichen kann.
In der Anlage sind zwei Codeleser Verbaut, deren Ergebniss verglichen wird.
Das hab ich auch schon so weit Realisiert.
Ich möchte jetzt die je nach Codelänge entstehenden freien Variablen mit dem Platzhalter ( ' ' ) auffüllen, so das in der Stringvariable nur immer der Letzte gelesene Wert steht.
Bei einem Good Read des Lectors werden ab DB72.dbb
Da ich das ganze abhängig von der Codelänge machen möchte hätte ich das ganze gerne Berechnet.
Die Anzahl der Bytes des Leseergebnisses wird vom Lector in einer Variablen übergeben.
d. h. Startadresse (z.b. Db72.dbb290) + anzahl der aktuell eingelesenen Bytes (z.B. 6) = Startadresse ab der der Platzhalter in die Stringvariable geschrieben werden soll. (z.B. DB72.DBB296)
Ab dieser Startadresse soll die Stringvariable mit dem Platzhaltersymbol ( ' ' ) gefüllt werden.
Ich hab in diese Richtung wenig bis gar keine erfahrung, und hoffe das ihr mir ein bisschen auf die sprünge helfen könnt.
Mfg
CZach