Barcode-Parser: Daten aus GS1-Barcodes und PDF417 strukturiert ausgeben

Barcodes speichern Informationen in Form von Einsen und Nullen, weswegen nach dem Scannen weiterere Schritte notwendig sind, um sie in lesbarer Form darzustellen. Besonders dann, wenn ein Code mehrere Datenelemente enthält, müssen die Rohdaten zur Weiterverarbeitung erst geparst werden. Erfahren Sie, warum jeder Barcode-Scanner über einen leistungsfähigen Parser verfügen sollte.

app store

Was ist Barcode-Parsing?

Barcodes kodieren Daten in einem kompakten, maschinenlesbaren Format. Barcode-Scanner extrahieren die Rohdaten und wandeln diese in Zeichenketten um. Bei diesen Strings kann es sich etwa um Seriennummern oder Website-URLs handeln.

Manche Barcodes, vor allem 2D-Barcodes, können mehrere Datenelemente gleichzeitig speichern. Ein Beispiel sind amerikanische Führerscheine: Auf deren Rückseite befindet sich ein PDF417-Barcode, der mindestens 22 verschiedene Einträge kodiert. Andere Beispiele sind der weitverbreitete GS1-128 Barcode sowie der Swiss QR Code: Letzterer enthält alle notwendigen Informationen für eine elektronische Banküberweisung.

Zwar ist bei genauerem Hinsehen oft ersichtlich, welche Daten in den Strings stecken, für die Weiterverarbeitung eignen sie sich jedoch weniger gut. So würde das Scannen eines amerikanischen Führerschein-Barcodes ohne anschließendes Parsen in etwa folgendes Ergebnis liefern:

DCSSMITH\nDACJOHN\nDBB06161986\nDBC1\nDAYBRO\n...

Die einzelnen Datenelemente werden mit Kürzeln aus je drei Buchstaben gekennzeichnet (DCS steht beispielsweise für den Nachnamen, während DAY die Augenfarbe meint – die zudem ebenfalls abgekürzt ist). Es fehlen zudem Leerzeichen und Kommas. Daher muten die Strings eher kryptisch an. 

Nach dem Parsen und Formatieren der Daten erhalten wir hingegen folgendes Ergebnis:

LastName: Smith
FirstName: John
DateOfBirth: 06.16.1986
Sex: Male
EyesColor: Brown

Die Umwandlung der Daten in solche Schlüssel-Wert-Paare erleichtert die weitere Verarbeitung im Backend oder durch Mitarbeitende.

1D- und 2D-Barcodes in wenigen Millisekunden auslesen

Senken Sie Kosten und profitieren Sie von Produktivitäts­zuwächsen, indem Sie zeitraubende Arbeitsabläufe automatisieren.
Barcodes eignen sich hervorragend dafür, da Sie von jedem Mobilgerät mit einer Kamera und der richtigen Software gescannt werden können.

Unser Barcode Scanner SDK lässt sich in wenigen Stunden in Ihre Mobil- oder Web-App integrieren und macht aus Ihren Geräten leistungsfähige Barcode-Scanner.

Data Parsing mittels GS1 Application Identifiers

Aufgrund seiner Flexibilität und hohen Leistungsfähigkeit ist der GS1-128 Barcode ein zentraler Logistikstandard.

Der große Vorteil von GS1-Barcodes sind die “Application Identifiers”. Diese bestehen aus zwei bis vier Ziffern und signalisieren Barcode-Scannern, welche Art von Informationen folgt. 

So können die Daten in einem lesbaren Format ausgegeben werden. Sehen wir uns einmal folgenden GS1-128-Barcode an:

Er enthält drei Datenelemente, die durch die Application Identifiers (10), (11) und (15) gekennzeichnet sind. Sie zeigen an, dass die Chargennummer, das Herstelldatum und das Mindesthaltbarkeitsdatum folgen. Anhand der Application Identifiers können Barcode Scanner die Informationen durch Data Parsing sinnvoll strukturieren. Dadurch können sie etwa direkt in eine Datenbank übertragen werden können.

Die geparsten Daten sehen dann so aus:

Batch/lot number: 123456789
Manufacturing date: 22.07.2024
Best-before date: 24.07.2024

Daten mit Zeilenumbrüchen strukturieren

Einige Barcode-Standards verzichten auf Kürzel und Application Identifiers und speichern stattdessen jedes Datenelement in einer separaten Zeile, dafür in fixer Abfolge. Als Beispiel hier ein EPC-QR-Code für elektronische SEPA-Zahlungen:

Die in einen String umgewandelten Rohdaten sehen in etwa wie folgt aus (“\n” steht für einen Zeilenumbruch):

BCD\n002\n1\nSCT\nABCDEFGH\nJohn_Doe\nDE000000000000123456\nEUR128\n\n\nTest_payment

Anhand der Zeilennummer erkennt ein Barcode-Scanner mit Parser, wie die Daten aufbereitet werden müssen. Das Ergebnis sieht dann folgendermaßen aus:

Service Tag: BCD
Version: 002
Character Set: 1
Identification: SCT
BIC: ABCDEFGH
Name of Beneficiary: John Doe
IBAN: DE000000000000123456
Amount: EUR128
Remittance Information: Test payment

Der Nachteil dieser Herangehensweise ist, dass jede Zeile zu viel oder zu wenig die Datenstruktur durcheinanderbringt. Daher muss ein hochwertiger Barcode-Parser in der Lage sein, die für eine bestimmte Zeile erwarteten Informationen mit dem tatsächlichen Inhalt abzugleichen.

Data Parsing für verschiedenste Barcode-Typen

Unser Scanbot Barcode Scanner SDK deckt eine Vielzahl unterschiedlicher Anwendungsfälle ab. Aus diesem Grund haben wir Data Parser für diverse Barcodes mit hoher Datendichte implementiert, darunter PDF417, Data Matrix und QR Code.

Unsere Parser prüfen die dekodierten Informationen stets auf Unstimmigkeiten, um die Qualität Ihrer Daten zu gewährleisten. Zudem können Sie unsere Lösung nach Belieben konfigurieren, um mit jeder Art von Backend zu kommunizieren. So holen Sie aus der Digitalisierung Ihrer Arbeitsabläufe höchste Effizienz heraus.

Bereit zum Ausprobieren?

Das Hinzufügen unserer kostenlosen Testversion zu Ihrer App ist ganz einfach. Laden Sie das Scanbot SDK jetzt herunter und entdecken Sie die Möglichkeiten der mobilen Datenerfassung.