EleLa - Elektronik Lagerverwaltung Hilfe

2D Code

Weitere Themen:

In allen Teilen von EleLa kann EleLa automatisch den Scan erfassen wenn im Scanner ein Prefix/Suffix einprogrammiert wurde:

  • Bauteil-F2: Suche des Bauteils vom 2D Scan
  • Projekt-F3: Projekt/Geräte Position: Bei 2D Code mit ProjektPos Info springt EleLa automatisch zum jeweiligen Projekt/Gerät zur Position. Wenn der 2D Code nur die Bauteilinfos enthält so wird vom aktuellen Projekt die Position gesucht.
  • Projekt-F3: Einzelgeräte: Suche des Einzelgerätes anhand der 2D Einzelgerätekennung.
  • Bestellung-F4: Sucht das Bauteil
  • Gehäuse-F6: Sucht das Gehäuse des Bauteils
  • Kiste-F7: Sucht die Kiste in der das Bauteil vorhanden ist. Bei mehreren Kisten wird die Kiste mit der größten Menge gefunden
  • Typ-F8: Springt zu der Typ-Kathegorie vom gescannten Bauteil
  • Adresse-F9: Springt zur Hersteller-Adresse sofern bei Gehäuse/Variante ein Hersteller hinterlegt wurde

In "Bestellung-F4" können die 2D Codes von den angelieferten Teilen eingescannt werden wenn der Scanner auch keine Prefix/Suffix Funktion unterstützt. Um die Funktion zu aktivieren muss unter Bestellung die Taste aktiviert werden. Sollte die Prefix/Suffix funktion der Scanner unterstützen braucht diese Taste beim Scan nicht aktiviert werden.

Der 2D Code enthält Text sowie Steuerzeichen. Leider funktionieren nicht alle 2D Scanner und emulieren die Steuerzeichen als emulierte Tastatur einfach gar nicht, mit diesen Scannern ist eine Decodierung des 2D Codes nicht möglich.

Der Aufbau des 2D Codes wurde von der "ECIA Electronic Components Industry Association" festgelegt und im Dokument "EGIP 114" dokumentiert. EleLa decodiert nur die 2D Codes und nicht die 1D Codes.

Nach einem Scan öffnet EleLa automatisch ein Fenster und zeigt dynamisch die Datenfelder an:

Wenn man ein Bauteil scannt das nicht in der Projektposition oder einer Bestellung gefunden wurde, so wird der Hintergrund vom Scan Dialog rot.

Doppelklick auf die Text-Zeile kopiert den Text in die Zwischenablage.

Zusätzlich wird unter "Extras-F10" > "Log" ein Eintrag mit den empfangenen Daten erzeugt. Sollte ein Scan nicht korrekt funktionieren so kann im Log überprüfet werden woran es liegt. EleLa loggt den Text sowie den HEX Code vom Text und die empfangene Tastatur-Events während dem Scan, wenn der Scan fehl schlug.

Bei geöffnetem Bauteil-Suche Dialog wird das gescannten Bauteil gesucht. z.B. bei Projekt Position, Auswahl Bauteil.

1D Scan

Sollte der 2D Code nicht funktionieren so kann unter Suche-F5 ein Scan auf ein 1D Code mit z.B. Hersteller Nummer durchgeführt werden. Wenn man die Lieferanten Bestellnummer scannt so muss zusätzlich das Häkchen "mit Lieferant" gesetzt werden, nur dann sucht EleLa bei den Bestellnummern der Lieferanten.

Bei nicht erkanntem 2D Code Scan öffnet ebenfalls die "2D Scan Liste", mit nur einer Zeile die den "1D Code" darstellt.

Wenn der 2D Code vom Hersteller unlesbar ist, so kann EleLa unter "Gehäuse/Variante" einen neuen 2D Code erstellen/drucken und man kann somit wieder von allen anderen EleLa Funktionen den 2D Scan nutzen.

EleLa Steuerung mit einem 2D Code

Mit einem 2D Code Scanner können spezielle Steuercodes eingescannt werden damit man EleLa schneller bedienen kann, z.B. bei Bestellung muss somit nicht extra der Handscanner aus der Hand gelegt werden um das Bauteil in das Lager zu buchen.

Der Aufbau vom 2D Code:

Start Daten Ende

Da die Scanner eine USB Tastatur emulieren können manche Scanner nicht alle Steuerzeichen übertragen, diese Scanner funktionieren nicht richtig mit EleLa. Für das Zeichen "GS" senden manche Scanner eine spezielle Tastenkombination, die wiederum EleLa lesen kann. Die Scanner die das "GS" zeichen nicht emulieren funktionieren mit EleLa definitv nicht, da EleLa ansonsten nicht den Trenner der einzelnen Daten decodieren kann. Manche 2D Codes senden als ersten Zeichen ein ">", damit kommt EleLa ebenfalls klar und beginnt die Aufzeichnung der Eingaben.
Nach 300ms nach dem Start vom Scan wertet EleLa die Eingabe aus und decodiert die Daten.
Das Telegramm fängt somit immer mit einem "[" oder ">" Zeichen an.
Da die Zeichen für "RS" und "EOT" nicht gesendet werden senden die Scanner meist am Ende ein "CR", das wird von EleLa ignoriert. Damit jedoch klar ist dass ein Scan beginnt und Endet und der Scanner überall in EleLa genutzt werden kann sollte die "Prefix"/"Suffix" Konfiguration vorgenommen werden, die weiter unten beschrieben ist.

Die einzelnen Datenfelder beginnen optional mit einer Zahl, gefolgt von einem Buchstaben. Danach die Daten. Die Daten sind zu Ende bei einem "GS", dann kommt das nächste Datenfeld. Die Reihenfolge der Daten spielt keine Rolle, auch nicht die Anzahl der Datenfelder. Die in der ECIA dokumentierten Felder kann EleLa in Klartext decodieren, die anderen Felder werden nur anhand dem Kurz-Code dargestellt. (Beispiel im Bild, "(14K)" ist ein spezifischer Code von einem Lieferanten)

Welche Code müssen drauf sein damit EleLa das zuordnen kann?

  • I, 1I, 2I, 3I, 4I EleLa ID, aus Tabelle: BauteilVariante.ID. Dies ist eine eindeutige Zuordnung zu dem einen Datensatz da die Zahl niemals doppelt in der Datenbank vorkommen kann.
  • B, 1B, 2B, 3B, 4B EleLa Barcode, EleLa kann das Bauteil in Gehäuse/Variante unter "Barcode" finden.
  • 1P ist die Typ Bezeichnung vom Hersteller. EleLa kann das Bauteil in Gehäuse/Variante unter "ArtikelNr", "ArtikelNr2" oder "Bezeichnung" finden.
  • 3P ist bei Farnell die Lieferanten Artikelnummer. Sollte 3P auf dem 2D Code sein so sucht EleLa anhand dem 2D Code den Artikel in der Bestell Liste, ansonsten wird der 1P Code verwendet.
  • K ist die Kunden Auftragsnummer. Sollten mehrere Bestellungen mit dem gleichen Artikel laufen so kann EleLa die richtige Position anhand der Auftragsnummer in Bestellung finden
  • Q ist die Menge der Teile in dem gelieferten Päckchen.

Alle andere Codes werden in EleLa nur dargestellt, jedoch nicht verwendet.

Code Beschreibung
P Customer Part Number
1P Supplier Part Number
2P Revision Number
33P BIN Code
K Purchase Order Number
4K PO Line Number
11K Packing List Number
4L Country of Origin
Q Quantity
7Q Weight
13Q Package Count
6D Ship Date
9D Date Code
10D Date Code
1T Lot Code
1V Manufacturer
S Serial Number
3S Package ID for Inner Pack when part of a mixed Logistic Carton
4S Package ID for Logistic Carton with like items
5S Package ID for Logistic Carton with mixed items
E RoHS/CC
I EleLa ID aus Tabelle BauteilVariante.
Damit kann man das Teil in seinem eigenen Lager eindeutig kennzeichnen.
B EleLa Barcode.
Damit kann man das Teil in seinem eigenen Lager eindeutig kennzeichnen.
1I EleLa ID aus Tabelle BauteilKiste.
Damit lässt sich die Zuordnung innerhalb einer Kiste kennzeichnen.
1B EleLa Barcode aus Tabelle BauteilKiste.
2I EleLa ID aus Tabelle Kiste.
Damit lässt sich die Zuordnung einer Kiste kennzeichnen.
2B EleLa Barcode aus Tabelle Kiste.
3I EleLa ID aus Tabelle ProjektPos.
Damit kann eine Projektposition eindeutig einem Projekt zugeordnet werden.
3B EleLa Barcode aus Tabelle ProjektPos.
4I EleLa ID aus Tabelle Projekt Einzelgeräte.
4B EleLa Barcode aus Tabelle Projekt Einzelgeräte.

Die Codes von "EleLa" sind nicht in der ECIA Dokumentation spezifiziert und werden von EleLa erkannt/verwendet um Bauteile einfacher finden zu können.

EleLa Log:

Im EleLa Log werden die Sonderzeichen mit geloggt. Da jedoch die Sonderzeichen nicht als Text dargestellt werden können verwendet EleLa stattessen diese Sonderzeichen:

Zeichen
Hex-Code
EleLa Log
Beschreibung
SOH
0x01
Start of Header
EOT
0x04
End of Transmission
CR
0x0D
Carriage Return
GS
0x1D
Group Seperator 
RS
0x1E
Record Seperator

Andere Sonderzeichen, falls im 2D Code enthalten, werden als Kurz-Text in [ ] dargestellt.

Erfahrungen mit 2D Scanner:

Leider funktioniert nicht jeder 2D Scanner. Damit der 2D Scanner mit EleLa gut funktioniert muss er folgende Eigenschaften haben:

  1. Das deutsche Tastaturlayout (oder der Sprache die man als Tastatur nutzt) muss der Scanner können.
  2. Die ASC-II Steuerzeichen müssen übertragen werden. (Siehe obige Tabelle bei "EleLa Log".)
  3. Der Scanner muss ein "SOH" als Prefix senden können, den man einprogrammieren muss.
  4. Der Scanner muss ein "EOT" als Suffix senden können, den man einprogrammieren muss.

Bitte lesen Sie in der Dokumentation vom Scanner ob er diese 4 Programmierungen vornehmen kann.

Hier einige Modelle die EleLa User erfolgreich getestet haben:

Hersteller Typ Beschreibung Funktion
Zebra DS2208-SR Sehr gute Bedienungsanleitung mit über 400 Seiten.
Sehr gutes Preis/Leistungs Verhältnis.
inateck BCST-40
BCST-42
Kleiner handlicher Scanner. Benötigt für den Betrieb mit EleLa das Update "Inateck Firmware Uploader 2" vom Hersteller.
 
     
 

Beim Kauf sollte man darauf achten dass eine ordentliche Bedienungsanleitung mit dabei ist wo man den Scanner per Codes parametrieren kann. Leider ist das bei günstigen Modellen kaum der Fall und der Lieferant hat auf seiner Homepage nicht einmal ein ordentliches Datenblatt. Das mindeste was am Scanner eingestellt werden muss ist ein deutsches Tastaturlayout, ansonsten weiß er nicht welche Tastencodes welche Buchstaben auf dem Bildschirm erzeugen. Scanner die keine Steuerzeichen als Tastatursignale übertragen können funktionieren alle nicht, daher müssen im Datenblatt unbedingt die Funktionen vorhanden sein um Steuerzeichen aktivieren zu können.

Solltet ihr andere Scanner erfolgreich verwenden als in der Liste aufgeführt sind, so schreibt mit damit ich diese in die Liste aufnehmen kann. Ich erhalte von den genannten Firmen keine Provision oder sonstige Werbezahlungen.

Test mit einem Scanner:

Die Funktion vom Scanner kann mit einem Texteditor "Notepad++" überprüft werden. Der Standard Windows Editor "Notepad.exe" kann dazu nicht verwendet werden da er die gescannte Steuerzeichen "RS", "GS" und "EOT" nicht darstellt. Hier ein Demo 2D Code (Datamatrix):

Scan Beschreibung
Die Tastenemulation wurde noch nicht richtig eingestellt, die ersten Zeichen sind falsch sowie "Y" und "Z" sind vertauscht.
Nach der korrekten Einstellung sind die Daten IO.
Nachdem beim Scanner der korrekte Prefix und Suffix eingestellt wurde.

Ein Test 2D Code kann mit der Software "ZINT" erzeugt werden.

Hinweis zu den Steuerzeichen:

Die Zeichen "RS" und "EOT" sind nicht immer vorhanden, jedoch das Zeichen "GS" muss immer im 2D Code enthalten sein. Der Start des 2D Codes ist immer "[)>" und "06". Die Ende Kennung "RS"/"EOT" ist nicht immer vorhanden. Der Aufbau kann je nach Lieferant unterscheidlich sein da sich nicht alle exakt an die ECIA Spezifikation halten.

Wenn der Prefix "SOH" und Suffix "EOT" einprogrammiert wurde kann EleLa ohne Aktivieren vom Scan automatisch alle Scans empfangen und anzeigen.

Der Scanner kann zusätzlich mit einer eigenen Ende Kennung "CR" programmiert werden, EleLa benötigt dies nicht und ignoriert das "CR" Zeichen.

Parametrierung

Code Größe

In EleLa lässt sich die Codegröße anhand dem Parameter "2D Code Pixelgröße [mm]" einstellen. EleLa verwendet als Standard ca. 0,5mm, damit lässt sich der Code recht gut lesen. Gute 2D Scanner können auch deutlich kleinere Codes lesen, was Platz auf dem Etikett spart. Der Parameter kann hier eingestellt werden.

Zusätzliche Daten

EleLa kann in der Pro Version zusätzliche feste Daten in den 2D Code mit aufnehmen, wenn in der Info-Zeile als 2D Code Befehl "$B2D+$" verwendet wird Das "+" bedeutet dass diese zusätzliche Infos mit auf den 2D Code sollen. Diese werden als Parameter Nr 26 "2DCodeInfo" in EleLa hinterlegt. Je Eintrag kann in den Parametern eine Zeile mit der ParNr "26" angelegt werden. Die Reihenfolge wird über "ValInt" festgelegt.
In "ValText" steht der Bezeichner des Datenfeldes. Der Bezeichner muss diese Formatierung haben: <otional 1..2 Stelige Zahl><zwingend 1 Buchstabe>. Die Bezeichner die EleLa bereits nutzt werden nicht von diesen Parametern übernommen. Um neue Bezeichner mit festen Werten zu verwenden sollte man sich an die "EIGP-114.2018 ECIA Labeling Specification" halten, damit andere Firmen den Code ebenfalls lesen können.
In "ValMemo" wird der Wert geschrieben welcher als Daten auf den 2D Label gedruckt werden soll.
Der Code "1V" = "Manufacturer" würde so aussehen:

  • ParamNr: 26
  • ParamName: 2DCodeInfo
  • ValInt: 1
  • ValText: 1V
  • ValMemo: MusterFirma GmbH

Umlaute und Sonderzeichen

Viele Programme können Umlaute und Sonderzeichen in 2D Codes, die mit einem Tastaturscanner eingelesen werden nicht korrekt wandeln, da diese die Zeichen nur Byteweise anschauen und nicht in UTF8 oder andere Formate. In EleLa wurde dazu eine zweite Codeanalyse nach dem Scan implementiert, so dass die Sonderzeichen innerhalb eines Scans ebenfalls korrekt dargestellt werden.

Wenn das 2D Code Etikett mit fremden Programmen genutzt werden soll, so sollte man der einfachheit halber auf alle Umlaute und Sonderzeichen verzichten und nur noch ASCII-Zeichen (Code 32...127) verwenden.

Hier ein Beispiel von einem 2D Code mit diversen Sonderzeichen:

µäöüß|żóś|€Ω¶≤≥±≈Ø|☺☻♣БЖД會聲金

Test mit Notepad++:

  1. Öffnen, neues leeres Dokument
  2. Einstellen der Kodierung auf "ANSI"
  3. Scan
  4. Einstellen der Kodierung auf "UTF-8" (nicht Konvertieren!)


© 2010-2024 by Markus Müller