EDIFACT作为一种国际的EDI格式标准,本身内部定义了一些既定的标准(即本文中提到的校验规则)以方便用户正确识别从合作伙伴收到的某个报文是否为合格的EDIFACT报文。
1. EDIFACT格式样例报文如下:
/***********************************************************************************
UNA:+.? ‘
UNB+UNOC:3+SenderID:16+ReceiverID:ZZ+240510:2247+IG-82853775′
UNG+ORDERS+ SenderID+ ReceiverID+240510:2247+FG-82853776+UN+D:97A’
UNH+7519984388+ORDERS:D:97A:UN’
<业务数据内容部分省略>
UNT+22+7519984388′
UNE+1+FG-82853776′
UNZ+1+IG-82853775′
***********************************************************************************************/
2. 规则说明:
1)UNB和UNZ控制值相同 IG-82853775
2)UNB和UNZ成对出现
3)UNZ+1的值1,表示包含多少个UNG循环,如果没有UNG,表示有多少个UNH循环
4)UNG和UNE 控制值相同 FG-82853776
5)UNG和UNE 成对出现,没有UNG,就不出现UNE
6)UNE+1的值1,表示包含多少个UNH循环
7)UNH和UNT 控制值相同 7519984388
8)UNH和UNT成对出现
9)UNT+22的值22,表示从 UNH到UNT的Segment数量总和
10)Segment、Component、Element的分隔符必须是1位,样例中Segment分隔符是’,Component分隔符是+,Element分隔符是:,分隔符是定义在UNA Segment中。
11)转义符使用必须正确,如果业务字段中有 Segment、Component、Element、转义符这些字符,需要用转义符转义
12)当转义符定义为?,业务字段Name:Sam,转义后变成Name?:Sam;业务字段 +1234567890,转义后变成?+1234567890
13)?转义后变成??
14)’转义后变成?’
评论 (0)