00:13
大家下午好,欢迎大家来到知行软件的EDI公开课,我是本次公开课的主持人温蒂,我们今天邀请了执行软件的项目经理team team,他专注于汽车和电子两大行业项目,经验十分丰富,而且也帮助了许多企业成功上线EDI项目。他今天呢会分享如何通过行之桥的EDI系统实现X12850采购订单至可视化Excel的一个流程,我们今天的课程呢也是有一个小作业的。所以在team讲解的过程中,如果你有任何的疑问或者不了解的地方,可以点击聊天将问题发送到评论区,我这边会实时的记录大家的问题,到最后课程的问答环节,请team进行详细的解答,那接下来我们就把时间交给team老师。
01:09
嗯,大家下午好,我是智行软件的,很高兴今天来给大家带来我们智行软件的第一堂公开课,然后我们今天的主题是X12850采购订单转换至可视化Excel,然后它是一个比较偏实操的,比较偏实操的一个课程。我们今天的课程呢,将从以下几个方面来详细的做一些介绍,首先是需求分析。我们会介绍一下,就是我们这个今天做这个项目的一个EDI的需求,然后第二个部分呢,我们会对X12报文重点做一些解读,来教大家怎么去阅读这个X12报文,怎么从中去获取到自己需要的数据。然后第三部分呢,我们是一个DEMO的部分,然后我们会打开我们自行之桥的环境,在上面从头开始,一步一步的搭起这个完整的工作流。然后第四步呢,因为我们这个搭工作流的过程中,里面会涉及到一些代码的部分,然后里面会有一些代码的实现逻辑,我可以讲重点给大家解释,呃,给大家解释一下。最后一个环节呢,我们放一个QA,就像刚才主持人介绍过,在最后这个QA的环节,我会整理一下大家在讲解过程中所列出来的问题,然后我们会给大家做一个集中的答疑。
02:28
我们先来分析一下今天的这个项目的需求,我们这边模拟了一个,模拟了一个一代的项目,然后我们这边先看一下需求,首先它的传输协议是这个as two as two,呃,相比呃,想必之前大家也有了解过s two这个传输协议,它是最早是在零售行业。发展起来的,然后目前它用的比较多的,像在北美的一些跟北美的一些企业对接的过程中,会用到这个s two,像比如说苹果啊,或者特斯拉,还有亚马逊,就是比较可能是美北美的企业,他们用的A这个传输协议,然后报文标准呢,我们今天这个项目报文标准选用的是这个X12 x12 x12它也是北美用的比较多,所以说A素和X12这两个会经常会成成对的出现对。
03:14
在我们对对接需求中会经常的一起出现,然后我们今天需要做的是一个850采购订单接收,这个850呢,就是X12报文,X12报文呢,它就是以三个数字,三个数字来命名的,然后来代表不同的含义,你像850,它就代表着850采购订单,然后比如说像再举个例子,像810,它代表的就是发票invoice,然后或者是856。它代表的就是发货通知单,发货通知单,然后这种三个数字的全都是X12的报文,然后以后你一看到它的报文列了三个数字,那就知道它是X12的格式,然后我们今天需要做的是一个接收,接收订单,就是我们在接收到这个X12的报文之后,我们需要把它解析成一个Excel文件,然后。
04:01
可以直观的看出来,看出来里面的数据,然后我们来看一下下面这个示意图,左边呢,它叫TP,左边它叫TPTP是什么呢?TP它的全称是trading partner交易伙伴,我们在做EDI项目的时候,一般就把我们对面就叫做TP,对面对面叫做TP,然后左边呢,就是我们的TP,左边就是我们的TP,然后他们内部的系统架构呢,我们这边不关心,我们就看,主要是看EDI1EDI相关方面的参数,首先他们是选这个s two,然后通过S把这个X12订单发给我们。然后右边的话就是我们本端的系统,本端的系统,因为我们这个项目呢,它不涉及跟后端系统的集成,不不涉及跟后端系统的集成,所以说我们现在只有一个一系统,它负责接收这个数据,还有做一些格式转换,转换之后呢,通过邮件的形式把这个Excel直接发发发给我们的用户,然后这样我们的用户就可以直接看到我们的订单数据,直接看到我们的订单数据。然后我们再来看一下我们今天要做的工作是什么,我们需要有一个原文件,然后有一个目标文件,原文件呢,就是一个X12格式的报文,X12格式的报文,然后我们把它需要把它转换成一个Excel的文件,可读性比较强的Excel文件,呃,我们第一节公开课呢,就是为了方便大家理解我们这个转换过程,所以我们选择了Excel这个方案,Excel这个方案它的优点就是可读性比较强,大家可以直观的看到转换出来的结果是什么,当然我们这个系统也支持把它,呃,转换成把它插入到数据库,或者是调用客户后端系统的API,调用后端的接口,把数据同步进去也是可以的,这些这些更高,这些更进阶的内容呢,我们会在后续的课程中就就是给大家慢慢的推出。
05:42
好,我们先来看一下今天我们这个X12豹纹长什么样子,我先看一下这个X12豹纹。呃,这就是这个XR报文,大家可以看到它就是这样一个报文的形式,对于我们来说去很难去判断里面哪些数据是什么意思,然后怎么去抓取我们需要需要的数据,然后对于大部分的企业内部的系统来说,也是很难去处理的,很难去直接处理这个报文数据的。
06:08
然后我们再来看一下,我们今天要转的目标文件是什么,我们要把这个报文格式转换成什么?好,这样大家可以对比一下,左边就是我们的原文件,左边就是我们的原文件,然后目标,右边呢就是我们的目标文件,我们今天的目的就是把左边这个文件怎么可以把它转换到右边这个Excel上面,大家可以看到右边这个Excel其实它的布局非常非常清晰,然后每个字段也有每个字段对应的位置,这样对于我们业务人员来说,去获取自己的数据是非常容易的,是非常容易的对。然后我们再来看一下,我们再来看一下X12豹纹的结构,X12的豹纹结构。这是一个X12豹纹结构的解析图,它是一个类似于信封的结构。首先我们来看一下一些头部的尾部的信息,头部有一个叫ISA,它是成对出现的,跟结尾这个IEA2个组合起来构成一个interchang,然后interang它代表的就是一次EDI传输,然后第二层叫GS,然后跟结尾这个机是对应的,然后他们组成的是叫functional group functional group,然后它对应的就是一种类型的报文。我举个例子,比如说我这次EDI传输里面需要传一个。
07:21
850采购订单,然后我还需要发通知,那就会有两个functional functional。然后再下面一层呢,是这个ST。他们组成的叫transaction transaction,然后它代表的就是一个豹纹。我再举个例子,比如说我需要在这次E传输里面传输五条,五条采购订单,五条采购订单,那么就会有这个五个transaction,就会有五个transaction出现,然后我们真正需要关心的是中间这部分,中间这部分data的数据,因为我们所有的业务数据是在data上面。呃,外面这三层呢,它是对EDI这个报文结构是有意义的,但是对于我们获取业务数据是没有太大意义的,所以说我们主要还是关注我们这个data这一部分啊。
08:08
那我们还是回到我们这个。X12报文上面,X12报文上面。呃,首先这ISA嘛,就跟刚才对应is sa gsst,我们就把它先先撇开先不管,因为他们对于我们业务来说是没有什么含义的,我们就是从这个报恩星开始啊BG。他们每一行的方面大家看一下。首先你可以看到这个豹纹是一行一行的,然后结尾有一个波浪号作为一个分格,就波浪号作为一个分格,然后每一行呢,它就叫做一个segment。Segment segment。每一个segment代表不同的意思啊,比如说这个BG代表着这个segment,它代表的就是我这个订单的一些主信息,订单号跟订单日期,订单日期,然后可以看到在BG这一行里面,它又用星号进行了分隔,星号进行了分隔,然后新星号分隔的这些对应的数据,数据段呢,我们就把它叫做element。
09:09
Element,然后可以翻译叫做数据元素或者字段名都可以都可以,然后它就代表着具体的业务含义,然后我可以开始可以大家呃说一下怎么去读这个报文,然后BG。BG01型号后面第一个元素BG01,然后第二个元素BG02,然后BG03 BG03通常是我们的这个采购订单号,采购订单号,然后这样我们就知道采购订单号是这个0476696888,然后BG04是空的啊可以是空值,然后BG05201507080708,当然有的同学可能会问,就是说。呃,这一定是波浪号嘛,就就每个sment之间的分隔符一定是波浪号嘛,然后每个数据元素之间的分隔符一定是星号吗?不一定,这个是可以设置的,你可以根据你的需要设置成不同的符号,都是可以的,都是可以。
10:00
然后我们再来看第二个,第二个字段,第二个字段我们把我们我想今天想讲一下这个RF这个字段,RF的这个字段,RF这个字段呢,它是在我们的EDI报文里面,通常指备注,备注,但是这个备注是比较比较宽泛的,它没有制定具体指明你是什么方面的备注,什么方面的备注,所以说还有一类字段叫califa列一下。Poli可以翻译为限定服务。可以分为限定符,这些字段的含义就是可以限限限定它旁边数据的含义是什么?就拿呃,就拿这这这行为例吧,它虽然是个备注,但是这具体什么备注呢?我有个qualify叫coco,它它的它的含义是呃,Customer order number可能是这个啊,我可能是这个customer order number。对,然后customer order number是多少呢?那就是7109790082,对,那这个备注就特指customer order number,然后还有其他的像8M,它指定,它又是指定的另外一种备注,它是循环出现的,对,它可以指定不同类型的备注,对,那么可能有同学就问了,你是怎么知道这个上面这些元素到底是什么意思的,你是从哪里知道的?
11:16
这就引出了我们一个EDI specification EDI规范,EDI规范的东西大家可能之前有了解过,它叫EDI specification或者叫Di guideline,它一般是一个PDF文件啊,这个文件呢,就是如果说我们是跟海外的交易伙伴,就是海外交易伙伴要求我们跟他对接,EDI一般是他们有一套完整的体系,他们有自己的开发规范,当然就是这个开发规范是双方都可以提供的,你可以根据他的开发规范,然后他也可以根据你根据你的开发关规范去做开发,这个都是可以的,但是目前来说,大部分情况下就是我们按照海外的这些交易伙伴的规范去做开发。对,然后我打开这个打开打开这个文件,给大家看一下大概长什么样。对,它就是这样一个PDF的PDF的格式,PDF的格式。
12:05
它上面会介绍你是哪种报文,然后豹文的含义是什么,然后报文的标准,然后包括你的版本号,你这个报文是有不同版本号的,有版本号。再来看一下,它上面会有结构的介绍,你这个报文里面包含了哪些字段,包含了哪些部分,然后他们的结构是什么,我们可以看到这个里面分了三个结构,第一个是这个heading,就是头部信息,包括你的订单日期啊,订单编号啊,或者是一些采购方信息啊,采购方的地址啊,Ship to的信息啊,都会在这个heading里面,然后detail的话。呃,Detail的话是明细信息,我们都知道在采购里面有采购头部,还有采购订单行,具体某一个物料订购了多少数量,会在这个detail里面体现,然后最后是一个summary,是一个总结,就是总结,就是你这个文件里面有几行po po po明细明细。对,大概是这样,然后我刚才是怎么知道怎么知道这个BG。
13:06
对照着来看,对照着来看,所以说我刚才是怎么知道BG03这个位置,彩单订采购订单号呢,那我们就来在这规范里面找一下BG03在哪,首先ISA这个段我刚才也说过,它没有实际的含义啊,所以说我们直接把它略过,直接把它略过。然后GS也是直接略过,然后ST也直接略过,我们来到这个BG这个节点,BG这个节点这个segment,然后BG01的话,BG01它有,它是一个代表00ORIGINAL,它这个地方一般是写死了,它得代表的是原始订单,原始订单然后BG02它给了两个选项,要不就是DS,要不就是sa,要不就是sa,然后代表特定的含义,这些地方就是就是可选项,你就是根据你的实际情况去,它会给你选特定的值填在这里,然后BG03呢,就是我们刚才提到的。可以看到它的解释是purchase order number,那我们就知道了,原来我知道原来这个字段叫采购订单号是从这里来的,对。
14:04
然后以此类推呢,你就可以推出这里面所有字段的含义,对所有字段的含义是什么,然后头部信息讲完了,然后我们再来讲一个明细,明细部分的字段吧,明细部分的字段,然后是POE。我这条分割线上面的就是头部信息,然后我们就不再赘述了,我们再来看到明细,明细的部分好。我们可以其实有些同学可能已经发现了这个明细部分,它是循环出现的POE,然后PID,然后SCH,它是循环出现的,它就是循环出现的,因为我们这个po行它可能有多行,有多行的话,你就会循环出现。然后我们再来看一下吧,PO1这个节点它是空的,然后PO102,那PO102代表什么含义呢?那我们就在这个PDF里面还是在。查找102。丢002,它代表的含义是订购的数量,那就是我这个物料它订购了多少数量,订购了多少数量,对订购了多少数量,然后面是它的单位啊,或者价格呀,然后你的物料编号啊等等等等,以此类推,就是都是都是类似的,都是类似的。
15:07
那么有些同学可能会问啊,就是说我要是每个字段都去看这个PDF的话,岂不是很累,就是太累了,我每个字段可能都要去这个PDFPDF里面去查找,那么就是我们在我们在做了很多EDF项目之后呢,我们有一个最佳实践,就是我们会把这些PDF里面所有的字段,会把它整理到一个Excel里面,整理到一个Excel里面,它叫mapping文档,会给大家看一下我们这个mapping文档长什么样子。就是我们会把这个所有的字段整理到这个PDF,呃,整理到这个Excel里面,然后包括每个字段是什么含义,然后它是可选呢,还是必填的,它的最短长度,最短长度是多少,然后最长长度是多少,我们会把它所有的字段整理在里面,对,然后后面我们进行开发的时候,我们就不需要去翻这个PDF文件,我们只需要对着我们这个Excel文档去做这样的映射,然后去做开发就可以,然后这里面是只记录了我们具有实际业务含义的,实际业务含义的这样的字段,你看有些字段它可能是固定值,或者像没有实际的业务含义,所以说我们就不在这个麦文档里面去写出来了,对,去写出来了,当然这个麦文档它是一个不是不是必须,不是不是必须的,如果你对这个EDI报文结构已经有足够的了解,或者是说你有其他方式去去能帮你整理出这样对应的关系的话,那你就不需要这个。
16:27
不需要这个买文档,对,这只是我们一个最佳实践。好,那接下来的环节呢,我们将进入我们今天的这个DEMO幕环节,我们会在我们执行少的环境上面,从头从零开始给大家搭一个,从零开始给大家搭一个这样的环境,好,我们先进入到我们的环境里。呃,可能有大家可能有些同学还没有就是用过我们的软件啊,就是大家可以在我们官网上先下载到自己电脑上先试用一下,我们这个软件是可以试用的,部署在服务器上面之后,通过浏览器,然后IP,呃,IP加端口就可以访问到我们的环境啊。
17:16
好,那我就进入到我们这个环境,我先给大家简单介绍一下我们这个界面吧,首先是这个状态界面,状态界面,状态界面它会统计就是我所有工作流里面收发文件的情况,发送成功多少,发送失败多少,会指定这具体的时间段,24小时或者七天,30天等等等等,然后如果你想搜索特定的文件,比如说你想搜索。你想根据订单号搜索,或者是你想根据日期搜索,你可以把关键字是在这里,然后根据关键字来进行搜索,可以看到这条文件具体的情况,根据这条文件去看这条文件具体的情况,对,然后我们今天主要用到是这个工作流的界面,然后我们所有的配置和开发都是在这个工作流的界面上面去完成的,工作流界面上去完成,对。
18:01
然后呢,我们来我们来回想一下刚才我们的需求,首先我们是通过A素的,A素的方式去接收的,A素的方式去接收的,所以说我们是需要一个这个S的端口,S端口你在这个MFT里面可以看到这个S端口左边是我们端口列表啊。就是你用到哪个端口,就是这个端口列表里面去找,找你用到哪个端口,然后把它拖到工作流里面,我把它拖出来。然后给大家讲一下这个命名规则,一般我们就是以呃交易伙伴的。交易伙伴的名称作为前缀。假如说A,然后。创建创建即可,然后关于as的配置呢,我这边就不再多赘述了,As的配置是非常简单,大家可以在我官网上面去找as的这个配置的配置的说明,配置说明。然后我这边只是举个例子啊,就是举个例子,然后下一个用到的话,我们是需要一个X12端口,因为我们需要处理这个X12的文件,X12的文件,所以说我们需要一个X12的端口,我们在左边这个端口里面,端口列表里面找到这个EDI。
19:12
然后X12。然后命名规则也是一样的。对,这样就完成了第二个端口的。数配置。然后两个端口是怎么关联起来的呢?就是我A通收到文件之后,我怎么交给我的下一个端口,我怎么这边有箭头,通过箭头把它连起来即可。这样把它连起来即可。这样就这两个端口就连起来,然后这个端口我们点开看一下它的配置吧。这个端口的作用是一步可以完成X12端口,X12报文转到XL,或者是可以把一个XL转换成一个X12,我们今天是一个解析方向,所以说我们这个转换类型就默认选这个X12转换成一个XL,转换成XL之后呢,我们下一步会用一个Excel端口,Excel端口,然后把这个转换出来的ex呃,XXML转换成Excel。
20:21
所以说我们把这个Excel端口再拖出来。也是一样的。嗯。可能有些同学没音啊,我这边体音一下,保证就是其他同学的。真的机遇?然后我生成了下一个Excel端口,下成了下一个Excel端口,然后也是把它连起来,也是把它连起来。然后这里要说明一下,我们这个端口默认它是默认它是自动执行的,就是文件一到这个端口,它就会自动处理,所以说为了避免,就是因为我们现在是第一步搭,所以说我们先把自动关掉,关掉的按钮在哪里,就点开这个端口,然后有个自动化,有个自动化把这个自动把这个发送取消勾选,然后一保存就可就可以,然后这样它的自动发送就会关掉,然后后面的文件调到它这里,它就不会自动到下一步。
21:20
对,这也是为了保证我们一个演示的效果,当然大家在正式正式环境啊,都是可以把这个自动发送给打开的,然后Excel也把它关掉。好,那我们就基本的工作额就配置完了。基本的工作流配置完了,然后我们第一步要做的是什么呢?第一步是做什么呢?我们先需要把一个X12文件先转换成XL,点开这个端口。然后点输入更多上传文件。然后把我们需要转换的这个850的X12的文件上传到。这个端口。然后选中,因为我们自动勾选自动自动化发送没有打开,所以说我们需要手动勾选啊,选中这条文件,然后点发送。
22:05
然后大家可以看到是一个发送警告,这个发送警告是为什么?因为头部是需要设定一些信息的,发送方ID啊,接收方ID啊,因为这些我就没有配置,所以说他报警了,但是这个发送还是成功的,大家在生产环境里面记得要把这个新的ID跟receive id1定要配置对才行。然后这边就处理成功了,我们可以看一下处理成功的结果是什么。就不需要这一步,不需要做任何的开发处理出来就可以直接。看到我们对应的结果。对,这就是我们转换出来的一个标准叉ma,标准叉ma,然后它就相当于是我们对这个X10L文件做了一个展开,把这个文件去做了一个展开,然后它的结构跟我们刚才介绍的其实是一样的,Change,然后下面是functional group。然后group下面是这个我们具体的这个实际的。呃,Transaction set,然后下面是我们实际的这个业务数据,业务数据。
23:03
当我们第一步把这个XML转换出来之后,对于很多企业其实已经可以直接去处理这个格式的数据了,因为就是呃,就是我们处理市面上处理这个XM的这个工具啊,还是软件啊,其实已经非常多了,如果对于一些就是这it能力比较比较好的这些企业,他们其实已经可以直接去处理这个XML了,相比于刚才那个X12文件来说,它这个是更容易去处理的。比如说。这个BG03 BG03,你看BG03,我们这边其实有备注的first old number,其实你就知道这个字段已经是采购订单号了,你就可以直接去取这个值了,对。然后呢?但是我们今天要演示做Excel嘛,所以说我们还需要下一步,还需要下一步,然后我们继续来配置这个Excel端口。Excel端口,Excel端口怎么配置呢?打开这个Excel端口可以看到它需要一个模板文件,模板文件就是我需要上传一个模板文件,我这边先上传一个我这边提前写好的一个模板文件。
24:09
然后保存。我们可以看到上一个端口处理完成的这个文件呢,已经自动的调到这个端口的待发送列表了,待发送列表了,然后我们选中这条文件,然后进行一个发送。然后可以看到发送成功了,然后我们看一下转换出来的结果是什么。对,这个就是我们转换出来的,转换出来的结果,这个就是我们呃一开始说的这个目标文件,然后大家可以直观的看到每条每个字段是什么含义,这样对比们业务人员来说也比较直观,可以获取到自己想要的数据,订单号啊,订单日期啊,然后数量啊,单位价格都比较直观的显示显现在这里,所以说相比于刚开始的那个X12文件来说,这个Excel是更加友好的。X12更加友好,我看到大家有人问在这个模板模板怎么写,把这个模板具体给大家打开看一下,看看这个模板到底长什么样。
25:16
呃,不需要不需要mapping是是需要mapping的,是需要mapping的,只不过我把mapping写在这个模板文件里面,模板文件里面在介在介绍,在介绍里面这些代码开始之前呢,我先给大家介绍一下我们这个脚本语言,我们知行技巧上面这个脚本语言啊。首先我们这个脚本语言,它的名称叫scriptscript,然后分四点给大家简单介绍一下就行,它是一个类XML的语法,可以看到写这个代码的时候其实跟写XL是类似的。然后第二个关键点呢,是叫RSB,然后set,它的作用是赋值,它的作用是赋值,然后第三个的话是RSB扣,它的作用是调用调用。
26:08
然后最后一个呢,是这个方括号,方括号它的作用就是一个取值的作用,一个取值的作用。行,然后那我们再回到我们刚才这个模板上面来。可以看到啊,我这边把一些代码首先写在了这个批注里面,首先写在了这个批注里面,批注里面这些代码呢,我们这个程序会自动执行批注里面的代码可以看到。最上面我这边首先是rsb set,我这边set了一个属性,这个属性是什么呢?就是XML的uri,它的URL的,它是在是这个。它是一个默认值,就是取这个XXML的这个路径。然后呢,我又set set了一个值,Set了一个什么值呢?是这个xml X pass。就是我要把我这个XXML循环到哪个节点,我这边是按这个TX00401850这个节点去循环的,然后我把这个叉mout打开,大家可以对照着看一下。
27:10
然后下面是functional group transaction set,然后TX00400401850,然后就是我每遇到一个TX00400850,我就会进一次这个循环,进一次这个循环。进一次这个循环,然后呢,我这边最后用了一个rsb Co,它就是调用的函数,它调用的是哪个函数呢?是这个xml DOM search这个函数。一写上,然后它就会执行一个,就会执行这个循环,就是每到这个节点,它就会循环到这个里面。然后我把这个大家可以看到这个备注啊,我是我是加在这个单元格里面的,加在这个单元格里面,然后结尾的话,它有对应的,跟它跟它对应的,因为它是一个XL嘛,我需要把这个XL做到闭合,就是头部,然后我在需要在尾部把它闭合,尾部有一个RSB扣把它闭合。
28:04
上面,然后到中间,就是我们的循环体,就是我们的循环体。那这个循环简单就介绍到这里,这个其实大家不需要过度的关注啊,就是这些代码其实都是标准,大家可以直接直接都是可以直接用的,到时候比如说你想做其他豹纹的话,你可以可能只需要把这个路径你切换就可以直接用,就可以直接用对就可以直接用。然后再来看两个具体的取值吧,再来看两个具体的取值。首先看一下这个customer ID customer ID。可以看到它里面用到一个X plus X plus X plus,它的作用就是呃,指定到具体的XML的路径,XL的路径,然后我们可以看到它的路径是ref,然后RF不是有多个嘛,再把再把那个。报打开。呃,这个。Ref,它其实是有多个的RF,它是循环出现的,循环出现有多个的,然后具体你指定的是哪个。
29:04
Ref呢?我具体要取哪个ref呢?我这边有个限定条件,REF01等于8M的时候,我要取你的REF02。然后而也。等于8M的时候。RM的时候,我要取你的这个RF02,就是一个限定条件,然后最后外面加一个方括号,就完成一个取值就完成了,对这个。XL这个指定路径的取值,然后就取到了这个值,然后再看一下我们用的比较多的这个po number po number也是X pass,然后括号。里面是它的路径BGBG03,然后就取到了这个订单号。下面的呢,其实我就不需要再过多赘述了,其实都是类似的需要就是仔细的把每一个字段全部写在这个模板里面,后面所有的。后面你所有的这个。所有所有进来的XM就会按照你设定的这个模板去做这样的关系映射,做这样的关系映射对。
30:08
然后我们回到我们的工作流里面,回到我们的工作流里面。大家可能有疑问啊,就是为什么我收到一个X12文件之后,我不能把它一步转换成Excel,我为什么要在中间。引入这样的一个XL呢?为什么要在中间转换出这样的一个XL,它有什么用?为什么我要就是。转换成XM,我不直接一步一步生成我的Excel呢,这样的我们这个平台呢,我们是其实是给客户更多的可能性,更多的灵活性去考虑的,因为说我们在接收到这个X12的文件之后,我们第一步把它转换成一个X ma转换成这个XM之后呢,我们后面可以有多种的方式把它处理,比如说今天我可以把它转换成一个Excel。然后后面的话,我还可以把它插入到我的数据库里面,我可以看到在左边就我们支持的这些数据库,我可以把它插到我们的数据库里面,或者我们还可以把它插入到我们的ERP或者是SAP里面,我们有专专门的SAP,或者是你可以调一些系统的接口,不管你是ERP系统还是mass系统,还是SR系统,不管是什么系统,只要你有接口,我们都可以调,把这个数据同步到你的业务系统中,对。
31:21
然后对于我们内部来说呢,就是我们这样的话也方便后期去排错,我们可以,因为我们每一个端口其实只只执行了一个功能,比如说他们分工非常明确,我这个端口就是接收A的文件,你里面S的文件到底是什么我不管。然后我这个X12的端口,我就是要解析X12,把它转换成XL,除此之外不做多余的动作,然后下一个端口,我就是要把这个XL转换成Excel,不做多不做多余的操作,这样方便我们后期去排查错误,万一有报错的话,我可以直观的看到我错误在哪里,哪一步有问题,我可以我可以针对性的去做出调整,而不是比如说我我我我我中间有个报错,但是我不完全不知道哪里有问题,它只是一个报错,我可能需要去分布去查,那样非常麻烦,但是我们如果把它具象化成一个一个端口的话,每一步执行一个操作,每一步有问题,我可以迅速的定位到问题,并把这个问题进行调整。
32:15
对,这就是我们为什么要引入XL的这样一个概念。然后刚才提到了,就是怎么去排查错误,怎么去排查错误,然后我这边再举个例子,怎么去排查错误。比如说我这个XL,呃,这个Excel端口吧,假如说我上传了一个错误的模板,我模板里面的code写的有问题,写的有问题,我这边准备了一个错误的模板。这个是一个错误的模板,然后保存。然后给大家教一下怎么去重传文件,就算这个文件已经重发,已经发送成功了,你还是可以去重发这个文件,你回到这个输入的列表里面,选中这条,选中这条数据,然后更多重入队列。
33:00
然后它就又变成了unent的状态,然后你再选中。它其实已经有个报错了,它提示的报错是这个不平衡的标签,我们就知道我们可能是这个模板里面的code的写的一个问题,我这时候就需要去打开这个模板去定位问题了,当然有的时候你可能就是根据这个报错信息,就是一时半会儿定时不定,定定定位不了问题,然后我们这边有一个加号,大家可以看到这边有个加号,可以点开这个加号,然后看一下你最新传的意思是这个。呃,02:33这一条,你把这个log下载下来。你可以看这个具体的日志里面的信息,就是如果你判断不了的话,你可以把这个日志发给我们执行的运维工程师,或者是我们的工程师会帮你去定位,去排查这个问题。然后我们今天的今天的讲解大概就分享到这里,然后大家在过程中有什么疑问的话,就是。
34:05
麻烦的问题就是帮我看一下,大家在过程中有什么问题,我们可以集中给大家解答一下。嗯,好的,现现在的话,大家要是还有什么问题,可以发到评论区,我这边跟team都可以直接看到。好,那先感谢team的精彩分享,在刚才的讲解过程中呢,我这边也有收集到一些问题,希望再详细解答一下。首先第一个问题是山中软件这位朋友提问的,他对于我们刚才的那个PDF说明文档要从哪里获取不太了解,Team这边你来解答一下。呃,这个PDF文件呢,一般是我们在跟交易伙伴做EDI项目之前,就是你需要去跟他,要他那边有这些规范文件怎么开发。你需要跟你的交易伙伴去要这个文档,对。
35:02
嗯嗯,然后还是山中软件这位朋友的问题,他继续在问能否转成CSV的格式,呃,CSV是可以的,我们这边上面支持的文件特别多。我们有专门的CSV端口,端口如果用。把它拖出来就可,拖出来就行,然后它可以完成的功能就是把一个XL转换成CSV,或者是把CSV转换成XL,对。包括嗯,包括像Jason啊,或者是一些平面文件啊,我们都是支持的,对支持的格式特别多。嗯,好的,然后是一这位朋友他的问题就是说我们把这个Excel转出之后,要保存到哪呢。呃,其实是不需要保存,一般一般一般来说啊,我们在转换完这个Excel之后,我们需要把这个Excel文件直接给到我们的业务人员,因为这个数据已经是我们业务人员可以直接用的,然后一般我们的通常我们的做法是连一个email send的端口给大家拖出来,看一下email send的端口,它可以配置你的。
36:08
发件发,呃,那个发件箱,还有你的收件人,发件箱跟收件人,然后你需要哪些人接收这个Excel,你把收件人配在这里就行,然后对应的主题是什么,然后对应的这个对应的或者是可以。里面有什么提示的消息啊,比如说你收到了新的来自于谁谁谁的850数据,你可以配在这里面,然后配置完之后,然后你把它连起来,把它连起来,那么上一步转换出来的这个Excel的话,就会通过这个email send端口自动的发送给对应的收件人,对,这个是我们通常的做法。嗯,好的,然后我们继续看评论区的问题啊,这位Jason郭同朋友问,他说ISA和JS字段的含义能否再详细的讲解一下?
37:01
我这边打开,打开一个。好,我这边打开。首先ISA跟GS这些信息啊,其实我们这个X12端口。头部的这些配置是一一对应的,比如说这个is isa06,它的作用就是发送方ID,因为你在进行I那个EDI报文传输的时候,你需要指定你发给我了,但是你的身份是谁,就需要,就类似于一个身份证号,你要告诉你的ID是多少,然后包括还有一个接收方ID,比如说我以这个发送方ID为例吧,它的它的位置是ISA06。还以刚才的方法零一,然后0203040506这个处理文件里面是这个。VNT。对,它的发送方ID就是维恩科技。然后我们前面还是有个限定服务,那么你这个编号是根据什么规范,什么规定来,什么规定来写的,呃,什么什么规定来,是哪个哪个规则来制定的呢?我们这边。
38:10
常用的是这个ZZ吧,就自定义,我这边可以随便自定义我的编号,然后还有其他的,还有其他的啊,不同规不同规范的,比如说d us编号啊,或者什么编号啊,你这个编号是哪种类型的编号为不同类型的指定,然后我们最常用的是这个ZZ对。然后后面呢,比如说像ISA12,看一下IA12。00401,它就是这个版本号,版本号,然后SA15呢,它对应的是这个测试标识符,测试标识符就是说当我这个地方为T的时候,那就表明我这一条测试数据啊,它这条数据是一条测试用的数据,不是生产数据,当我比如选选T的时候,我就是一个production data,就是一个用作生产环境的数据,对。生产环境的数据,以此类推吧,就头部的这些信息,都是一些EDI结构上,EDI层面结构上的东西,对。
39:06
嗯,好的,感谢team的讲解,我们继续看评论区的问题,呃,有一个这位朋友,他问能支持Jason转EDI吗?呃,支持支持,其实格式也是一样的,我们这边有专门的Jason端口,Jason端口。它的功能是提供Jason文件跟XL之间的相互转换,只要你把这个Jason先转换成XL,后面我们就好处理了,把它转换成我们EDI需要的格式。基本上常用的任意格式的之间都是可以互相转换的,这个没有什么限制。为什么有啊啊问题可以继续看下一个。嗯,好的,我们继续看这个成都史塔克这位朋友问,能自发自收进行测试吗?嗯,可以可以的。比如说我举个例子吧。
40:02
A,正常来说,这里是配置对端的信息,就是你交易伙伴的信息,当然你也可以自发自收,你在个人设置里面,个人设置这个里面先配置好你本端的信息。的信息。然后包括你的证书啊,这些你都配置好,然后这个时候我们把本端的信息配置进去,就可以完成自发自收了,然后这个详细的配置可以看到,可以看我们的官网上有针对S端口专门的介绍,对。然后它的原理就是你在这个A这里,把这个交易伙伴的SID和信息配置成你自己的,就可以进行司法自收,对。嗯,感谢team,我待会儿也会把as two端口的配置文闸到我们的课程群里,大家可以进行查看,我们再来提问最后一个问题,这个一,这位朋友说,为什么我有时候下载的X12文件是一行的?呃,就是因为没有自动换行,我这个文件其实最开始也是一行给大家看一下,你可能是说的这种情况。
41:06
嗯,应该这个情况,你就是觉得它是一行,因为它没有换行。没有换好,它其实是正常的,这是正常的,因为它结尾是通过这个波浪号来做进行分隔的,波浪号进行分隔的,它这边已经可以标识不同的segment了,但是这个你收到这个文件之后,我们的呃软件是可以直接处理的,但是如果你去读的话,你可能需要做一些格式调整,比如说我需要把这个波浪号。换成波浪号回车。这样就可以。自动换行,这个其实其实不太需要,自动换行不太需要,因为它一方面是我们软件可以自动处理,除非有的时候就是你需要去读的时读。才需要去做。这样的换。嗯,好的,那我们今天由于时间的原因,本次公开课的问答环节就先到这里,对于一些未能回答的问题,或者大家还有什么其他的问题,在课程结束之后,可以继续在我们的公开课的群里进行提问,没有在公开课里的朋友可以扫描我们屏幕上方的二维码,麻烦你分享一下我们的群二维码。
42:22
对,没有在群里的朋友可以扫描这个二维码入群。那今天也感谢大家的积极参与,感谢team的精彩讲解,通过今天的课程,相信大家也都学会了在我们的行之桥EDI系统中如何将一个850的采购订单转成Excel文件,我们在课程开始之前呢有说到有一个小作业,大家可以访问我们执行软件的官网,下载Excel方案的示例工程进行一个实战,完成后呢,可以将你的Excel方建方案的搭建成果分享到我们的课程群里,即可领取一年的知行磨盘授权价值2999元哦。
43:03
好的,那我们今天的课程就到此结束了,期待下一次EDI课堂,拜拜,好,谢谢大家的时间,拜拜。
我来说两句