轻易云
注册体验

商品主数据跨系统同步方案:从 ERP 到电商 WMS 的字段映射与调度设计

· 谢锴斌· 产品文档· 17 次浏览· 约 4 分钟读完

功能概览

轻易云数据集成平台(Qeasy DataHub)的「商品主数据同步方案」用于解决企业内 ERP 与电商仓储系统之间商品 SKU 的双向/单向同步问题。我们设计这个功能的初衷是:商品主数据通常分散在 ERP、电商中台、仓储 WMS 等多个系统中,手工维护不仅效率低,而且极易因字段口径不一致导致库存、价格、订单履约异常。通过平台可视化的方案编辑器,用户可以以「源端对象 → 目标端对象」的视角快速搭建同步链路,平台负责处理接口调用、字段映射、数据转换、调度编排与异常告警等底层细节。

典型使用场景是:企业已使用 ERP 管理物料编码、采购价、规格、单位、品牌等基础资料,需要将这些数据按 SKU 的口径同步到电商仓储系统中,以支撑后续的采购入库、订单发货和库存对账。在同步过程中,经常会遇到"源端字段含义与目标端不一致"、"需要按目标端规则清洗数据"等问题,平台通过四种映射类型(直接映射 CONSTANT/DIRECT、表达式 TRANSFORM、编码映射 COLLECTION)覆盖了绝大多数场景。

连接器生态全景图:8 大系统类型 × 30+ 代表系统

使用场景

本方案以「ERP 商品(Ptype) → 电商 WMS 商品(ItemSKU)」的单向同步为例,演示一个典型的商品主数据集成链路:

  • 源端:ERP 系统中的物料/商品主数据,通过 /GetPtypeInfo 接口获取,支持 QUERY 模式并通过 queryParams 传入过滤条件;响应字段启用 autoFillResponse,无需在请求中显式声明字段。
  • 目标端:电商 WMS 的商品接口 /open/itemsku/upload,数据以 items 为根节点批量上传。
  • 同步模式:支持全量与增量,由源端的 queryParams 决定;推荐源端每 3 分钟轮询一次(7:00–21:00),目标端在源端之后执行,避免读到未就绪的数据。
  • 典型映射:商品编码直接取物料编码 EntryCode;款式编码 i_id 需要对全称 FullName 执行 REPLACE(..., ' ', '') 去空格;采购价 purchase_price 取 PreBuyPrice1;批次字段 batch_enabled 固定为常量 "0"。

配置说明

在轻易云数据集成平台中搭建该方案时,核心配置包含三类:

1. 接口与请求配置 源端选择 QUERY 模式,填写接口地址、入参模板,并启用 autoFillResponse。目标端选择 WRITE 模式,配置 dataKey=items 作为批量上传的根字段,其余字段在字段映射表中逐项配置。

2. 字段映射表 字段映射表是方案的核心,每一行描述「目标字段 ← 源字段/规则」的对应关系。平台内置四种映射类型:

  • DIRECT:直接取值,如 sku_id ← EntryCode、name ← FullName、unit ← UnitName。
  • CONSTANT:固定常量,如 batch_enabled ← "0",用于在目标端写入与源端无关的固定值。
  • TRANSFORM:表达式或函数转换,如 i_id ← REPLACE({{FullName}}, ' ', ''),平台支持 SQL 风格表达式、字符串函数、数学运算、CASE WHEN 条件分支,以及 FROM_UNIXTIME、LEFT、LOCATE 等常用函数。
  • COLLECTION:编码映射,当源端只提供分类 ID 或单位编码时,可关联一个独立的编码映射方案,通过 _findCollection 或 _mongoQuery 进行跨方案联查,把内部 ID 翻译成目标端期望的中文名称。

3. 调度配置 源端推荐 0-59/3 7-21 * * *(每 3 分钟,7–21 点),目标端按需调度并晚于源端启动,确保源端数据已落库后再读取。

注意事项

  1. i_id 去空格的健壮性:当前方案使用 REPLACE 去除空格,若源端 FullName 包含全角空格、制表符等不可见字符,建议追加 TRIM 或正则清洗,避免目标端出现重复款式编码。
  2. 重复字段的覆盖规则:若同一目标字段在映射表中出现多次(例如本方案中 purchase_price 先定义为常量 "0",再定义为 {{PreBuyPrice1}}),平台按"后者覆盖前者"生效,实际取值以最后一行为准。建议保持一一对应,避免歧义。
  3. 未映射字段的处理:本方案中的 Volume(体积)、BoxPackQty(箱装数量)等源端字段在目标端接口未提供对应字段,故未映射。若目标端后续支持体积字段,可在不改动其他逻辑的前提下补一行 DIRECT 映射。
  4. 调度时序:源端调度为 * * * * * 而目标端晚于源端执行时,务必确认源端调度窗口已覆盖目标端的首次执行时间,否则目标端会读到空结果。
  5. 编码映射的扩展方式:若未来源端改为只输出 CategoryId/UnitId,不要直接修改本方案,而应新增一个独立的「商品分类编码映射」方案,通过 COLLECTION 类型关联,在数据链路层面保持解耦,便于复用与维护。
本文为原创内容,转载请注明出处:https://www.qeasy.cloud/insights/product-docs/doc-erp

评论