2

I'm trying to read a ean-128 with a Motorola MC3190 device.

Reading the sample string (00)123456789012345675(15)010105, both Emdk and Datawedge return this: ]C10012345678901234567515010105.

I read FNC1 character ( "]C1" ), but the other parameters, in this case (15), how do I find it? There is not a special character that identifies it!

Terry Burton
  • 2,801
  • 1
  • 29
  • 41
T. Phanelly
  • 189
  • 5
  • 17

1 Answers1

3

It looks like you are trying to read a GS1-128. The first AI in your barcode (00) is the SSCC (AI reference here), which is a fixed length of 18 digits. So you'll know that AI 15 will start right after that.

Regarding using DataWedge vs EMDK to read the barcode: DataWedge could not deal with the control characters in a GS1-128 when I tried it. Granted, this was a year ago(using .NET CF 2.0, and the most recent version DataWedge available at the time), so things may have improved since then.

The EMDK should read GS1-128s correctly. When you attempt to view a string representation (say, in a debugger), you may see something funky, because FNC1 is a non-printable control character. But internally, all the bytes should be there.

Evan Haas
  • 2,524
  • 2
  • 22
  • 34
  • In new versions of DataWedge 3.0 you can map control characters to keyboard raw codes (function Keymap). The only control character you need to look for is which is only mandatory when you are reading variable length fields which aren't at the end of the string. – pmoleri Oct 29 '12 at 19:54
  • Ah, excellent. DataWedge might be the easiest way to go, then, unless you already need the EMDK for other reasons. – Evan Haas Oct 30 '12 at 16:33