零售EDI:Target DVS EDI项目案例
Target塔吉特是美国一家巨型折扣零售百货集团,与全球供应商建立长远深入的合作关系,目前国内越来越多的零售产品供应商计划入驻Target。完成入驻资格审查之后,Target会向供应商提出EDI对接邀请,企业需要根据指示完成供应商EDI信息注册。
Target主要有三种业务类型,分别为Domestic Business、International Business、DVS Business。本文将为大家讲解Target DVS(Direct Vendor Ship)业务的EDI项目案例。

Target DVS EDI需求
谈及EDI需求,其实就是采用何种EDI传输协议以及报文标准,需要传输的业务单据类型有哪些。在项目初期,供应商需要与Target的相关人员确认好这些信息,这些信息可以作为项目投入的重要参考,以免因为需求不清而影响项目周期。
传输协议:AS2
AS2 是一种通用的EDI传输协议,其传输的数据应用于全球数百万企业。AS2 常应用于零售商,如亚马逊和沃尔玛。AS2 详细说明了如何使用 HTTP/S(安全超文本传输协议)通过 Internet 安全地传输数据。
报文标准:X12
X12标准是由美国国家标准协会(ANSI)于1979年特许的认可标准委员会X12(也称为ASC X12)开发和维护的。北美地区的企业更倾向于使用X12报文标准来约束合作伙伴间往来的业务数据格式。
EDI 业务单据类型
与Target建立EDI传输通道后,可以将订单、发货通知以及发票等业务信息以EDI报文的形式进行传输。Target DVS的业务场景中,需要涉及到的EDI传输类型如下:
| DVS EDI 报文 | DVS业务单据 | 传输方向 |
| 850 | 采购订单 | Target ——> 供应商 |
| 855 | 采购订单确认 | 供应商——> Target |
| 860 | 采购订单变更 | Target ——> 供应商 |
| 865 | 采购订单变更确认 | 供应商——> Target |
| 856 | 发货通知 | 供应商——> Target |
| 846 | 库存更新 | 供应商——> Target |
| 864 | 消息通知 | Target ——> 供应商 |
集成方案
知行之桥EDI系统能够实现与企业内部ERP系统的集成,支持中间数据库、Webservice、API等多种方式,在本次对接Target DVS的EDI项目中,企业选择使用API方案,传输Json格式的文件。
通常情况下,会利用知行之桥EDI系统自带的API端口将收到的JSON文件写入数据库中,然后处理收到的这些数据,这种方式需要主动将JSON文件POST到知行之桥的API服务器上,由API端口写入数据库中,接下来则按照数据库方案生成EDI报文即可。
如何基于知行之桥EDI系统对接Target DVS?
项目成果

在知行之桥EDI系统中搭建如上所示的工作流,即可满足Target DVS的对接需求。
在知行之桥EDI系统当中,我们已经将开源工作流集成进来,用户可以在 工作流 界面右上角点击 添加>示例工作流程,即可获取针对Target DVS的示例工作流,点击并拖拽至左侧空白工作区即可看到如上图所示的界面。
EDI测试
基于知行之桥EDI系统完成工作流的搭建之后,需要进行EDI测试。测试流程分为连接测试和业务测试,连接测试主要验证AS2传输通道的搭建,业务测试主要验证EDI报文的结构和内容是否满足交易双方的业务要求。
连接测试
所有对接Target的用户在开始EDI测试之前需要先在Partner Online 平台完成供应商的EDI信息注册,注册流程可参考:Target EDI 对接详解 – Partner Online EDI 注册
注册完成之后,需要在ECGrid平台自助完成与Target之间的AS2连接测试,确认已成功搭建了EDI传输通道。有关在ECGrid平台搭建AS2连接通道可以参考文章:Target EDI 对接详解 – ECGrid AS2 连接
DVS业务测试
AS2连接测试之后,接下来需要进行EDI业务测试,主要针对以下报文进行测试和验证:
1.供应商收到来自Target的4个850采购订单
2.供应商收到来自Target的1个860采购订单变更;
3.供应商发送3个855给Target,因为有1个850是重复的;
4.供应商发送1个865给Target;
5.供应商发送1个846给Target;
6.供应商发送3个856给Target,分别是UPSN/NS ,FDEG/HD和FDEG/NS。
项目回顾
Target 塔吉特的4种商品编码
Target塔吉特共有4种商品编码:TCIN、DPCI、UPC、SKU,其中DPCI、UPC和TCIN在Target系统中是唯一的ID。在target.com中查看商品时,在任一个商品中下拉进入到商品详情页(Item/Detail/Specifications)中都可以看到该商品的TCIN、UPC和DPCI这3种商品编码,唯一对应到当前商品。
了解更多 EDI 信息,请参阅: EDI 是什么?
相关文章:
零售EDI:Target DVS EDI项目案例
Target塔吉特是美国一家巨型折扣零售百货集团,与全球供应商建立长远深入的合作关系,目前国内越来越多的零售产品供应商计划入驻Target。完成入驻资格审查之后,Target会向供应商提出EDI对接邀请,企业需要根据指示完成供应商EDI信息…...
AWS安全性身份和合规性之AWS Firewall Manager
AWS Firewall Manager是一项安全管理服务,可让您在AWS Organizations中跨账户和应用程序集中配置和管理防火墙规则。在创建新应用程序时,您可以借助Firewall Manager实施一套通用的安全规则,更轻松地让新应用程序和资源从一开始就达到合规要求…...
R实验 随机变量及其分布
实验目的: 掌握常见几种离散性随机变量及其分布在R语言中对应的函数用法;掌握常见几种连续性随机变量及其分布在R语言中对应的函数用法;掌握统计量的定义及统计三大抽样分布在R语言中对应的函数用法。 实验内容: (习题…...
rapidssl泛域名https600元一年
泛域名https证书也可以称之为通配符https证书,指的是可以用一张https证书为多个网站(主域名以及主域名下的所有子域名网站)传输数据加密,并且提供身份认证服务的数字证书产品。RapidSSL旗下的泛域名https证书性价比高,申请速度快,…...
月薪5万是怎样谈的?
知识星球(星球名:芯片制造与封测技术社区,星球号:63559049)里的学员问:目前是晶圆厂的PE,但是想跳槽谈了几次薪水,都没法有大幅度的增长,该怎么办?“学得文武…...
linux下宝塔负载100%解决方法
今天发现服务器宝塔面板负载居然是100% 但是cpu 和内存其实并不高 通过命令查看主机 uptime 中load average 居然高达18.23 看来负载是真的高了 通过vmstat 看看具体问题 procs: r 表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数…...
【C++】STL快速入门基础
文章目录 STL(Standard Template Library)1、一般介绍2、STL的六大组件2.1、STL容器2.2、STL迭代器2.3、相关容器的函数vectorpairstringqueuepriority_queuestackdequeset, map, multiset, multimapunordered_set, unordered_map, unordered_multiset, …...
面向对象编程的魅力与实战:以坦克飞机大战为例
新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、面向对象编程的引言 二、理解面向对象编程与面向过程编程的差异 三、创建类与对象&…...
二叉树——堆的实现
一.前言 前面我们讲解了二叉树的概念以及二叉树的存储结构:https://blog.csdn.net/yiqingaa/article/details/139224974?spm1001.2014.3001.5502 今天我们主要讲讲二叉树的存储结构,以及堆的实现。 二.正文 1.二叉树的顺序结构及实现 1.1二叉树的顺序…...
【Spring】DynamicDataSourceHolder 动态数据源切换
【Spring】DynamicDataSourceHolder 动态数据源切换 常见场景常见工具一、AbstractRoutingDataSource1.1、 定义 DynamicDataSourceHolder1.2、 配置动态数据源1.3、 在Spring配置中定义数据源1.4、在业务代码中切换数据源 二、Dynamic Datasource for Spring Boot2.1. 添加依赖…...
LeeCode 3165 线段树
题意 传送门 LeeCode 3165 不包含相邻元素的子序列的最大和 题解 考虑不含相邻子序列的最大和,在不带修改的情况下容易想到,以最后一个元素是否被选取为状态进行DP。从线性递推的角度难以处理待修改的情况。 从分治的角度考虑,使用线段树…...
修改元组元素
自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 场景模拟:伊米咖啡馆,由于麝香猫咖啡需求量较大,库存不足,店长想把它换成拿铁咖啡。 实例08 将麝香猫…...
【模版方法设计模式】
文章目录 模板方法设计模式模板方法的设计原则模板方法设计模式组成部分代码实现抽象类实现具体实现类执行 模板方法设计模式 模版方法设计模式(Template Method Pattern)是一种行为设计模式,它定义了一个操作中的算法骨架,而将一…...
rust语言初识
程序设计实践课上水一篇ing 来源:rust基础入门-1.初识rust-酷程网 (kucoding.com) rust作为一名新兴语言,与go又有些许不同,因为它的目标是对标系统级开发,也就是C、C这两位在编程界的位置。比如我们最常用的windows系统&#x…...
知识图谱数据预处理笔记
知识图谱数据预处理笔记 0. 引言1. 笔记1-1. \的转义1-2. 特殊符号的清理1-3. 检查结尾是否正常1-4. 检查<>是否存在1-5. 两端空格的清理1-6. 检查object内容长时是否以<开始 0. 引言 最近学习知识图谱,发现数据有很多问题,这篇笔记记录遇到的…...
Unity面试八股文之基础篇
文章目录 前言1. Unity的生命周期加载第一个场景Editor在第一次帧更新之前帧之间更新顺序协程销毁对象时退出时 2. Unity 协程和线程,进程的区别3. 本地坐标系 世界坐标系4. 碰撞器和触发器的区别后话 前言 开设这个栏目的博文会写一些有关unity的面试题目,在面试的…...
HTTPS能否避免流量劫持?如何实现HTTPS
在当今数字化时代,网站安全已经成为企业和个人的头等大事。随着网络犯罪和数据泄露的增加,保护您的网站免受潜在威胁比以往任何时候都更加重要。网站安全的一个关键组成部分是HTTPS,它代表着安全的超文本传输协议。HTTPS是标准HTTP协议的安全…...
簡述Vue 2.0 响应式数据的原理
Vue 2.0 响应式数据的原理主要基于以下几个关键点: 数据劫持与Object.defineProperty: Vue 2.0 使用 Object.defineProperty 方法来劫持对象的属性,为其添加 getter 和 setter 方法。当数据被访问或修改时,这些 getter 和 setter …...
Kafka线上集群部署方案怎么做?no.6
专栏前面几期内容,我分别从Kafka的定位、版本的变迁以及功能的演进等几个方面循序渐进地梳理了Apache Kafka的发展脉络。通过这些内容,我希望你能清晰地了解Kafka是用来做什么的,以及在实际生产环境中该如何选择Kafka版本,更快地帮…...
vscode 的 AI 协助插件 Tabnine / Codeium
4.1、Tabnine 描述:Tabnine 是一款基于深度学习技术的代码自动补全工具。该插件支持多种编程语言,包括 Python、JavaScript、TypeScript、Java 和 Go 等。它可以根据您输入的代码段和上下文信息,预测并推荐可能的代码补全选项,从而…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会
在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...
