Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Barcode FNC1 lesen (https://www.delphipraxis.net/210870-barcode-fnc1-lesen.html)

Arkar 23. Jun 2022 19:20

Barcode FNC1 lesen
 
Hallo hab eine frage bezüglich eines Data Matrix Codes gibt es eine möglichkeit das einscannen eines Barcodes/Datamatrix die GS1 Application Identifier (AI) Daten zu trennen.
der Barcode enthält ja keine separatoren es gibt ein Steuerzeichen GS/FNC1
Bei einigen Barcode generatoren kann mann ja diese Strings im klartext die AI in () anzeigen lassen kann mann das auch irgendwie in Delphi umsetzen zur weiteren verarbeitung hat da jemand schon erfahrung damit?

HolgerX 24. Jun 2022 15:12

AW: Barcode FNC1 lesen
 
Hmm..

kannst bei GS1 leider vergessen...

Bei GS1 gibt es AIs mit fester Länge, dann kommt meistens kein FNC, sondern direkt der nächste AI.
Bei AIs mit fester Länge sind die FNCs nur optional, werden aber meistens weggelassen.

Nur bei AIs mit dynamischer Länge ist ein FNC Pflicht.
Wie dieser vom Barcode-Scanner übergeben wird ist leider auch nicht Fest, sondern i.R. durch die Konfiguration des BC-Scanners selber definiert.

Dir bleibt also nichts anderes übrig, eine AI-Tabelle mit Kennung ob Fixed Length + deren Länge oder Dynamische Länge zu führen und den GS1 String dann entsprechend zu parsen...

Einige BC-Scanner liefern die AIs direkt in () gesetzt, was aber auch am Scanner konfiguriert werden muss.

Arkar 24. Jun 2022 23:18

AW: Barcode FNC1 lesen
 
Mhm ja das ist mir aufgefallen meiner sendet zumindest bis zu einen bestimmten Fix punkt ein Steuerzeichen.
Da der barcode ansich vom hersteller vorgegeben ist und bis auf die Chargen-nummer und der GIN gleich bleibt hab ich mir gedacht ich versuch zumindest das Steuerzeichen zu erkennen damit ich eine ausgangslänge hab wo ich die GIN abziehn kann und dann sich der rest ergibt.

Dabei hab ich Festgestellt das der scanner in der Firma ^^" irgendwie das GS/FNC1 schluckt das sollte aber gefixt werden können müsste jetzt nur noch rausfinden wie ich das Steuerzeichen erfasse und gegen ein passenden ascii tausche.

Ich hab zwar noch nicht rausgefunden warum aber mein Terra ersetzt das steuerzeichen gegen ↔, wenn ich das manual der Firmen Scanner HoneyWell richtig verstanden hab sollte es da auch machbar sein das wie muss ich noch in erfahrung bringen.

Denoch danke für deine antwort.

himitsu 27. Jun 2022 15:01

AW: Barcode FNC1 lesen
 
Es kommt auch drauf an, wie die Scanner arbeiten

z.B. als Tastaturemulator,
oder mit Text über COM-Port,
bzw. Binär über Comport oder mit einer DLL/API


Über die Tastatur ist es nicht so einfach Zeichen zu senden, welche nicht als Taste drauf sind. (bzw. es gibt einen aktiven Filter im Scanner, der nur Sichtbares durchlässt)

Ich gleife meistens via Comport auf unseren Honywell zu.
So landet es immer an der richtigen Stelle (selbst wenn das Programm im Hintergrund/Minimiert ist) und niemand muß aufpassen, wo grade der Fokus steht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz