集装箱存在唯一的编码,此编码用于海关登记等,是集装箱相关业务中最重要的一个标识符
编码规则如图所示:
集装箱编码集装箱具体编码规则:
第一部分由4位英文字母组成。
(1)前三位代码为箱主代码,主要说明箱主、经营人,是集装箱所有人自己规定并向国际集装箱局(BureauInternational des Conteneurs)登记注册的
(2)第四位代码说明类型,通常以字母´U´表示常规集装箱,若为´J´表明该集装箱带有可拆卸设备,若为´Z´则表示带拖车和底盘车的集装箱。
第二部分由6位阿拉伯数字组成。
(1)中间六位称之为箱体注册码(Registration Code),或顺序号(Serial Number),是一个集装箱箱体持有的唯一标识。如果不够六位,那么就用0在前面补齐,比如一家箱主的第一个箱子,可能就是000001。
第三部分为校验码
(1)末尾一位单独的阿拉伯数字,是检验箱主代号和顺序号记录是否准确的依据,由前4位字母和6位数字经过校验规则运算得出。
校验码计算规则
根据校验规则,箱号的每个字母和数字都有一个运算的对应值。箱号的前10位代码中,数字的对应值为自身,即0到9,而字母A到Z对应数值为10到38,因11、22、33不能对11取模数,所以被除去。
计算方式如下:
第N位的箱号对应值再分别乘以2^(N-1) (N=1,2,3………10)。
例如:箱号为EISU9138027的集装箱,第1位代码为E,
它的代码值=代码的对应值×2^(1-1)=15×2^0=15×1=15。
类推第2位代码为I,
它的代码值=代码的对应值×2^(2-1)=19×2^1=19×2=38。
……
以此类推得到箱号前10位号码的代码值。将前10位的代码值累加,箱号EISU9138027的值=2845,取11的模后结果为7,即为这个箱号的第11位校验码。
简道云公式实现
1.如下图使用两张基础表
基础表单2.数字英文对照表
英文数字对照3.箱号验证
(1)集装箱号模拟员工录入箱号,设置成字符串
箱号验证表单(2)校验码通过MAPX,MOD,LEFT,RIGHT等公式共同完成计算
MOD
(
SUM
(
VALUE(MAPX("last",LEFT(集装箱号,1),英文,数字))*1,
VALUE(MAPX("last",RIGHT(LEFT(集装箱号,2),1),英文,数字))*2,
VALUE(MAPX("last",RIGHT(LEFT(集装箱号,3),1),英文,数字))*4,
VALUE(MAPX("last",RIGHT(LEFT(集装箱号,4),1),英文,数字))*8,
VALUE(RIGHT(LEFT(集装箱号,5),1))*16,
VALUE(RIGHT(LEFT(集装箱号,6),1))*32,
VALUE(RIGHT(LEFT(集装箱号,7),1))*64,
VALUE(RIGHT(LEFT(集装箱号,8),1))*128,
VALUE(RIGHT(LEFT(集装箱号,9),1))*256,
VALUE(RIGHT(LEFT(集装箱号,10),1))*512,
),11
)
(3)校验输入的字符串是否符合规定,校验包括
字符长度校验
前4位大写校验
中6位数字校验
11位校验码校验
字符一致性校验
IF(
AND
(
LEN(集装箱号)==11,
UPPER(LEFT(集装箱号,4))==LEFT(集装箱号,4),
ISEMPTY(RIGHT(LEFT(集装箱号,10),6)/10)!=1,
第11位校验码==(RIGHT(集装箱号,1)),
CONCATENATE(LEFT(集装箱号,10),第11位校验码)==集装箱号,),
"校验通过","校验不通过"
)
校验结果
网友评论