很多企业在使用EDI传输数据的时候,也会出现传输数据有误的情况,例如传输了重复的文件,下单不满足供应商要求,在错误的时间点上传了文件等等,那么当发出有误的EDI数据之后,如何进行撤回呢?
重复文件处理机制
有时,可能因为业务人员的失误,触发了文件重复发送的机制,两个EDI文件的编号与内容完全一致,通常业务系统会自动报错或忽略第二次发送的文件,在这种情况下一般不需要人为进行干预。
通过当前报文进行取消或撤回
很多EDI报文中都有特定的字段来表示此报文的作用,以下856报文为例:
报文开始的BSN01字段 00代表Original,即原始数据 01代表Cancellation,即取消 04代表Replace,即更新或替换
如果传输了错误的数据,即可再次传输BSN=01或04的报文给交易伙伴,进行取消或者更新的操作。
通过发送其他报文进行取消和信息变更
有时,如果发送了有误的数据,可以用其他的报文来进行取消/变更操作。例如850/ORDERS采购订单和860/ORDRSP采购订单变更报文,订单变更报文可以对订单中的数量、交期、价格等信息进行变更,甚至可以取消原始订单中的订单请求。
人工干预
以上两种操作并不是100%成功的,假如对方的系统不支持识别报文状态码,则第一种方法无效;假如对方的系统不支持860订单变更,则第二种方法无效。这个时候,就需要进行人工干预了,业务团队可以线下联系交易伙伴,对发送数据的情况进行说明,请求对方对该笔数据忽略/拦截处理。
如何避免产生错误的数据
1.必填字段校验
对于业务报文中的必填字段,可以在ERP中直接增加必填值校验,如果不填写,则无法保存/提交,确保所有必填字段都没有丢失;知行之桥EDI系统同时也可以增加必填字段校验,如果字段缺失,则会产生报错,发送邮件提醒给客户的邮箱。为节约时间、提升生成数据的速度,推荐在ERP中直接做好校验。
2.重复数据校验
ERP中可以增加重复数据发送校验,以此避免数据的重复发送。
“为什么不在EDI系统上做呢?”——EDI系统作为一种中间件,扮演的是格式转换和数据传输的角色,一般不会存储数据,因此,在ERP有能力的情况下最好在ERP中完成。
3.延时发送数据
因为自动化转换的速度是非常快的,所以ERP中提交数据之后,可能在1-2分钟之内数据就会被发出。对于对时效性要求不高的报文,可以采用延时发送的方式,知行之桥EDI系统上的端口可通过配置port.cfg文件延时发送 ,也有Schedule端口可以设置定时发送。
以下是知行之桥EDI系统中Schedule端口的配置页面,可以在设置/计划中设置定时发送。
以上就是如何取消/撤回EDI报文以及如何尽可能避免发出错误数据的方法,有任何疑问欢迎随时交流。