汽车EDI:福特Ford EDI项目案例
项目背景
福特(Ford)是世界著名的汽车品牌,为美国福特汽车公司(Ford Motor Company)旗下的众多品牌之一。此前的文章福特FORD EDI需求分析中,我们已经了解了福特Ford EDI 的大致需求,本文将会介绍实际的Ford EDI 项目案例。
EDI部署方案
本次汽车行业T公司对接福特的EDI项目,T公司将知行之桥 EDI 系统部署在其本地服务器上,考虑到企业近期需要更换内部业务系统,在选择解决方案的时候选择Excel方案作为中间方案,后期业务系统更换完成后再进行集成。
相比于其他直接集成的方式,Excel方案稍有不同。Excel方案是EDI报文和Excel之间的数据转换。它的基本思路是:在接收到交易伙伴发来的EDI报文,并在EDI平台内部完成格式的转换之后,将数据直接呈现在Excel中。用户可以直观地看到接收到的数据;手动在Excel上录入数据之后,将Excel上传至EDI平台,EDI平台在内部做字段映射,将表格中的数据映射到固定的EDI字段上,最终生成EDI报文发送给交易伙伴。
在知行之桥EDI系统中,可以使用Excel端口完成Excel和XML的双向转换,使用Email Send/Receive端口可以发送/接收用户的Excel文件。
项目计划
我们的项目经理会提前根据项目的实际情况安排EDI部署流程和项目周期。通常情况下,由于对接交易伙伴以及EDI项目难易程度的不同,项目周期也各不相同。本次Ford EDI项目实施期间恰逢Ford方休假,使得项目周期被拉长至2个月左右。
T公司需要做的准备工作
1.准备部署EDI系统的服务器
T公司需要在本地准备自己的服务器,用于部署 EDI 系统。
2.T公司的开发人员需要配合完成的工作
由于国内和Ford之前存在时差,开发人员需要保证EDI服务器24小时正常运行,确保能够即及时收到Ford发来的EDI文件。由于本次EDI项目选择Excel方案,因此IT人员无需进行系统开发工作。
3.企业的业务人员需要配合完成的工作
业务人员需要与EDI顾问一同核对业务字段,确保T公司能够提供Ford要求的字段。其次还需要确认我们的EDI顾问设计的Excel模板,确保业务方能够清晰准确地填写此模板,根据实际业务需求,可以对模板进行适当调整。
Ford EDI项目成果
在知行之桥 EDI 系统中搭建如下工作流:
传输方式
选择OFTP2,OFTP 2可以对信息数据进行加密和数字签名,请求签名的收据,并提供高水平的数据压缩。
如果企业想使用 OFT2 连接 Ford或更改现有连接,请按照以下步骤操作:
-
根据Ford提供的参数,在企业的 EDI 系统中配置OFTP2 的连接信息。包括:Ford GEC Hub的OFTP ID(SSID)、OFTP密码、证书、DNS等。
-
填写福特 OFTP2 参数表格,并反馈给Ford。包括基本信息:5位的供应商GSDB代码、本次连接类型(新连接/更改连接)、地址、IT联系人。以及供应商的OFTP连接信息:供应商 OFTP ID(SSID、SFID)、证书、DNS提及 OFTP2软件名称等。
-
更改企业的防火墙设置,允许连接到 GEC Hub Ford,Ford将会提供IP 地址范围。
在知行之桥EDI系统中,需要在OFTP端口中配置上述提到的连接信息,如下图所示:
1.在 个人设置 界面配置T公司自己的OFTP2信息。
2.在 工作流 界面找到OFTP端口,点击并在 设置 选项卡下配置福特的OFTP2 信息。
报文标准
EDI 项目中的报文标准即交易双方约定一种文件传输格式,按照统一的格式传输业务信息,在Frod提供的EDI规范文件中可以得知,Ford当前使用的报文标准为X12,因此T公司需要具备解析和生成符合X12标准的EDI报文的能力。
数据格式转换
以接收方向为例,T公司接收来自Ford的EDI 830以及EDI 862,需要将接收到的EDI 报文转换为Excel。
Ford 发来的文件中可能会包含多个Ship To No(收货方编号),因此通过OFTP接收到文件后,需要利用Rename端口以及Branch端口对文件进行分类。如下图红色方框左侧的三个端口所示,将收货方编号分别为123B以及321A的两类数据分流到不同的流程中:
接下来需要借助红色方框中的端口实现EDI报文到Excel之间的格式转换,以EDI 830为例,T公司将会得到如下所示的包含830数据的Excel。
Ford EDI 项目测试流程
1.T公司需要在Ford GTPCM平台上创建 GTPCM需求。
扩展阅读:福特FORD EDI流程指南
2.测试环境连接测试
Ford EDI 项目分为生产和测试两个环境,首先需要与其测试环境进行连接测试。由于T公司并没有区分生产和测试环境,可以使用同一套SFID与Ford的测试和生产环境进行连接测试。
3.本地实施与业务测试
根据双方的业务需要,在知行之桥 EDI 系统上进行EDI 830、EDI 862以及EDI 856的实施。
T公司需要接收来自Ford的EDI 830、EDI 862,回复997,向Ford发送EDI 856,接收997。
4.生产环境连接测试
5.T公司需要接收来自Ford的EDI 830、EDI 862,回复997,向Ford发送EDI 856,接收997。
6.切生产
项目回顾
1.修改 Schema
福特使用的EDI报文标准是X12,版本号为00200,EDI系统中需要在软件的安装路径>www文件夹>app_data>x12_schemas 这个路径下配置相匹配的Schema文件夹,如下图所示:
2.修改GS08
本次Ford EDI 项目中,要求GS08(ID编码)的取值为 002002FORD,在知行之桥EDI系统 X12端口中可以对这个参数进行配置。
但上图所示的下拉列表中并没有Ford要求的数值,并非常用值,因此需要在后台进行手动调整。步骤如下:
- 在知行之桥 EDI 系统的安装路径下找到以下文件夹
ArcESB->workspaces->FORD->XMLToX12->port.cfg
上述路径中的X12即为工作流中的XMLToX12端口名称,如果使用到了多个X12端口,则需要修改不同的X12端口文件夹下的port.cfg文件。本项目中接收方向使用到了两个XMLToX12端口,因此需要修改这两个端口。
- 将gsgroupidentifiercode 的值修改为002002FORD,如果无法保存修改,可以使用管理员权限打开文件。
如下图所示:
了解更多 EDI 信息,请参阅: EDI 是什么?
阅读原文:汽车EDI:福特Ford EDI项目案例
相关文章:

汽车EDI:福特Ford EDI项目案例
项目背景 福特(Ford)是世界著名的汽车品牌,为美国福特汽车公司(Ford Motor Company)旗下的众多品牌之一。此前的文章福特FORD EDI需求分析中,我们已经了解了福特Ford EDI 的大致需求,本文将会介…...

正则表达式的使用实例
正则表达式的使用实例 1- 表示2- 实例 1- 表示 1, [:digit:] 表示0-9全部十个数字 //等价于 0123456789, 而不等价于[0123456789] 2, [[:digit:]] 表示任意一个数字 \{m,n\} 表示其前面的字符出现最少m次,最多n次的情况 \{3,\} 其前面的字符出…...

STM智能小车——OLED实现测速小车
目录 1. 测速模块 2. 测试原理和单位换算 3. 定时器和中断实现测速开发和调试代码 4. 小车速度显示在OLED屏 1. 测速模块 用途:广泛用于电机转速检测,脉冲计数,位置限位等。有遮挡,输出高电平;无遮挡,输出低电平接线…...
pod基本概念
目录 pod基本概念 pause容器 Pod分类: Pod容器的分类 1、基础容器(infrastructure container) 2、初始化容器(initcontainers) 3、应用容器(Maincontainer) 镜像拉取策略(im…...
SQL Server 中定时调度调用存储过程
要在SQL中定时调度调用存储过程,你可以使用SQL Server代理(如果你正在使用SQL Server数据库)。下面是一些步骤来配置SQL Server代理以定时调度调用存储过程: 打开SQL Server Management Studio (SSMS) 并连接到你的SQL Server实例…...

SpringCloud(三) Ribbon负载均衡
SpringCloud(二) Eureka注册中心的使用-CSDN博客 在SpringCloud(二)中学习了如何通过Eureka实现服务的注册和发送,从而通过RestTemplate实现不同微服务之间的调用,加上LoadBalance注解之后实现负载均衡,那负载均衡的原理是什么呢? 目录 一, 负载均衡 1.1 负载均衡原理 1.2 源…...

vue2:路由前置守卫无法获取到this.$store.state.xxx
在获取到vuex的数据时候,想在router目录下的index.js文件去获取到vuex仓库中声明的全局变量,但是通过this.$store.stote.xxx去获取的时候,报错提示:$store未定义 一、store/index.js const store new Vuex.Store({state: {// 属…...

Unity的碰撞检测(五)
温馨提示:本文基于前一篇“Unity的碰撞检测(四)”继续探讨两个游戏对象具备刚体的BodyType均为Dynamic,但是Collision Detection属性不同的碰撞检测,阅读本文则默认已阅读前文。 (一)测试说明 在基于两…...
Flutter笔记:Flutter的应用生命周期状态(lifecycleState)管理
Flutter笔记 Flutter的应用生命周期状态(lifecycleState)管理 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/…...
代碼隨想錄算法訓練營|第五十四天|300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组。刷题心得(c++)
讀題 300.最长递增子序列 看完代码随想录之后的想法 思想上很簡單,dp[i]表示i之前的包括i的numbers[i]節尾的最長上升子序列的長度 並且透過兩層迴圈,一層遍歷全部,一層遍歷到i,透過比較當前dp[i]還是dp[j] 1哪個比較大&…...

正点原子嵌入式linux驱动开发——Linux 串口RS232/485/GPS 驱动
串口是很常用的一个外设,在Linux下通常通过串口和其他设备或传感器进行通信,根据 电平的不同,串口分为TTL和RS232。不管是什么样的接口电平,其驱动程序都是一样的,通过外接RS485这样的芯片就可以将串口转换为RS485信号…...

HDFS工作流程和机制
HDFS写数据流程(上传文件) 核心概念--Pipeline管道 HDFS在上传文件写数据过程中采用的一种传输方式。 线性传输:客户端将数据写入第一个数据节点,第一个数据节点保存数据之后再将快复制到第二个节点,第二节点复制给…...

CMMI/ASPICE认证咨询及工具服务
服务概述 质量专家戴明博士的名言“如果你不能描述做事情的过程,那么你不知道你在做什么”。过程是连接有能力的工程师和先进技术的纽带,因此产品开发过程直接决定了产品的质量和研发的效率。 经纬恒润可结合多体系要求,如IATF16949\ISO26262…...

【NI-DAQmx入门】计数器
1.计数器的作用 NI产品的计数器一般来说兼容TTL信号,定义如下:0-0.8V为逻辑低电平,2~5V为高电平,0.8-2V为高阻态,最大上升下降时间为50ns。 计数器可以感测上升沿(从逻辑低到逻辑高的转变)和下降…...

Python爬取读书网的图片链接和书名并保存在数据库中
一个比较基础且常见的爬虫,写下来用于记录和巩固相关知识。 一、前置条件 本项目采用scrapy框架进行爬取,需要提前安装 pip install scrapy# 国内镜像 pip install scrapy -i https://pypi.douban.com/simple 由于需要保存数据到数据库,因…...
js解决加油站
在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 给定两个整数数组 gas 和 cost &…...

【c++|opencv】二、灰度变换和空间滤波---5.中值滤波
every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 1. 中值滤波 #include<iostream> #include<opencv2/opencv.hpp> #include"Salt.h"using namespace cv; using namespace std;voi…...
python之pytorch多进程
目录 1、创建并运行并行进程 2、使用队列(Queue)来共享数据 3、进程池 4、进程锁 5、比较使用多进程和使用单进程执行一段代码的时间消耗 6、共享变量 多进程是计算机科学中的一个术语,它是指同时运行多个进程,这些进程可以…...
sqoop 抽数报错com.mysql.cj.exceptions.WrongArgumentException: HOUR_OF_DAY: 2 -> 3
文章目录 1.sqoop 抽数报错: Caused by: com.mysql.cj.exceptions.WrongArgumentException: HOUR_OF_DAY: 2 -> 3 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructor…...

【Acwing170】加成序列(dfs+迭代加深+剪枝)题解和一点感想
本思路来自acwing算法提高课 题目描述 看本文需要准备的知识 1.dfs算法基本思想 2.对剪枝这个词有个简单的认识 迭代加深思想和此题分析 首先,什么是迭代加深呢?当一个问题的解有很大概率出现在递归树很浅的层,但是这个问题的解本身存在…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...