Parsing data from a GS1-128 barcode label
-
Parsing data from a GS1-128 barcode label
Posted by joe.manco@rolleaseacmeda.com on January 26, 2017 at 10:08 am-
Good Morning,
Is anyone working with GS1-128 barcode labels? we are trying to parse a complex barcode label – the data container Item Number, Lot Number and Quantity – delimited by 91, 92 and 93. the human readable shows (91), (92) and (93) – but the barcode scan does not pick up the parenthesis. We’re using Lanham ADCS and Intermec scanners.
Thanks.——————————
Joe Manco
IT Manager
Rollease Acmeda
Stamford CT
—————————— -
Radbout Buijs
MemberJanuary 27, 2017 at 4:05 AM
Both software and hardware must be ready for GS1 128 used in the SSCC
see for the measurements In the netherlands GS1 had a document that gives Some guidance
https://www.gs1.nl/sites/default/files/LD_GS1Label_Handleiding.pdf#page21Maby Google thanslate can help you of you local MO must have a simular doc.
hope this helps
radbout
——————————
Radbout Buijs
Nature’s Pride
Maasdijk
——————————
——————————————- -
You will probably have to go with a fixed lenght field to be able to parse it, because the () are not in the barcode. Do the barcodes you are reading have different sources and different placements of the values you are trying to read? Check the GIS barcode manual to get some additional help. As I recall, it’s ony 450 pages.
——————————
Ron Ketterling
President
Business Automation Specialists of MN, Inc.
Minneapolis MN
——————————
——————————————- -
Ian Ray
MemberJanuary 27, 2017 at 1:00 PM
I would add that–if you can change the labels–you should probably fix the length of quantity for application identifier 93 and put it between application identifier 91 and 92. This would look like91 (1-30 characters) 93(6 digits)92 (1-30 characters)
This way, you can identify 93xxxxxx92 as a string that won’t likely be accidentally put into item number, making it simple to parse before 93xxxxxx92 and after.
I typically accomplish this by using date and weight fields. Quantity should work in this case if you can anticipate the maximum quantity (+ decimals) you would ever conceivably need and label these with leading 0s.
——————————
Ian Ray
Cypress Grove
Arcata CA
——————————
——————————————- -
Brad Brown
MemberJanuary 30, 2017 at 6:29 PM
If all the GS1-128 rules are being followed, then there will be a FNC1 character at the beginning, and then again following any variable length data field, to delimit it from the next AI element. The first FNC1 specifies the barcode as GS1 formatted.If you are the consumer of the barcodes, then you might have to tell your scanners to return the character so you can use it to parse data correctly.
The order of your Application Identifiers isn’t that important, but Ian’s method might make it easier on your programmers if you have control of the barcode creation.
So assuming only the 3 AIs you mentioned are being used, you should see something like this.
<FNC1>91xxxxx91dataxxxxx<FNC1>92yyyy92datayyyy<FNC1>93010101
or
<FNC1>91xxxxx91dataxxxxx<FNC1>9301010192yyyy92datayyyy
or
<FNC1>9301010192yyyy92datayyyy<FNC1>91xxxxx91dataxxxxxIf the last AI of the stream is variable length, then the delimiter is redundant, and not inserted.
If you are in the realm of the FDA, the new UDI labeling requirements follow the same conventions.
——————————
Brad Brown
IS/IT Manager
Wescor, Inc
Logan UT
——————————
——————————————- -
Ian Ray
MemberJanuary 31, 2017 at 2:14 AM
Thanks Brad, that is all quite useful.I would also add that FNC1 is generally ignored outside of terminal emulators (i.e. VT100) when trying to input it as ascii 29. I haven’t seen it input into a NAV field, for instance (is this possible?).
One workaround is to turn on GS1-128 output for the scanner. Most barcode scanners can be configured to return “]C1″ for FNC1 in their GS1-128 mode.
——————————
Ian Ray
Cypress Grove
Arcata CA
——————————
——————————————-
joe.manco@rolleaseacmeda.com replied 8 years, 7 months ago 1 Member · 0 Replies -
-
0 Replies
Sorry, there were no replies found.
The discussion ‘Parsing data from a GS1-128 barcode label’ is closed to new replies.