标签工具 文章 帮助 授权码.支付

关于自动补全、纠正Ean13、Ean8、UPC、UPC-E、ITF14校验码

原创未经同意,请勿转载 2023-12-26 389次阅读

对于全球广泛使用的商品条形码码制(Ean13、Ean8、UPC、UPC-E、ITF14等),都需要有校验码,并且都是条形码字符的最后一位,此校验码的作用是确保扫码设备能准确识别出条形码字符内容。

多零的条形码生成功能,能够自动添加、纠正校验码,在选用对应的码制(如Ean13、Ean8、UPC、UPC-E、ITF14)情况下,校验码算法规则如下:

  1. 对于没有校验码的条形码内容字符,将自动补全最后1位校验码

    例如Ean13条形码,包含校验码,一共13位数字,如果只输入12位数字,程序将会自动生成最后1位校验码。如下图示:

    例如输入Ean13条形码12位数字690000000017,则程序自动生成最后1位校验码,补全后完整的数字是6900000000175

  2. 对于含有校验码的条形码内容字符,但是校验码不正确,程序将会自动纠正此校验码

    例如Ean13条形码,输入13位数字,最后1位数字不正确,那么,程序将会自动纠正最后1位校验码。如下图示:

    Ean13条形码的前12位数字是690000000017,其正确的校验码是5,如果输入错误的校验码例如6900000000170,则程序仍然会自动修正为6900000000175

可能会出现一些错觉

正如上面提到的第2点规则(输入错误的校验码,会自动修正为正确的校验码),如果连续输入都是错误的校验码,那么就会一直显示正确的校验码,而且条形码也是相同不变,这样就可能会令人产生一些错觉:

正如上图的示例,690000000017,其正确的校验码是5,无论最后1位校验位输入是1、2、3、4、6...,都会修正为5,那么条形码内容仍然是6900000000175,则条形码仍然是此前的条形码,看起来没有变化。

确实需要自定义最后1位数字?

可能有一些内部业务的确实需要使用到条形码内容的最后1位数字,以标识产品的某种信息,例如Ean13条形码 6900000000171表示第1个车间生产、 6900000000172表示第2个车间生产,等等。

基于条形码码制编码规则,校验码是不能错误的前提下,多零建议以下方法解决:

  1. 使用正确的校验码生成条形码,修改条码脚注为自定义的字符内容;

    以6900000000175生成Ean13条形码,但是其脚注标注为6900000000171、6900000000172、6900000000173等。

  2. 改用Code128码制生成条形码;

    如果是内部使用,无需对接外部环境,无需由外部设备扫码识别,可改为Code128码制,这样就没有最后1位数字校验码的限制了。

如何批量生成校验码?

请点击查看【如何批量生成条形码的校验码】,了解批量生成方法。

---------------

了解更多: 如何计算条形码EAN13的校验码

最新文章 如何强制生成校验码什么是缓存、存档数据?如何使用存档数据功能如何制作标准尺寸的EAN/UPC条形码关于自动补全、纠正Ean13、Ean8、UPC、UPC-E、ITF14校验码如何查询、删除重复数据行2023-11-29 突发网络故障情况说明批量导出不宜超过3000个什么是EAN13的右侧空白区如何设置SC规格尺寸什么是EAN\UPC的SC规格尺寸?如何添加EAN\UPC的附加符号?如何添加GS1-128的分隔符FNC1EAN\UPC的附加符号:EAN5、EAN22023-09-10 多零故障处理公告