【问题标题】:Decoding GS1-128 UCC/EAN128 with Motorola EMDK 2.6使用摩托罗拉 EMDK 2.6 解码 GS1-128 UCC/EAN128
【发布时间】:2012-07-02 10:03:17
【问题描述】:

我想使用 Motorola emdk 2.6 版解码 GS1-128(形式 ECC/EAN128)条码。我使用 ES400 作为测试设备。我只获取原生文本格式的数据。

例如(01)25416898545645(17)080600(30)0306180021 返回012541689854564517080600300306180021

我没有得到 FNC1 (ascii102) 或 GS​​ (ascii 29) 字符。我尝试了没有结果的“RawData”。

我该如何处理?

【问题讨论】:

    标签: barcode motorola motorola-emdk


    【解决方案1】:

    “缺失”的 FNC1 并非设计使然。规范(GS1 通用规范)规定,第一个位置的 FNC1 不应在传输的消息中表示。

    此外,在固定长度的应用程序标识符之后和条形码中的最后一个 AI 之后不需要 FNC1。您的 AI 的 01 和 17 使用数据长度 14 和 6 定义。AI 30 是可变长度,但也是条形码中的最后一个元素,因此不需要 FNC1。

    所以要解码GS1-128:(读取AI,如果长度定义为固定,读取x个字符。如果是可变长度,读取到FNC1或条形码末尾)重复直到条形码末尾。

    【讨论】:

      【解决方案2】:

      第一个 FNC1 不应该被解码为 ascii102,而是“]C1”。看看AIM Symbology Identifiers

      下一个 FNC1 应该被解码为<GS>,但您可能看不到它们。尝试在文本编辑器中扫描它们,保存并加载到文本编辑器(如 Scite)中,您可以在其中看到控制字符。

      您可以配置摩托罗拉的 DataWedge 以显示 AIM 符号标识符,并将 <GS> 映射到常见字符,例如 $=

      【讨论】:

      • 你让我走上了正轨。我必须在 Barcode2-Class 中设置“CodeIDType”。 myBarcode2.Config.Scanner.CodeIdType = CodeIdTypes.AIM;现在 FNC-Char 报告为“]C”。谢谢!
      猜你喜欢
      • 2012-10-19
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      相关资源
      最近更新 更多