技术标签: AS2 Apple EDI 苹果edi X12 850 案例
最近在做Apple EDI项目的实施,实施过程中读懂EDI X12业务报文是关键的一步,所以对Apple EDI规范及X12业务报文进行了学习,借此机会,给大家分享下Apple EDI各种业务报文及内容的含义,希望可以帮助您快速看懂EDI X12报文。
ASC X12(Accredited Standards Committee X12)是由American National Standards Institute (ANSI)推行的EDI标准,包括一套标准和相应的消息定义的业务文档,广泛应用在各个行业。RSSBus Connect是ASC X12的一员。Apple EDI项目所涉及的X12业务报文主要有850(Purchase Order )、855(Purchase Order Acknowledgment )、860( Purchase Order ChangeRequest )、856(Ship Notice/Manifest )、846( InventoryInquiry/Advice )、810( Invoice )。本篇我们先对采购订单850 X12业务报文进行解析,希望可以帮助到您。
X12 850是一个采购订单,用于订购商品或服务。一般来说,850提供的信息与纸质版采购订单文件上的信息一致,包括:订单的种类、价格及数量、运输详情、支付条款、折扣等信息。如果要对X12 850报文进行翻译,我们需要知道X12 850报文的格式及字段对应的意义,以下是对Apple 850 EDI报文格式及字段的解析,希望会帮助您了解并读懂X12 850报文。
标准的EDI X12报文格式数据类型类似文本文件,被segment、element和sub-element分隔符分开,可用文本编辑器(如Notepad、Sublime)打开。
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~
segment标识: 如上代码中的ISA、GS、ST、BEG、REF、CSH、TD5、PO1、PID等
segment分隔符: 如上代码中的~(波浪字符)
element元素: 每个segment都包含着多个element
element分隔符: 每个segment中的多个element被element分隔符分隔,如上代码中的*(星号)
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: 在ISA segment中我们需要关注的是ISA06/08/09/10/12/13/15,ISA06/08表示Sender/Receiver Identifier;ISA09/10表示该EDI报文创建的日期与时间;ISA12表示报文执行的EDI标准(比如上述代码中的国际标准00401);ISA13表示ISA number,可以是流水码,我们可以根据ISA number查找该文件;ISA15表示该报文是正式报文(P)还是测试报文(T)。
GS*PO*TEST03XXXX*TEST04XXXXXX*20140928*2141*1*X*004010~
GS segment: GS01表示该EDI报文的业务类型,如上代码中的PO表示采购订单;GS02/03表示Sender/Receiver Identifier;GS04/05:表示该EDI报文创建的日期与时间;GS08表示报文执行的EDI标准。
GE*1*1~
与GS segment成对出现,GS02与GS06相同。
IEA*1*000000001~
与ISA segment成对出现,IEA02与ISA13相同。
从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表示对应的实体编号。
N3*RSSBUS*XIAN KAIFAQU~
N4*SHANXI, XIAN PROVINCE**710000*CN*SP*100~
N3 segment: 是对实体地址信息的描述(街道详细信息)。
N4 segment: 是对实体地理信息的描述(国家/省份/邮编等信息)。
PO1*00010*5000*EA*2.33*PE*BP*XXXXXX~
PO1 segment: 是对采购订单明细信息的具体描述(商品编号/数量/单价)。PO101表示该订单的行号,PO102表示数量,PO103数量单位,PO104表示单价,PO105表示价格单位,PO107表示商品代码。
PID*F****A001,C001,L01,X147****EN~
PID segment: 是对商品属性的描述。
SCH*5000*EA***002*20140928~
SCH segment: 是对要求到货日期的描述。
以上便是对Apple EDI X12 850报文的具体解析,希望可以帮助您看懂EDI 850报文,后续会对Apple其他的业务报文进行解析分享,同时欢迎大家留言沟通交流(#.#)
文章目录1、Linux安装数据库的详细步骤1.1、安装前期准备1.2、具体安装步骤1.2.1、解压mysql压缩文件1.2.2、进入解压后mysql文件中建立data文件夹1.2.3、创建一个新Linux用户,用来执行mysqld命令1.2.4、初始化mysql1.2.5、启用安全功能1.2.6、修改mysql安装目录权限1.2.7、启动mysql1.2.8、登录mysql1.2.9、修改root密码1.2.10、授权远程访问1、Linux安装数据库的详细步骤1.1、安装前期准备这里介绍的是本地数据
目录结构一、前言二、实验原理三、实验要求二、网络拓扑图四、内网环境的搭建五、配置静态路由六、配置NAT一、前言 NAT(Network Address Translation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,...
饿了么UI/element Popconfirm气泡确认框 confirm/cancel事件 很多人会发现,不知道怎么用,或者用不了,废话不多说:上代码:方法必须是 @onConfirm="successconfirm()" @onCancel="successcancel()"不这样就无法使用方法:...
Android多个GLSurfaceView共享上下文话不多说,直接上代码在开发中,经常会使用多个GLSurfaceView,多个GLSurfaceView需要共享一个纹理,那么怎么来实现呢话不多说,直接上代码package com.yl.jumu;import android.opengl.GLSurfaceView;import android.util.Log;import javax.microedition.khronos.egl.EGL10;import javax.micro
我们都知道windows7开始,提供了一个便于从当前文件夹打开cmd命令行窗口的快捷方式:Shift+鼠标右键==>“在此处打开命令行窗口”如此,就能快速的在当前目录打开cmd窗口,以执行命令。今天,在配置ant的环境变量时,添加了ant的bin目录到path变量中后,使用上述方式打开了想要build的工程的目录,输入ant命令,一直提示:'ant' 不是内部或外部命...
戴尔服务器r530 windows server 2012 r2 安装无法找到install.wim 错误代码0x80070026,以及制作U启动盘决解ISO文件超过5G大小限制的解决方案关于在戴尔服务器上安装windows server 的一些基础的需要注意的问题在我的另一篇文章里有说明《点击打开链接》,这里不再重复。这里要讲的是怎么解决标题说的两个问题。新购买的戴尔powera
SQLServer中没有MySQL中的group_concat函数,可以把分组的数据连接在一起。后在网上查找,找到了可以实现此功能的方法,特此记录下。SELECT a, stuff( (SELECT '-' + b FROM tb WHERE a = t.a FOR xml path('') ), 1, 1, '' )AS b from tb AS tGROUP BY a;先对a列进行分组,对分组中的b以Xml形式输出,再使用stuff将开关多出的
2019独角兽企业重金招聘Python工程师标准>>> ...
经典回溯题——小木棍
本文讲解lsqcurvefit函数的基本用法:一.lsqcurvefit函数的简单使用格式:x = lsqcurvefit(fun,x0,xdata,ydata);[x,resnorm] = lsqcurvefit(fun,x0,xdata,ydata),lsqcurvefit函数主要应用于非线性优化问题lsqcurvefit函数优化说明:输入xdata(数组),在fun函数中运算得出结果,与ydata(数组)进行比对,调整x的取值,使最后的x取值满足最小二乘法意义下的残差平方和最小。二.示例
mininet是一个很好用的网络仿真实验平台,基于网络命名空间技术的python封装。我是在linux虚拟机中安装了mininet环境$ sudo mnmininet> xterm h1 h2启动一个xterm程序,然后wget一下百度的官网h1 # wget www.baidu.com发现报错了,说域名无法解析。然而回到虚拟机单独起一个终端,也wget一下百度...
mac OS平台下修改Jupyter默认目录在终端运行命令:jupyter notebook --generate -config,(注意generate前面是–,英文状态下的减号两个;后面的那个“-”前后都没有空格)得到/Users/XXXX/.jupyter/jupyter_notebook_config.py路径("XXXX"为具体用户名)其中jupyter_notebook_conf...