Apple EDI X12 业务报文解析(二)—— 855采购订单确认

2023-10-14 12:59

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

Apple 855 X12订单确认报文格式的解析&X12文件与XML文件转换

在对Apple EDI 850报文解析文章中我们已经对标准EDI X12报文组成有了了解,本篇将继续对Apple EDI X12 855业务报文进行具体解析,并同时对看懂X12 业务报文后,X12文件与XML文件之间如何进行转换进行分享。

X12 855是对采购订单的确认,成功接收X12 850之后发送的文件,确认是否可满足订单需求。一般来说,855报文中包含前期收到的850采购订单的订单号、数量、价格、需求日期等相关信息和对收到的850采购订单的回复信息:接收or拒绝。下面我们先对855 X12报文业务部分进行具体的解析:

855 X12报文中业务逻辑部分每个segment的具体解析

ST*855*0001~
  • 1

ST segment: ST01表示EDI 报文类型,比如855表示采购订单确认

BAK*00*AT*0611006469*20181008****PO10000001*20181008~
  • 1

BAK segment: BAK03是对应850(采购订单)的订单号,BAK04是对应850(采购订单)的订单日期,BAK08是对应850(采购订单)的客户编号,BAK09是采购订单确认(即855)的回复时间

PO1*000010*140000.000*EA*1.7100000000**BP*XXXXXXXXX*VP*XXXXXXXXXX~
  • 1

PO1 segment: 是对850采购订单中一些信息的描述,PO101表示订单行号,PO102/PO103表示订单数量/数量单位,PO104/PO105表示订单单价/单价单位,PO107表示采购商的商品编号,PO109表示供应商的商品编号。

REF*PO*PO100000XX~
REF*VN*PO1000XXXX~
  • 1
  • 2

REF segment: 是对一些识别信息的描述,REF01表示信息类型(比如PO表示订单号、VN表示ERP订单号等),而REF02就是具体的信息了

ACK*IA*140000.000*EA*067*20181008~
  • 1

ACK segment: 是对产品的确认回复,ACK01表示接受(IA)还是拒绝(IR)采购订单(850),ACK02/ACK03是订单数量/数量单位,ACK05对到货日期的确认。

CTT*1*140000.00~
  • 1

CTT segment: 是对PO1的信息的汇总,CTT01表示PO1 segment的总数,CTT02表示所有PO1交易数量的汇总

X12文件与XML文件之间的转换

在实施过程中我们可以借助一些工具(比如RSSBus Connect(https://www.kasoftware.com/download.html))实现X12报文与自定义XML文件格式之间的相互转换,在贸易伙伴系统之间建立安全有效的信息传输通路,促进业务贸易活动及时有效开展,Apple EDI项目实施过程中我借助了RSSBus软件的X12以及Script端口实现了X12文件与XML文件之间的转换,在这里给大家分享下转换过程。

X12标准报文转XML文件
转换流程

在这里插入图片描述
X12标准报文转成XML文件我们借助X12 Port将收到的X12标准报文转换为系统默认的XML格式文件,然后转发至Script Port;在Script Port我们通过写一些code实现将收到的XML文件进行定制开发,转换为我们自定义的XML文件,然后交由业务人员去处理相关的业务。端口之间的转发在系统上配置就可以了。

成果展示

X12 Port上传并发送EDI X12标准文件
在这里插入图片描述
X12 Port转换的系统默认的XML文件
在这里插入图片描述
Script Port上传并发送接收到的默认的XML文件
在这里插入图片描述
Script Port转换的自定义的XML文件
在这里插入图片描述
这里的自定义XML文件我们就可以交由业务人员查看去处理相关的业务了。

XML文件转X12标准报文
转换流程

XML文件转成X12标准报文流程很简单,看下面的流程图就可以知道只是将上述的X12标准报文转XML文件流程逆转就行。
在这里插入图片描述
XML文件转成X12标准报文我们借助Script Port写一些code通过定制开发,将我们自定义的XML文件转换为系统默认的XML格式文件,并转发至X12 Port,然后借助X12 Port将系统默认的XML文件转换为X12标准报文就可以了。
转换的结果和上述X12标准报文转XML文件的成果类似,只是端口先后的问题,在这里就不再啰嗦了(#.#),大家感兴趣的话或者想实际的操作,可以在(https://www.kasoftware.com/download.html)这里下载工具自己练习,同时也可以分享自己的学习心得,我们一起学习~~

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



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

相关文章

SQL 外键Foreign Key全解析

《SQL外键ForeignKey全解析》外键是数据库表中的一列(或一组列),用于​​建立两个表之间的关联关系​​,外键的值必须匹配另一个表的主键(PrimaryKey)或唯一约束(UniqueCo... 目录1. 什么是外键?​​ ​​​​2. 外键的语法​​​​3. 外键的约束行为​​​​4. 多列外键​

Java进行日期解析与格式化的实现代码

《Java进行日期解析与格式化的实现代码》使用Java搭配ApacheCommonsLang3和Natty库,可以实现灵活高效的日期解析与格式化,本文将通过相关示例为大家讲讲具体的实践操作,需要的可以... 目录一、背景二、依赖介绍1. Apache Commons Lang32. Natty三、核心实现代

使用Python自动化生成PPT并结合LLM生成内容的代码解析

《使用Python自动化生成PPT并结合LLM生成内容的代码解析》PowerPoint是常用的文档工具,但手动设计和排版耗时耗力,本文将展示如何通过Python自动化提取PPT样式并生成新PPT,同时... 目录核心代码解析1. 提取 PPT 样式到 jsON关键步骤:代码片段:2. 应用 JSON 样式到

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

全解析CSS Grid 的 auto-fill 和 auto-fit 内容自适应

《全解析CSSGrid的auto-fill和auto-fit内容自适应》:本文主要介绍了全解析CSSGrid的auto-fill和auto-fit内容自适应的相关资料,详细内容请阅读本文,希望能对你有所帮助... css  Grid 的 auto-fill 和 auto-fit/* 父元素 */.gri

Maven 依赖发布与仓库治理的过程解析

《Maven依赖发布与仓库治理的过程解析》:本文主要介绍Maven依赖发布与仓库治理的过程解析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录Maven 依赖发布与仓库治理引言第一章:distributionManagement配置的工程化实践1

MySQL复合查询从基础到多表关联与高级技巧全解析

《MySQL复合查询从基础到多表关联与高级技巧全解析》本文主要讲解了在MySQL中的复合查询,下面是关于本文章所需要数据的建表语句,感兴趣的朋友跟随小编一起看看吧... 目录前言:1.基本查询回顾:1.1.查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J1.2.按照部门

Spring三级缓存解决循环依赖的解析过程

《Spring三级缓存解决循环依赖的解析过程》:本文主要介绍Spring三级缓存解决循环依赖的解析过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、循环依赖场景二、三级缓存定义三、解决流程(以ServiceA和ServiceB为例)四、关键机制详解五、设计约

Redis实现分布式锁全解析之从原理到实践过程

《Redis实现分布式锁全解析之从原理到实践过程》:本文主要介绍Redis实现分布式锁全解析之从原理到实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、背景介绍二、解决方案(一)使用 SETNX 命令(二)设置锁的过期时间(三)解决锁的误删问题(四)Re

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义