轮胎行业EDI:Tigar 轮胎EDI项目案例

2024-04-16 21:52

本文主要是介绍轮胎行业EDI:Tigar 轮胎EDI项目案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Tigar 轮胎是一家塞尔维亚轮胎制造公司,自2007年开始,被轮胎制造商米其林持有。

Tigar通过EDI来传输与供应商之间的业务单据,优化业务流程。本文将从EDI需求概览、如何基于知行之桥EDI系统实现与Tigar的EDI对接以及项目回顾这三个部分为大家展开介绍。

EDI需求概览

Tigar_edi1.png

EDI传输协议

Tigar选择通过SFTP与其交易伙伴传输EDI单据,SFTP(SSH File Transfer Protocol)安全文件传输协议,与FTP有着几乎一样的语法和功能。而在对接Tigar的EDI项目中,Tigar作为SFTP Client,其供应商作为SFTP Server。

SFTP Server的特性包括:Zlib压缩传输、AES & 3DES加密、公共密钥和密码身份认证。支持IPV6地址、符合FIPS 140 – 2的加密以及Windows用户管理。可以快速、简单的进行自动化安全文件传输。

扩展阅读:如何使用知行之桥EDI系统实现SFTP Client和SFTP Server连接?

EDI报文标准

国际通用的EDI报文标准有很多,Tigar选择使用的EDIFACT,是由联合国主导开发制定的国际通用 EDI 标准。

扩展阅读:EDIFACT学习手册

实施方案

知行之桥EDI系统支持多种集成方案,根据供应商的实际情况,经沟通后选择中间数据库方案。

中间数据库表,作为EDI系统和ERP系统间数据传输的纽带,它既可以用于EDI数据的溯源,避免纠纷,也保证了EDI和ERP集成后的平稳运行。EDI和ERP约定不直接修改中间数据库表中的数据,以此完整保留EDI所传输数据,方便在出现业务数据争议时进行数据溯源;ERP自行从中间数据库表抓取及存放数据,不直接修改ERP生产数据库的数据,便是在EDI和ERP集成中对ERP系统平稳运行的一个侧面保护也可以在不影响ERP原有业务的基础上完成和EDI的集成。

知行之桥EDI系统和金蝶ERP系统,通过各自的接口来连接中间数据库表,实现从中间数据库表中存放和读取数据。知行之桥EDI系统中的数据库端口,用于配置数据库表信息,完成与中间数据库表的连接。目前支持的数据库有:MySQL、PostgreSQL、SQLite、SQL Server、Oracle等。

基于知行之桥EDI系统对接Tigar EDI

实现与Tigar的EDI对接需要在知行之桥EDI系统中搭建如下所示的工作流:

Tigar_edi2.png

工作流中使用到的各类端口功能如下:

  • SFTPServer 端口:作为 SFTP 的服务端,提供文件上传下载服务;
  • Database 端口:数据库端口,用来连接Z公司本地的数据库,实现从数据库中读取数据并将数据写入数据库中的功能。此项目中 Tigar_Database 端口用来连接本地 DB2 数据
    库,从数据库中获取 DESADV、INVOICE 和 DOT 的相关数据,并将 Tigar 返回的 DOT response 信息写入数据库中。
  • Script 端口:用来实现不同功能的脚本,此项目中使用此端口实现了文件重命名,调用外部 API 获取 token,以及调用外部 API 发送 JSON 文件的功能。
  • FileMatch 端口:根据不同的文件名匹配文件,转发到此端口的文件会与此端口中的过滤条件进行匹配。
  • XML Map 端口: 用来映射不同格式的 XML 文件,此项目中主要用来将 DOT,DESADV和 INVOICE 的数据库表格式的 XML 文件映射为自定义的 XML 文件,或者 JSON 格式的 XML 文件,同时将 JSON 格式的 Response XML 文件映射为数据库表格式的 XML文件。
  • JSON 端口: 主要功能是实现 JSON 格式的文件和 XML 格式的文件之间的相互转换。
建立SFTP连接

SFTP Server的特性包括以下几点:

  • Zlib压缩传输
  • AES&3DES加密
  • 公共秘钥和密码身份认证
  • 支持IPV6地址
  • 符合FIPS140-2的加密
  • Windows用户管理

Tigar_edi3.png

首先需要配置自己的SFTP Server信息,打开知行之桥EDI系统的工作流界面,单击界面上方的个人设置,在个人设置界面找到SFTP Server并打开,进行服务器配置。端口号是SFTP Server要使用的端口号(一般为22),还需要在这个界面上传私钥证书,并且设置证书密码(如果没有私钥证书,可以点击服务器证书后的创建证书,进行创建)。下面的根目录是SFTP服务器根目录的绝对路径。配置完成后点击保存变更。

项目回顾
Tigar EDI 数据流

本次对接Tigar的EDI项目中,从中间数据库中获取数据,通过知行之桥EDI系统的匹配与转换。对于DOT文件,通过Script端口调用Tiger的API,将文件发送给Tiger。对于DESADV 和 INVOICE 文件,则需要上传到 SFTP Server 上,Tigar 使用分配的账号登录此 Server 获取文件。数据流程图如下所示:

Tigar_edi4.png

使用Script端口实现文件重命名

对接Tiger的工作流中,被命名为Rename_Script的端口,能够编写脚本实现重命名文件的功能,根据不同的数据库文件的名称,将文件重命名为以 DOT、DESADV 或者 INVOICE 开头的文件,并将此文件的业务主键添加到文件名称中,以便之后的业务处理。

Tigar_edi5.png

了解更多 EDI 信息,请参阅: EDI 是什么?

这篇关于轮胎行业EDI:Tigar 轮胎EDI项目案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/909999

相关文章

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

SpringBoot实现动态插拔的AOP的完整案例

《SpringBoot实现动态插拔的AOP的完整案例》在现代软件开发中,面向切面编程(AOP)是一种非常重要的技术,能够有效实现日志记录、安全控制、性能监控等横切关注点的分离,在传统的AOP实现中,切... 目录引言一、AOP 概述1.1 什么是 AOP1.2 AOP 的典型应用场景1.3 为什么需要动态插