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

相关文章

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.

Java的栈与队列实现代码解析

《Java的栈与队列实现代码解析》栈是常见的线性数据结构,栈的特点是以先进后出的形式,后进先出,先进后出,分为栈底和栈顶,栈应用于内存的分配,表达式求值,存储临时的数据和方法的调用等,本文给大家介绍J... 目录栈的概念(Stack)栈的实现代码队列(Queue)模拟实现队列(双链表实现)循环队列(循环数组

java解析jwt中的payload的用法

《java解析jwt中的payload的用法》:本文主要介绍java解析jwt中的payload的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java解析jwt中的payload1. 使用 jjwt 库步骤 1:添加依赖步骤 2:解析 JWT2. 使用 N

Python中__init__方法使用的深度解析

《Python中__init__方法使用的深度解析》在Python的面向对象编程(OOP)体系中,__init__方法如同建造房屋时的奠基仪式——它定义了对象诞生时的初始状态,下面我们就来深入了解下_... 目录一、__init__的基因图谱二、初始化过程的魔法时刻继承链中的初始化顺序self参数的奥秘默认

Java 正则表达式URL 匹配与源码全解析

《Java正则表达式URL匹配与源码全解析》在Web应用开发中,我们经常需要对URL进行格式验证,今天我们结合Java的Pattern和Matcher类,深入理解正则表达式在实际应用中... 目录1.正则表达式分解:2. 添加域名匹配 (2)3. 添加路径和查询参数匹配 (3) 4. 最终优化版本5.设计思

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

Java字符串处理全解析(String、StringBuilder与StringBuffer)

《Java字符串处理全解析(String、StringBuilder与StringBuffer)》:本文主要介绍Java字符串处理全解析(String、StringBuilder与StringBu... 目录Java字符串处理全解析:String、StringBuilder与StringBuffer一、St

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

C#中async await异步关键字用法和异步的底层原理全解析

《C#中asyncawait异步关键字用法和异步的底层原理全解析》:本文主要介绍C#中asyncawait异步关键字用法和异步的底层原理全解析,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录C#异步编程一、异步编程基础二、异步方法的工作原理三、代码示例四、编译后的底层实现五、总结C#异步编程