Step 7 Seriennummer wird als Unicode übertragen ?!?

balkanaz

Level-1
Beiträge
82
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe das Problem, dass die Seriennummer eines Bauteils als Unicode an die MES Cloud übergeben wird.

Die Bauteile fahren auf WT´s durch die Anlage und werden über Siemens Moby U sowohl ausgelesen als auch beschrieben.
Die Seriennummer ist als String[50] deklariert und hat aktuell eine Länge von 22.
Es kommt zwar äußerst selten vor (ca. 0,005%), aber die Seriennummer wird hin und wieder als Unicode übermittelt. Bei diesen Teilen ist die Traceability nicht mehr gegeben.
Beispiel: SI="_x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000_

Ich kann keine Stelle finden wo etwas schief gehen könnte. Grundsetzlich werden die Daten über BLKMove geschoben bis sie letztlich aus einem DB in eine Datenbank (Cloud) geschrieben werden.

Hatte von euch schon mal ein ähnliches Problem?
 
Moin!

Wer interpretiert sie als Unicode? Die Datenbank?
Vermutlich weil vor jedem Zeichen ein Null-Zeichen kommt, interpretiert die Datenbank das als 2-Byte-Unicode-Zeichen.
Es wird am "Muster" des Strings liegen.
Kannst Du der Datenbank kein festes Format vorgeben, anstatt ihr die Interpretation des Strings zu überlassen?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
SI="_x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000_
Das ist doch überhaupt gar keine (Serien-)Nummer. Kann es sein, daß ein Scanner dieses Bitmuster bei Lesefehlern oder Übertragungsfehlern ausgibt? Vielleicht muß genau dieses Muster noch gesondert abgefangen/behandelt werden?

Harald
 
Die Seriennummer ist als String[50] deklariert und hat aktuell eine Länge von 22.
Es kommt zwar äußerst selten vor (ca. 0,005%), aber die Seriennummer wird hin und wieder als Unicode übermittelt. Bei diesen Teilen ist die Traceability nicht mehr gegeben.
Wie sieht denn einer der 99,995% Fälle einer korrekten SerienNr aus?

Die 88 Byte, die in der merkwürdigen Form ...

SI="_x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000__x005F_x0000_

... vermutlich dargestellt sind, sind doch mehr als reichlich bei einer aktuellen Länge von 22 Zeichen?
Bei UTF-8 belegt 1 Zeichen meines Wissens maximal 4 Byte, aber der '_' (Unterstrich alias low line entsprechend 5Fh bzw. 95 dezimal) belegt auch in UTF-8 nur 1 Byte.
Das sieht wirklich mehr nach "Unfall" als nach Unicode aus.
Sorry, nix verstehen. :unsure:
 
Zurück
Oben