X12报文标准
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ANSI X12是由美国国家标准委员会在1979年创立的认可标准委员会(ASC-Accredited Standards Committee)X12-制定的EDI报文标准,是为了满足企业之间的商业数据的电子数据交换。
每次发布包括一系列的信息类型,比如invoice、purchase order等。每一个信息类型都有特定的数字代替它的名称。比如,电子发票invoice对应的信息类型为X12 810,订单purchase order为X12 850,发货通知Advanced Delivery Note是X12 856。
以下以苹果APPLE X12 850为样例,提供具体解析:
ISA*00* *00* *14*TESTXXXXXX
*ZZ*TEST01XXXXXXXXX*140928*2141*U*00401*000000001*1*T*>~
GS*PO*TEST03XXXX*TEST04XXXXXX*20140928*2141*1*X*004010~
ST*850*0001~
BEG*00*DS*0592608583**20140928~
REF*SB*ZZ11~
REF*6P*ZZ~
REF*8M*0056~
REF*CR*XXXXXXX123~
PER*CN*ZHIXING~
CSH*BK~
SAC*C*ZZZZ**********06~
TD5*Z*2*XUPSC02~
N9*ZZ*XXXX~
MSG*http:XXXXXXXXXXXXXX.pdf~
N1*BY*ZHIXING*92*5601~
N1*ST*XIAN*92*0000858638~
N2*XIAN*ZHIXING~
N3*RSSBUS*XIAN KAIFAQU~
N4*SHANXI, XIAN PROVINCE**710000*CN*SP*100~
PO1*00010*5000*EA*2.33*PE*BP*XXXXXX~
PID*F****A001,C001,L01,X147****EN~
REF*CO*7282973909~
REF*LI*000010~
SCH*5000*EA***002*20140928~
CTT*1*5000~
SE*24*0001~
GE*1*1~
IEA*1*000000001~
其中,X12 850报文由段落(Segment)和字段(Element)组成,“~”为段落间分隔符,“*”为字段间分隔符。
一个段落(Segment)包含多个字段(Element),段落头部(Segment Header)是每个段落第一个字符,如ISA、GS、ST、BEG、REF、CSH、TD5、PO1、PID等。
段落头部(Segment Header)决定了整段语句的业务含义,如BEG段落中的业务含义为文件编号和相关日期等。
以下对X12 850 报文中每个segment的具体解析。
1.X12 850头部Segment解析:
ISA、GS 、GE、IEA segment是EDI 报文的头尾部信息,ISA、GS与GE、IEA是两两成对的segment
ISA*00* *00* *14*TESTXXXXXX
*ZZ*TEST01XXXXXXXXX*140928*2141*U*00401*000000001*1*T*>~
ISA segment:表示Interchange Control Header。
在ISA segment中ISA06/08表示Interchange Sender/Receiver Identifier;
ISA09/10表示Interchange Date/Time;ISA12表示报文执行的Interchange Control Version number 如00401);
ISA13表示ISA number-Interchange Control Number,我们可以根据ISA number查找该文件;ISA15 是Usage Indicator表示该报文是正式报文(P)还是测试报文(T)。
GS*PO*TEST03XXXX*TEST04XXXXXX*20140928*2141*1*X*004010~
GS segment:Functional Group Header。GS01表示该EDI报文的业务类型,如上代码中的PO表示采购订单;GS02/03表示Application Sender/Receiver Identifier;GS04/05:表示该EDI报文创建的日期与时间;GS08表示报文执行的EDI标准。
GE*1*1~
与GS segment成对出现,GS02与GS06相同。
IEA*1*000000001~
与ISA segment成对出现,IEA02与ISA13相同。
2.业务部分segment解析
从ST segment到SE segment是对850采购订单业务值的描述:
ST*850*0001~
ST segment:ST01表示EDI 报文类型,比如850表示采购订单。
BEG*00*DS*0592608583**20140928~
BEG segment:BEG03表示订单号,BEG05表示订单日期。
REF*SB*ZZ11~
REF*6P*ZZ~
REF*8M*0056~
REF*CR*XXXXXXX123~
REF segment:是对一些识别信息的描述,REF01表示信息类型(比如SB表示销
售区域、6P表示分组号、8M表示原公司代码、CR表示客户代码、CO表示客户订单号等),而REF02就是该类型信息的具体的描述了。
PER*CN*ZHIXING~
PER segment:是对通讯信息的描述,PER01表示实体类型,PER02表示联系人名称,PER04表示联系人电话。
CSH*BK~
CSH segment:CSH01是对需求类型的描述(BK表示Ship Partial - Balance Back Order、SC表示Ship Complete)。
TD5*Z*2*XUPSC02~
TD5 segment:TD503是对运输方式的描述。
N1*BY*ZHIXING*92*5601~
N1*ST*XIAN*92*0000858638~
N1 segment:是对订单中涉及的相关实体的描述,N101表示实体类型(比如BY
表示买方),N102表示对应的实体编号。