EDI术语中的X12是指ANSI X12 报文标准(EDI Document Standard),于 1979 年发布,由认证标准委员会维护,在过去的几十年中得到扩展,以满足全球业务流程的要求,包括汽车、物流、零售、医药、金融、保险、运输、供应链和政府的要求。
X12使用ASC X12.58安全结构,该结构结合了身份验证、压缩、加密和保证,以保证电子数据交换文件以其原始格式到达其目的地,并且没有被篡改,同时向接收方保证它来自原始发送方。
如何读懂X12?
X12标准下的EDI报文结构
在认识X12标准下的EDI报文结构之前,首先需要了解3个EDI术语:
1.Interchange,代表了一次传输 2.Functional Group,代表一种类型的报文,例如需要在一次传输中传输856和810两种报文,那么就会有2个Functional Group 3.Transaction:代表一个报文,例如你在本次传输中传输3个856报文,那么就会有3个Transaction
EDI报文结构图中:
头部的ISA和结尾的IEA成对,组成了Interchange部分 头部的GS和结尾的GE成对,组成Functional Group部分 ST 和 ST 成对,中间包着业务数据,组成Transaction部分
EDI 850报文解析
以X12报文标准下的EDI 850 示例报文为例,详细解读EDI报文。
如上所示,这是一个850采购订单的EDI示例报文,每一行的开头,由2-3个字符组成,叫做Segment节点,代表特定的业务含义。
例如BEG开始的这一行代表了业务数据的开始以及单据主信息 DTM这一行代表时间信息 N1这一行代表实体信息,例如ship-to、ship-from 等信息都会被存放在这里
报文行解析
我们再进入到某一行来具体看一下,其中*是每个数据元素的分隔符,也可按照实际情况设置为其他符号。120 是这一行的物料数量,它的位置是 PO102,有一些代码代表了特殊的业务含义,例如 EA 本身在报文里面就代表了物料的单位,类似的还有 PCS、KGM 等,除此之外,还有一些不是单独出现的代码,我们把它叫做限定符,用于限定右侧数据的含义,例如这个地方的 VN,它的意义是限定右边的数据意义为供应商物料编码,我们一看到 VN 后面的一串数据就知道供应商物料编码为 AB3542。
报文数据解析
了解了如何去阅读数据,我们再来详细地解析一下这一条 850 数据。
报文的前两行包含了头部信息:
- 授权控制符(ISA01):01
- 安全限定符(ISA03):01
- 发送方ID限定符(ISA05):ZZ
- 发送方ID(ISA06):ABCDEFGHIJKLMNO
- 接收方ID限定符(ISA07):ZZ
- 接收方ID(ISA08):123456789012345
- 文件生成时间(ISA09):101127
- 控制标准 ID(ISA11):U
- 控制版本号(ISA12):00400
- 测试指示符(ISA15):P
- 发送方 ID(GS02):4405197800
- 接收方 ID(GS03):999999999
- 日期格式(GS04):20101127
- 时间格式(GS05):1421
- 负责机构代码(GS07):X
- ID 编码(GS08):004010VICS
在生成符合X12报文标准的EDI报文时,这些头部信息虽然并没有传输和业务相关的信息,但却包含了报文的发送方和接收方等基本信息。在下文中,我将会为大家介绍如何在知行之桥EDI系统中配置这些信息。
例如要获取订单号,我们需要定位到 BEG 这一行,从左向右数第三个数据元素即 08292233294 就是我们要找的订单号,再比如我们需要找请求交付日期,按照EDI规范我们需要定位到 DTM 这一行,且条件是 DTM01=002,取 DTM02 这个元素,那么就是 20101214 ,就是要找的请求交付日期。以此类推,我们可以获取到报文中的关键信息。
以上就是基本的阅读 X12 报文以及获取业务数据的方法,虽然我们可以直接从 X12 报文中读取到数据,想必大家也可以感受到人工去阅读 X12 报文,并从中提取数据是非常麻烦的。
EDI报文设计的初衷就是为了方便计算机处理,直接去阅读报文对于开发人员来说可能是有意义的,例如可以用来对比收到的数据与原始数据是否一致。但对于 ERP 用户或者业务团队来说,很显然他们不需要去读原始的 X12 报文。 EDI 在整个数据交换的流程中扮演的更多的是一个传输、翻译的角色。
知行之桥EDI 系统X12端口
知行之桥EDI系统中的 X12 端口,能够实现X12的解析与生成。用户需要在X12端口的设置以及高级设置选项卡中配置上文提到的头部信息。
按照上文EDI示例报文中包含的头部信息在X12端口中进行配置之后,即可在输入选项卡下上传此示例报文。在输出选项卡下即可查看转换结果。
了解更多 EDI 相关信息,请阅读:EDI是什么?