首页 > 其他分享 >G公司对接伍尔特wurth EDI项目案例

G公司对接伍尔特wurth EDI项目案例

时间:2023-03-01 17:46:17浏览次数:55  
标签:物料 尔特 报文 EDI wurth 公司

项目背景

对伍尔特wurth 而言,与其供应商开展成功的数字化项目通常是以自动连接开始的。通过这种方式,标准化的信息可以在彼此之间进行简单而自动的交换。这个流程被称为电子数据交换(EDI)。

EDI使得诸如订单、送货单、发票、订单确认等数据转换为各种结构化和标准化的格式,并在几秒钟内通过不同的通信路径发送。伍尔特wurth可以在供应商的ERP系统和其ERP系统之间交换数据——甚至跨越国界。这减少了手动输入的工作量以及错误的来源,加快了供应商的供应流程。

在此前的文章:伍尔特EDI需求分析中,我们介绍了伍尔特wurth EDI项目的具体需求,本文主要为大家介绍伍尔特wurth EDI实施细节以及注意事项。

项目需求

1.传输协议

伍尔特wurth采用AS2传输协议。

2.报文标准

业务报文 业务含义 传输方向
ORDERS 采购订单 伍尔特wurth发送给G公司
ORDRSP 订单回复 G公司发送给伍尔特wurth
DESADV 发货通知 G公司发送给伍尔特wurth

EDI解决方案

建立AS2连接

进行AS2连接,供应商需要准备如下的信息:

  • AS2 ID(供应商AS2身份标识符)
  • Private Certificate (私钥证书)
  • Certificate Password(私钥证书密码)
  • Public Certificate(与私钥证书成对的公钥证书)
  • Receiving URL (供应商数据接收URL地址)

格式转换

伍尔特wurth发送给G公司:G公司需要通过知行之桥 EDI 系统接收来自伍尔特wurth的符合EDIFACT报文标准的报文,再将其转换为满足W公司要求的Json格式,发送给G公司。这个方向主要处理ORDERS采购订单。
G公司发送给伍尔特wurth:G公司提供Json格式的文件给知行之桥EDI系统,知行之桥 EDI 系统获取到文件之后,将其中的数据提取出来,转换为符合EDIFACT报文标准的文件,发送给伍尔特wurth。这个方向主要处理ORDRSP订单回复以及DESADV发货通知两种报文。

G公司与知行之桥EDI系统之间的数据同步

本次项目中,G公司选择通过SFTP上传和下载EDI系统中的文件。知行之桥EDI系统中会建立一个SFTP Server,G公司可以通过SFTP对Receive文件夹进行写操作,对Send文件夹进行读操作。其余的相关操作由EDI系统自动处理。

具体流程如下:

1.数据从EDI系统到G公司:知行之桥EDI系统通过AS2端口接收文件,并将伍尔特wurth发来的ORDERS订单处理为Json格式之后,会通过SFTP将文件放置在SFTP端口的Send目录下:

edi

G公司通过SFTP成功下载后,已读文件将会被放置在Sent目录下。这样的做法可以有效防止G公司重复下载文件。

2.数据从G公司到EDI系统:G公司通过SFTP将Json格式的订单回复以及发货通知放置在SFTP端口的Receive目录下。EDI系统会到这个路径下进行数据读取,然后将Json格式的文件转换成伍尔特wurth要求的ORDRSP订单回复以及DESADV发货通知,并通过AS2端口发送给伍尔特wurth。

项目成果

通过知行之桥EDI系统实现与伍尔特wurth的EDI对接,示例工作流如下:

edi

项目回顾

EDI规范问题

进行EDI报文的格式转换时,需要严格按照伍尔特wurth提供的EDI规范进行。目前伍尔特wurth使用到的EDI规范及其版本号对应如下:

ORDERS EDI规范对应的版本号分为D93A和D96A,其中D93A用于普通采购单,D96A用于供应商直发,经确认本次G公司 EDI 项目中使用D93A普通采购单。

此外由于伍尔特wurth的EDI规范还在调整中,因此ORDRSP以及DESADV具体使用哪种规范需要通过邮件与伍尔特wurth进行确认,确保供应商使用的规范满足伍尔特wurth的最新要求。

测试流程

本次伍尔特wurth EDI 项目中,测试流程主要分为EDI连接测试以及EDI业务测试两部分。

首先需要进行AS2连接测试,测试流程如下:

1.双方通过邮件交换AS2配置信息
2.配置完成之后,G公司邮件告知伍尔特wurth已完成配置,并通过AS2发送一个测试文件。发送成功后,伍尔特wurth将会直接发给G公司一个ORDERS采购订单的测试文件。

EDI 业务测试:

1.G公司收到了来自伍尔特wurth的ORDERS采购订单后,我们的EDI实施工程师会检查ORDERS的结构是否正确,并对这个报文进行解析。结构没有问题之后,需要G公司的业务负责人进行业务数据的核对与验证。
2.G公司给伍尔特wurth回复ORDRSP采购订单回复,伍尔特wurth方对此报文进行验证。(除了要测试普通回复外,同时要拆分数量(行号不变,多交期)进行确认)
3.G公司给伍尔特wurth发送DESADV发货通知,伍尔特wurth方对此报文进行验证。

伍尔特wurth EDI测试场景

本次项目中,完成业务测试环节之后,伍尔特wurth与供应商提出要求:让交易双方的业务人员参与,再进行一轮测试。涉及到的测试场景如下:

1.伍尔特wurth给G公司发送一个ORDERS采购订单

采购订单中包含四种物料,信息如下:

  • 物料A,数量3500,伍尔特常规物料(G公司没库存)
  • 物料B,数量68000 ,伍尔特常规物料(G公司满足此单部分库存)
  • 物料C,数量4000,伍尔特新建物料(双方都没有库存)
  • 物料D,数量10000,伍尔特常规物料(G公司有库存)

2.G公司根据收到的ORDERS采购订单给伍尔特wurth回复一条ORDRSP采购订单回复,包含的信息如下:

  • 针对物料A(数量3500,伍尔特常规物料(G公司没库存))的回复,如果暂时没货,G公司可以回复一个可以交货的日期。
  • 物料B(数量68000 ,伍尔特常规物料(G公司满足此单部分库存))的回复,G公司需要回复两条发货日期,比如分别为:20240903以及20230403,当 G公司满足当前订单的部分库存,物料B的库存量为34000时,具体报文内容如下:

 

 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 LIN+2+5' PIA+5+012345 2  000  800:BP' QTY+21:34000.000:PCE' DTM+67:20240903:102' PRI+AAA:8.01:::100.000:PCE' PRI+AAB:6.9521:::100.000:PCE' RFF+ON:82928302:2' LIN+2+5' PIA+5+012345 2  000  800:BP' QTY+21:34000.000:PCE' DTM+67:20230403:102' PRI+AAA:8.01:::100.000:PCE' PRI+AAB:6.9521:::100.000:PCE' RFF+ON:82928302:2'

 

在ORDRSP报文中,各字段与业务信息的对应关系如下:

PIA字段存放了物料号的信息,G公司可以通过PIA字段存放的数据判断当前的物料种类,如:012345 2 000 800。
QTY存放的是物料数量信息,如:34000.000。
DTM字段存放交期信息,如20240903。

  • 物料C,数量4000,伍尔特新建物料(双方都没有库存),如果暂时没货,G公司可以回复一个可以交货的日期。
  • 物料D,数量10000,伍尔特常规物料(G公司有库存),正常回复订单中要求的数量。

 

 
1 2 3 4 5 6 7 LIN+4+5' PIA+5+213345 2  000  400:BP' QTY+21:10000.000:PCE' DTM+67:20230403:102' PRI+AAA:8.01:::100.000:PCE' PRI+AAB:6.9521:::100.000:PCE' RFF+ON:82928302:4'

 

3.G公司根据ORDRSP采购订单回复中的内容,向伍尔特发出一条DESADV发货通知,包含的信息如下:

  • 物料A,数量3500,伍尔特常规物料(G公司没库存),不需要发货。
  • 物料B,数量68000 ,伍尔特常规物料(G公司满足此单部分库存),发送部分货物,其中包含满足要求的库存即物料B数量为:34000。
  • 物料C,数量4000,伍尔特新建物料(双方都没有库存),不需要发货。
  • 物料D,数量10000,伍尔特常规物料(G公司有库存),正常发货,发货数量为:10000。

以上便是本次项目案例的全部内容了,了解更多 EDI 信息,请参阅: EDI 是什么?

标签:物料,尔特,报文,EDI,wurth,公司
From: https://www.cnblogs.com/edi-ka/p/17169103.html

相关文章

  • Redis主从复制原理
    1.当从服务器连接上主服务器后,主服务器向从服务器发送进行数据同步消息2.主服务器接到从服务器发送的数据同步的消息,把主服务器数据持久化,复制rdb文件发送给从服务器,从服......
  • redis集群某节点连接数偏高问题处理
    背景接收到监控推送的告警,redis集群某节点连接数偏高,触发告警阈值,但该项目明显没有大流量访问,最近也没有更新程序,虽然对生产暂时不会产生影响,但隐患毕竟是隐患,需排查。#......
  • redis主从复制原理
    小码今天去面试。面试官:给我介绍一下Redis集群,小码:啊,平时开发用的都是单机Redis,没怎么用过集群了。面试官:好的,出门右转不谢。小码内心困惑:在小公司业务量也不大,单机的......
  • Mac 通过 Homebrew 安装 Redis 环境
    前言记录一下安装配置Redis环境的过程和遇到的坑,以防止今后再花大量时间来解决。1.安装Redisbrewinstallredisbrewlinkredis测试一下:#启动Redis服务red......
  • Rocky Linux 9 安装 Redis Cluster 配置
    1、安装Redis6.2(六个节点,三主、三副本)dnf-yinstallredis2、修改配置(六个节点)#修改部分的配置文件#vim/etc/redis/redis.conf...bind0.0.0.0daemonizey......
  • Redis Cluster部署一直卡在Waiting for the cluster to join ......
    1、问题现象 线上部署一个40分片的RedisCluster集群,初始化的时候日志输出一直是Waitingfortheclustertojoin......(大集群初始化的时候会出现时间长)2、问题分析......
  • dokuwiki集成ueditor
    ​如何做到ueditor批量上传word图片?1、前端引用代码<!DOCTYPE html PUBLIC "-//W3C//DTDXHTML1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-......
  • redisTemplate String增删改查
    文章目录​​加锁​​​​expire​​​​获取值​​​​例子代码​​​​附录​​​​其他​​​​让锁过期,如何操作​​加锁@ResponseBody@RequestMapping("/lock")public......
  • Redis 五种数据结构以及三种高级数据结构解析
    Redis五种数据结构以及三种高级数据结构解析硬核资源!Redis五种数据结构以及三种高级数据结构解析(详解)(baidu.com) Redis五种数据结构以及三种高级数据结构解析(38......
  • Redis数据结构
    (38条消息)Redis数据结构_redis数据结构_RWCC的博客-CSDN博客Redis是使用了一个「哈希表」保存所有键值对,哈希表的最大好处就是让我们可以用O(1)的时间复杂度来快速......