Apple EDI X12 业务报文解析(一)—— 850采购订单

2023-10-14 12:58

本文主要是介绍Apple EDI X12 业务报文解析(一)—— 850采购订单,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对Apple 850 X12订单报文格式的解析

最近在做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)打开。

标准EDI 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~
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

segment标识: 如上代码中的ISA、GS、ST、BEG、REF、CSH、TD5、PO1、PID等
segment分隔符: 如上代码中的~(波浪字符)
element元素: 每个segment都包含着多个element
element分隔符: 每个segment中的多个element被element分隔符分隔,如上代码中的*(星号)

对850 X12报文中每个segment的具体解析

ISA、GS 、GE、IEA 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*>~
  • 1

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~
  • 1

GS segment: GS01表示该EDI报文的业务类型,如上代码中的PO表示采购订单;GS02/03表示Sender/Receiver Identifier;GS04/05:表示该EDI报文创建的日期与时间;GS08表示报文执行的EDI标准。

GE*1*1~
  • 1

与GS segment成对出现,GS02与GS06相同。

IEA*1*000000001~
  • 1

与ISA segment成对出现,IEA02与ISA13相同。

业务部分segment

从ST segment到SE segment是对850采购订单业务值的描述:

ST*850*0001~
  • 1

ST segment: ST01表示EDI 报文类型,比如850表示采购订单。

BEG*00*DS*0592608583**20140928~
  • 1

BEG segment: BEG03表示订单号,BEG05表示订单日期。

REF*SB*ZZ11~
REF*6P*ZZ~
REF*8M*0056~
REF*CR*XXXXXXX123~
  • 1
  • 2
  • 3
  • 4

REF segment: 是对一些识别信息的描述,REF01表示信息类型(比如SB表示销售区域、6P表示分组号、8M表示原公司代码、CR表示客户代码、CO表示客户订单号等),而REF02就是该类型信息的具体的描述了。

PER*CN*ZHIXING~
  • 1

PER segment: 是对通讯信息的描述,PER01表示实体类型,PER02表示联系人名称,PER04表示联系人电话。

CSH*BK~
  • 1

CSH segment: CSH01是对需求类型的描述(BK表示Ship Partial - Balance Back Order、SC表示Ship Complete)。

TD5*Z*2*XUPSC02~
  • 1

TD5 segment: TD503是对运输方式的描述。

N1*BY*ZHIXING*92*5601~
N1*ST*XIAN*92*0000858638~
  • 1
  • 2

N1 segment: 是对订单中涉及的相关实体的描述,N101表示实体类型(比如BY表示买方),N102表示对应的实体编号。

N3*RSSBUS*XIAN KAIFAQU~
N4*SHANXI, XIAN PROVINCE**710000*CN*SP*100~
  • 1
  • 2

N3 segment: 是对实体地址信息的描述(街道详细信息)。
N4 segment: 是对实体地理信息的描述(国家/省份/邮编等信息)。

PO1*00010*5000*EA*2.33*PE*BP*XXXXXX~
  • 1

PO1 segment: 是对采购订单明细信息的具体描述(商品编号/数量/单价)。PO101表示该订单的行号,PO102表示数量,PO103数量单位,PO104表示单价,PO105表示价格单位,PO107表示商品代码。

PID*F****A001,C001,L01,X147****EN~
  • 1

PID segment: 是对商品属性的描述。

SCH*5000*EA***002*20140928~
  • 1

SCH segment: 是对要求到货日期的描述。

以上便是对Apple EDI X12 850报文的具体解析,希望可以帮助您看懂EDI 850报文,后续会对Apple其他的业务报文进行解析分享,同时欢迎大家留言沟通交流(#.#)

这篇关于Apple EDI X12 业务报文解析(一)—— 850采购订单的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/210658

相关文章

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Java MCP 的鉴权深度解析

《JavaMCP的鉴权深度解析》文章介绍JavaMCP鉴权的实现方式,指出客户端可通过queryString、header或env传递鉴权信息,服务器端支持工具单独鉴权、过滤器集中鉴权及启动时鉴权... 目录一、MCP Client 侧(负责传递,比较简单)(1)常见的 mcpServers json 配置

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

99%的人都选错了! 路由器WiFi双频合一还是分开好的专业解析与适用场景探讨

《99%的人都选错了!路由器WiFi双频合一还是分开好的专业解析与适用场景探讨》关于双频路由器的“双频合一”与“分开使用”两种模式,用户往往存在诸多疑问,本文将从多个维度深入探讨这两种模式的优缺点,... 在如今“没有WiFi就等于与世隔绝”的时代,越来越多家庭、办公室都开始配置双频无线路由器。但你有没有注