当前位置: 首页 > news >正文

汽车EDI——Volvo EDI 项目案例

项目背景

作为Volvo的长期合作伙伴,C公司收到Volvo的EDI对接邀请,需要实现EDI对接。C公司将会面临哪些挑战?又应该相应地选择何种EDI解决方案呢?

汽车行业强调供需双方的高效协同(比如研发设计、生产计划、物流信息等的协同与共享),才能使各节点企业受益,达到快速响应市场的目的。尤其是在项目正式量产以后,汽车零部件企业需要高密度、高频次地传输业务数据,并且快速驱动内部的计划与物流体系,满足准时交付。这意味着对于企业的数据传输和处理能力有着较高的要求,传统的下单方式不再满足企业当前的业务需求。

项目挑战

部分汽车主机厂或者大型制造商可以提供Portal网站等平台,使得企业可以获取和发送业务数据。短期来看可以满足与交易伙伴的合作需求,但却无法与企业内部业务系统集成,仍然需要进行人工处理和数据录入。本次需要与Volvo建立EDI连接的企业C公司的主要诉求在于解决这部分人工处理的工作量,实现其内部业务系统与EDI系统的集成,从而使得业务数据能够被自动化处理。

沃尔沃Volvo EDI 项目需求
传输协议:OFTP

沃尔沃Volvo通过使用传输层安全(TLS)实现了会话级加密。TLS通过对沃尔沃Volvo与其合作伙伴之间交换的所有协议命令和数据进行加密,从而提供数据的保密性。这将提供足够的安全性,防止第三方从传输中提取任何有用的信息。启动EDI项目之后,Volvo将会提供OFTP连接参数给C公司,包括:SSID、SFID、DNS名称以及端口号等信息。

报文标准:EDIFACT
业务类型:DELFOR,DESADV

DELFOR: Delivery Schedule 交货计划(长期)

DESADV:Despatch Advice 发货通知

运输标签

除了上述对于传输协议以及报文标准的需求之外,对接Volvo的EDI项目还需要制作标签。Volvo对于运输标签的要求十分严格,因此企业需要提前预留充足的时间进行标签测试。

EDI 解决方案

考虑到供应商的集成需求,在与知行的项目经理沟通后,最终选择中间数据库方案。采用多张数据库表作为中间表,存放知行之桥EDI系统收到EDI报文后解析所得的业务数据以及发送EDI报文需要ERP提供的数据。

供应商当前使用的是金蝶ERP系统,EDI系统和ERP系统通过各自的接口来连接中间数据库表,实现从中间数据库表中存放和读取数据。

传统业务模式 VS 直连EDI

传统业务模式

Volvo_EDI_case1.png

  • 供应商与主机厂通过电子邮件或是电话进行业务沟通;
  • 数据通过人工录入到业务系统或制表;
  • 物料被送至中间中转仓库或是主机厂;
  • 主机厂收货验收,录入系统;
  • 供应商确认货物送达,更新货物接收情况。

直连 EDI

Volvo_EDI_case2.png

  • 供应商与主机厂通过EDI系统进行业务沟通;
  • 采购方向供货方发送DELFOR/DELJIT,说明物料需求及交付时间等;
  • Label附在货物包装上,用于收货确认;
  • 供货方向收货方发出的货物发运信息,通知收货方做好收货准备;
  • 收货方扫描验收,确认收货。
如何实现与沃尔沃Volvo的EDI对接?
1.搭建EDI传输通道

在知行之桥EDI系统中,建立 OFTP2 连接只需要创建一个 OFTP 端口,并在可视化界面中配置交易双方的连接信息即可。

OFTP端口的 设置 页面中填写 Volvo 的 OFTP2 连接信息:包括SSID/SFID、远程主机地址、Volvo的加密证书等。

Volvo_EDI_case3.png

个人设置 页面下的 OFTP 选项卡中填写C公司自己的OFTP2连接信息

Volvo_EDI_case4.png

2.数据格式转换

数据格式转换部分主要实现EDIFACT标准下的EDI报文与数据库XML之间的格式转换。

本项目中使用的数据库端口是MySQL,用于配置数据库表信息,完成与中间数据库表的连接。目前支持的数据库有:MySQL、PostgreSQL、SQLite、SQL Server、Oracle等。

项目成果

根据上述 EDI 需求,我们需要在知行之桥EDI系统中搭建如下所示的工作流:

Volvo_EDI_case5.png

上图为本次对接Volvo EDI 项目的完整工作流,其中红色方框中的部分为发送方向,主要实现的功能为抓取MySQL中间表中的数据,经过格式转换后生成发货通知 EDI报文发送给Volvo。蓝色方框中的部分为接收方向,主要实现的功能为接收Volvo发来的EDI报文,经过格式转换后将其中包含的交付预测数据存入指定的MySQL中间表中。

使用端口计数:总计使用7个端口(其中OFTP端口被分为了发送和接收两个操作)。

以上工作流已经添加到知行之桥EDI系统中,用户可以一键导入此工作流,配置自己的相关信息即可查看转换效果。点击下载知行之桥EDI系统

测试流程

测试流程涉及OFTP连接测试、对EDI报文的业务测试以及标签测试。根据以往的项目经验,在标签测试部分需要花费较多的时间,因此通常情况下测试周期为一个月左右。

OFTP连接测试

目前知行帮助企业与Volvo对接的EDI项目中,都需要供应商申请自己的Odette证书。因此连接测试需要按照如下步骤进行:

1.购买Odette证书,企业可以自行购买或者由知行软件代购。流程参考:申请和更新Odette证书操作指南

2.交换双方的OFTP连接信息,企业需要在知行之桥EDI系统中配置自己和Volvo的OFTP连接信息。

3.开始OFTP连接测试,需要测试接收和发送文件,确保双方能够正常收发。

业务测试

企业需要接收一个DELFOR,并且基于这个DELFOR物料需求计划向Volvo回复一个DESADV发货通知。

业务测试过程中,如果遇到任何问题,可以与Volvo的EDI团队通过邮件进行沟通。

标签测试

知行之桥EDI系统支持生成运输标签,我们的EDI实施工程师根据以往对接Volvo的EDI项目经验,能够设计符合要求的运输标签。此外企业也可以借助标签生成系统自行制作标签。由于标签测试需要打印纸质版并邮寄至Volvo专门负责标签的部门进行检验,需要大概一周的时间。因此企业一定注意预留好标签测试时间,以免影响项目进度。

阅读原文

相关文章:

汽车EDI——Volvo EDI 项目案例

项目背景 作为Volvo的长期合作伙伴,C公司收到Volvo的EDI对接邀请,需要实现EDI对接。C公司将会面临哪些挑战?又应该相应地选择何种EDI解决方案呢? 汽车行业强调供需双方的高效协同(比如研发设计、生产计划、物流信息等…...

Qt应用程序发布

一、静态编译发布 1.0:以Release模式构建工程 1.1:查看当前构建生成路径,并将所生成的.exe单独拷贝出来 1.2:将可执行文件*.exe拷贝至任一目标文件夹:D:\Temporary\QQIF 2:查看安装Qt时发布工具windeployqt.exe所在的目录 windeployqt.exe在Qt开发套件的bin目录下。Qt的每…...

Python 机器学习 基础 之 【常用机器学习库】 NumPy 数值计算库

Python 机器学习 基础 之 【常用机器学习库】 NumPy 数值计算库 目录 Python 机器学习 基础 之 【常用机器学习库】 NumPy 数值计算库...

Linux Kernel nf_tables 本地权限提升漏洞(CVE-2024-1086)

文章目录 前言声明一、netfilter介绍二、漏洞成因三、漏洞危害四、影响范围五、漏洞复现六、修复方案临时解决方案升级修复方案 前言 2024年1月,各Linux发行版官方发布漏洞公告,修复了一个 netfilter:nf_tables 模块中的释放后重用漏洞(CVE-…...

[word] word如何清除超链接 #媒体#笔记#知识分享

word如何清除超链接 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享下word如何清除超链接的操作办法,一起来学习下吧! 1、清除所有超链接 按下组合键CtrlshiftF9,就可以将网上复制带有超链…...

【Linux】进程(9):进程控制1

大家好,我是苏貝,本篇博客带大家了解Linux进程(9)进程控制1,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 1 fork函数2 进程终止(A)终止是…...

华为RH2288H V3服务器iBMC的SSL证书续期

本文对华为RH2288H V3服务器iBMC的SSL证书续期,以避名登录告警提示及主机状态异常。 一、检查现网服务器iBMC的SSL证书到期时间 登录iBMC,点击配置--SSL证书,如下: 可以看到本服务器SSL证书将于今年7月22日到期。 二、联系厂家…...

ubuntu开机黑屏

BusyBox v1.30.1 (Ubuntu 1:1.30.1-4ubuntu6.1) built-in shell (ash) Enter help for a list of built-in commands. 解决: help 看看哪个盘出问题了 fsck -y /dev/sda1 (出问题的磁盘/分区) reboot 就可以进入系统了 fsck命令&#xf…...

【risc-v】arm和riscv有什么关系或者联系?

ARM和RISC-V都是基于精简指令集计算(RISC)原理的处理器架构,它们在设计理念上有一定的联系,但同时存在一些关键的区别: 设计理念:ARM和RISC-V都采用了RISC的核心设计原则,即通过简化指令集来提高…...

Flutter项目开发模版,开箱即用

前言 当前案例 Flutter SDK版本:3.22.2 每当我们开始一个新项目,都会 引入常用库、封装工具类,配置环境等等,我参考了一些文档,将这些内容整合、简单修改、二次封装,得到了一个开箱即用的Flutter开发模版…...

私有仓库搭建

目前市面上比较常见的私有仓库搭建方法为: 通过 Sinopia 或 verdaccio 搭建(Sinopia 已经停止维护,verdaccio 是 Fork 自 Sinopia,基本上大同小异),其优点是搭建简单,不需要其他服务。通过 cnp…...

axios设置 responseType为 “stream“流式获取后端数据

使用前景: 工作过程中遇到了后端接口响应过慢,前端界面一致loading的情况,这个时候可以尝试采用将Axios的responseType参数被设置为stream类型实现。 stream介绍: stream类型意味着你希望服务器响应的数据以Node.js流&#xff…...

Apache POI(使用Java读写Excel表格数据)

1.Apache POI简介 Apache POI是一个开源的Java库,用于操作Microsoft Office格式的文件。它支持各种Office文档的读写功能,包括Word文档、Excel电子表格、PowerPoint演示文稿、Outlook电子邮件等。Apache POI提供了一组API,使得Java开发者能够…...

golang中只用定义不用初始化的类型规律总结

在go语言的开发中,有很多的内置类型是我们只需要定义而不需要初始化的, 如上文中提到的bytes.Buffer, strings.Builder。 其实在go语言中官方给我们定义的很多的类型都只需要定义,不需要初始化。 他们都有2个共同的规律&#xff…...

数据库之PostgreSQL详解

一、PostgreSQL介绍 PostgreSQL是一个功能强大的 开源 的关系型数据库。底层基于C实现。 PostgreSQL的开源协议和Linux内核版本的开源协议是一样的。。BDS协议,这个协议基本和MIT开源协议一样,说人话,就是你可以对PostgreSQL进行一些封装&a…...

找出链表倒数第k个元素-链表题

LCR 140. 训练计划 II - 力扣(LeetCode) 快慢指针。快指针臂慢指针快cnt个元素到最后; class Solution { public:ListNode* trainingPlan(ListNode* head, int cnt) {struct ListNode* quick head;struct ListNode* slow head;for(int i …...

ssm629基于SSM的二手交易平台设计与开发+jsp【已测试】

前言:👩‍💻 计算机行业的同仁们,大家好!作为专注于Java领域多年的开发者,我非常理解实践案例的重要性。以下是一些我认为有助于提升你们技能的资源: 👩‍💻 SpringBoot…...

【Unity】资源管理与热更 YooAsset+HybridCLR

1 前言 Unity资源管理与热更新该用什么方法?当然是YooAssetHybridCLR了,YooAsset负责资源管理与热更,HybridCLR负责支持代码热更。 但这里我就不自己讲了,我会提供相关学习链接(前人栽树我躺平)。 2 学习链…...

PDF批量加水印 与 去除水印实践

本文主要目标是尝试去除水印,但是为了准备测试数据,我们需要先准备好有水印的pdf测试文件。 注意:本文的去水印只针对文字悬浮图片悬浮两种特殊情况,即使是这两种情况也不代表一定都可以去除水印。 文章目录 批量添加透明图片水印…...

【MySQL】服务器配置和管理

本文使用的MySQL版本是8.0 MySQL服务器介绍 MySQL服务器通常说的是mysqld程序。 mysqld 是 MySQL 数据库服务器的核心程序,负责处理客户端的请求、管理数据库和执行数据库操作。管理员可以通过配置文件和各种工具来管理和监控 mysqld 服务器的运行 官方文档&…...

限流定义、算法、实施方案

限流定义 1、 时间 , 基于某段时间或某个时间点,即:时间窗口 2、资源: 对可用资源进行限制: QPS/连接数/传输速率/黑白名单等 分布式环境下,主流限流方案: 网关层限流:流量入口Ngi…...

[312. 戳气球] 动态规划寻找转移函数

Problem: 312. 戳气球 文章目录 思路Code 思路 这个哥们写的思路真的很牛逼&#xff0c;转载一下他。 戳气球题解 Code class Solution { public:int maxCoins(vector<int>& nums) {nums.insert(nums.begin(), 1);nums.push_back(1);int n nums.size();vector<v…...

以操作系统和Java的视角看“中断“

引言 fucking-java-concurrency主要解读了在开发过程中常常会遇到的Java并发问题&#xff0c;本文主要总结Java的中断原理和应用。 PS: https://github.com/WeiXiao-Hyy/blog整理了后端开发的知识网络&#xff0c;欢迎Star&#xff01; 操作系统的中断 什么是中断&#xff1…...

【运维】如何在Ubuntu 22上使用Python 3.8的虚拟环境

在Ubuntu 22上使用Python 3.8的虚拟环境安装Ryu是相对简单的。以下是一步一步的指南&#xff1a; https://qq742971636.blog.csdn.net/article/details/139566151 安装Python 3.8&#xff1a; 在Ubuntu 22上&#xff0c;Python 3.8可能不是默认安装的版本。你可以使用以下命令…...

门面模式Api网关(SpringCloudGateway)

1. 前言 当前通过Eureka、Nacos解决了服务注册和服务发现问题&#xff0c;使用Spring Cloud LoadBalance解决了负载均衡的需求&#xff0c;同时借助OpenFeign实现了远程调用。然而&#xff0c;现有的微服务接口都直接对外暴露&#xff0c;容易被外部访问。为保障对外服务的安全…...

玩转Matlab-Simscape(初级)- 09 - 在Simulink中创建曲柄滑块机构的控制模型

** 玩转Matlab-Simscape&#xff08;初级&#xff09;- 09 - 在Simulink中创建曲柄滑块机构的控制模型 ** 目录 玩转Matlab-Simscape&#xff08;初级&#xff09;- 09 - 在Simulink中创建曲柄滑块机构的控制模型 前言一、问题描述二、创建模型2.1 识别机构中的刚体2.2 确定刚…...

手撸一个java网关框架

手写一个简易的Java网关框架涉及到很多方面&#xff0c;但我会提供一个基本的框架概念和代码示例&#xff0c;帮助你理解网关的基本构建。以下是一个简单的Java网关框架的实现&#xff1a; 定义路由&#xff1a;需要一个路由表来映射请求的URL到对应的处理器。 请求处理&#x…...

亮数据代理IP助力高效数据采集

文章目录 &#x1f4d1;前言一、爬虫数据采集痛点二、代理IP解决爬虫痛点2.1 为什么可以2.2 本篇采用的代理IP 四、零代码获取数据4.1 前置背景4.2 亮数据浏览器自动抓取数据4.3 使用步骤&#xff1a; 五、数据集5.1 免费样本5.2 定制数据集 &#x1f324;️个人小结 &#x1f…...

VS2022,DLL1调用lib,lib调用DLL2

DLL1调用lib&#xff0c;lib调用DLL2 问题1&#xff1a;为什么在dll1中需要引入dll2的.lib文件 当你有一个工程&#xff08;dll1&#xff09;调用静态库&#xff08;lib&#xff09;&#xff0c;而静态库&#xff08;lib&#xff09;又调用另一个DLL&#xff08;dll2&#xf…...

Unity Mirror VR联机开发 房间篇

一、需求 在联机时通常有加入房间这个步骤&#xff0c;在mirror示例中也有相应的案例&#xff0c;但是那个比较复杂&#xff0c;我们做教育科普类不需要如此复杂&#xff0c;傻瓜式操作基本就可以了&#xff0c;所以我简化了步骤&#xff0c;省略了点击准备按钮这一步骤&#…...

北京企业网站制作哪家好/北京网站优化推广公司

MySQL5.6引入了一个新的系统变量eq_range_index_dive_limit。查阅MySQL5.6官方文档得知&#xff0c;MySQL在执行等值范围查询例如select ... from xxx where xxx in(...)时&#xff0c;优化器在计算执行计划成本时会根据条件个数采用不同的方式以减小选择执行计划的开销。当条件…...

dedecms做国外网站/seo入门培训教程

七月&#xff0c;热&#xff0c;很热&#xff0c;非常热&#xff0c;这两天更是到了一个高点&#xff0c;每天的温度都高达将近40度&#xff0c;天气一热&#xff0c;人就想往凉的地方跑&#xff0c;树荫、空调房还有泳池……每年都会带小样儿去泳池玩水&#xff0c;可今年看了…...

智能网站建设步骤/怎么注册一个自己的网站

如何将四个字段以点分开的IP网络址协议地址转换成整数呢&#xff1f;PHP里有这么一个函数ip2long.比如 <?php echo ip2long("10.2.1.3"); ?> 我们将得到 167903491这是如何计算的&#xff0c;目前我知道有两个算法。其一 <?php function ip2int($ip){//我…...

自己在线制作图片免费下载/夫唯老师seo

作业需求&#xff1a; 用户入口&#xff1a;1.商品信息存在文件里 2.已购商品&#xff0c;余额记录。第一次启动程序时需要记录工资&#xff0c;第二次启动程序时谈出上次余额 3.允许用户根据商品编号购买商品 4.用户选择商品后&#xff0c;检测是否够&#xff0c;够就直接扣款…...

wordpress 钱包/制作网站的软件

简介 关注于数据值的 ‘shape’的类型检查是TypeScript核心设计原则。这种模式有时被称为‘鸭子类型’或者‘结构子类型化’。 。 在TypeScript中接口interfaces的责任就是命名这些类型&#xff0c;而且还是你的代码之间或者是与外部项目代码的契约。 初见Interface 理解interf…...

火星时代ui设计培训怎么样/武汉seo首页优化报价

上一篇&#xff1a;《修炼SpringMVC-注解开发-处理器的请求参数配置》如果文中有纰漏,请多多指正&#xff01;&#xff01;&#xff01;使用Controller注解&#xff0c;注解的处理器&#xff0c;其内部方法常用返回值大致总结为以下4种类型&#xff1a;返回ModelAndView类型返回…...