伟创力Flextronics EDI项目案例分享

2023-10-29 23:50

本文主要是介绍伟创力Flextronics EDI项目案例分享,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

伟创力国际有限公司(Flex International Ltd), 1969年成立于美国硅谷,1981年在新加坡建厂,并在纳斯达克(NASDAQ)上市。 2018年《财富》世界500强排行榜位列466位。 

项目背景

Flex 致力于通过建立更快、更具成本效益的供应链来提高客户的竞争力。为此,Flex发起了一项全球计划,旨在提高供应链的知名度以及与所有合作伙伴的协作。D公司作为Flex供应链上重要的供应商之一,也收到了此协作计划。

Flex的目标是在采购及付款交易方面实现完全自动化:比如预测、采购订单、确认、装运通知和发票。这将为他们的客户在成本、风险和速度方面创造更具竞争力的环境。通过共享实时供应链信息,伟创力Flex和他们的供应商合作伙伴还将受益于更高的响应能力、更少的错误和更高的可见性。

那Flex 是借助什么方式实现了与供应商的业务流程自动化呢?答案就是EDI电子数据交换。

需求及方案概览

AS2 是通过Internet 网络安全可靠的传输商业数据,这也是Flex 首推的通信方式。除了AS2,Flex 支持VAN。VAN旨在提供一种EDI托管服务,好比在企业与企业之间提供共享数据服务的中介。该服务称为“增值网络服务”。

考虑成本问题,推荐D公司选择AS2,除了确保数据安全之外,还可以节省更多的流量费。

Flex支持EDIFACT和X12报文标准。实现AS2通信后,EDI报文标准二选一即可,D公司选择的是X12标准。点击下载Flex EDI规范文档

交易类型业务含义传输方向
850Purchase Order / 采购订单Flex发给D公司
855Purchase Order Acknowledgment / 采购订单确认D公司发给Flex
860Purchase Order Change Request – Buyer Initiated/ 采购订单变更请求Flex发给D公司
865Purchase Order Change Acknowledgment/Request – Seller Initiated 订单变更确认D公司发给Flex

在了解Flex EDI的需求过程中,D公司技术部门已下载试用知行之桥EDI系统,并尝试跑通了知行官网公开的数据库方案工作流。由于对该方案的熟悉度,在项目正式启动时,当即选择了中间数据库方案,并选择自主实施。

为确保项目进度,项目经理提出了由知行的实施顾问带着D公司技术实现一收一发两个报文,深入了解我们的产品以及实施过程后,另外两种单据可自主实施,成本可控的同时效率还更高些。

方案详解及项目成果

上图是本次项目的工作流,以下是关于本项目工作流的核心功能,便于读者了解搭建EDI工作流的思路。

SQL Server端口:旨在连接SQL Server,并对数据库表中的数据进行增删改查。数据库端口输入输出的数据,均通过XML体现。上述数据库端口850_SQLServer、860_SQLServer负责插入来自Flex 850订单及 860订单变更的数据;855Data、865Data负责查询及输出855订单确认,865订单变更的数据。

X12端口:ASNI ASC X12是一种标准的EDI文件格式,常用于北美的EDI交换中。此端口支持X12与XML文件之间的相互转换。以接收850采购订单为例,经X12端口处理后的XML,与数据库订单表期待的XML 结构完全不一致,我们将借助XML Map端口做进一步处理。

XML Map端口:提供了一种可视化编辑器驱动的方式来将XML数据从一种结构转换成另一种结构。继续以850采购订单为例,可以将X12端口输出的XML,映射为850 SQLServer端口期待的XML,使其结构保持一致,这样数据可以顺利进入数据库。

Branch端口:实现数据分流,根据传入消息中的数据进行判断从而将消息分发至指定端口。上图中的工作流通过Branch 端口,区分收到的数据是850采购订单还是860订单变更。

Notify端口:向指定的收件人发送电子邮件通知,前提是必须在知行之桥EDI系统的个人设置中的收件人设置对应的邮箱。如有多个邮箱用英文逗号间隔。如果收到的数据非850采购订单及860订单变更的数据,会触发该端口发起邮件通知。

AS2端口:基于HTTP/S的B2B协议,通过安全可靠的AS2协议发送和接收消息。为电子数据交换(EDI)通信提供安全性、可靠性和不可抵赖性。(图中命名为:PatnerName_AS2)

项目回顾

因D公司要求自主实施项目,所以就由知行方的实施顾问带着D公司在做。最重要的是,过程中D公司给我们提了改进的建议(以下图片取自命名为855_OUT的XML Map端口):

因知行之桥EDI系统的端口ID设置后是改不了名的,防止误篡改导致某些需要端口ID代码的情况下失效。

D公司认为端口的名字应该改成随时可以更改。且表示页面上并不能直观显示出是哪个端口,不熟悉的也只能放大端口图标查看。一开始分不清楚哪个端口是哪个名字,应当显示ID、Name和类型这3个点比较方便。

非常感谢D公司提到的改善建议,我们也会尝试在后续的版本中进行类似内容的改进,同时我们也希望听到更多的客户的声音,帮助我们做得更好,也更能符合客户的预期需求。

注意事项

Flex提供的855和865规范中N9Loop字段下只有MSG,和X12标准不一致。在X12标准中,MSG是出现在N9Loop下的,且N9是必须要有的,Flex的规范中没出现N9,直接是MSG,所以在转EDI标准的XML的时候会报无效的错误,加上N9就可以了。(可以对比一下850和860中出现MSG出现的位置)



 

写在最后

以上就是我们关于D公司对接Flex伟创力 EDI的案例分享,如果大家有关于对接Flex伟创力的EDI需求或者希望了解更多的EDI案例,欢迎联系知行软件。

迄今为止,Flex已有1500多家主要供应商实现了完全自动化。希望你成为下一个。

扩展阅读:

EDI 850 采购订单 | EDI通信专家
EDI 855采购订单确认(POA) | EDI通信专家
EDI 856 发货通知或清单 | EDI通信专家
EDI 860 订单变更 | EDI通信专家
EDI 865 订单变更确认 | EDI通信专家

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

这篇关于伟创力Flextronics EDI项目案例分享的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

OpenCV在Java中的完整集成指南分享

《OpenCV在Java中的完整集成指南分享》本文详解了在Java中集成OpenCV的方法,涵盖jar包导入、dll配置、JNI路径设置及跨平台兼容性处理,提供了图像处理、特征检测、实时视频分析等应用... 目录1. OpenCV简介与应用领域1.1 OpenCV的诞生与发展1.2 OpenCV的应用领域2

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法