轻易云
注册体验

金蝶生产领料单同步到旺店通其他出库单:单一策略实战教程

· 系统管理员· 集成方案库· 3 次浏览· 约 4 分钟读完
旺店通金蝶云星空库存同步供应链集成单据同步轻易云

这个策略解决什么问题

在某制造企业的供应链集成场景中,ERP(金蝶云星空)记录车间生产领料,电商仓储系统(旺店通)需要按出库单维度核减委外仓库存。生产领料单与旺店通"其他出库单-生产领用"是一一对应的业务单据,但两边编码体系、仓库类型、字段语义都不一致。这条策略的目标是:把生产领料单按 5 分钟节奏增量推过去,确保委外仓库存实时减少,避免车间已领料但仓内还显示有货的尴尬。

数据流向与字段映射

数据流向:金蝶云星空(源)→ 轻易云数据集成平台(中间层)→ 旺店通·企业奇门(目标)。

源端通过金蝶的 executeBillQuery 接口(QUERY 类型)按单据编号 FBillNo 与分录 FEntity_FEntryID 抓取生产领料单,目标端调用旺店通 wdt.stockout.order.push(EXECUTE 类型)写入其他出库单。

关键字段对照:

业务含义金蝶源字段旺店通目标字段备注
外部单号FBillNoouter_no用金蝶单据号做幂等键
仓库FStockIdwarehouse_no必须映射到委外仓类型
商品编码FMaterialIdgoods_no依赖物料主数据先同步
数量FQtynum严格按分录行推送
生产订单号FMoEntrySeq业务备注字段便于对账

中间层需要做三件事:编码映射(仓库、商品)、单位换算(基本单位与库存单位)、幂等控制(outer_no 唯一)。

在轻易云上如何配置

在轻易云(Qeasy)里,这条策略的配置有几个典型要点。

第一,源端元数据用 autoFillResponse: true,平台会自动按 FBillNo + FEntity_FEntryID 拼装请求体,省掉手写脚本的麻烦。idCheck: true 用来防止重复拉取同一张单据。

第二,目标端 outer_no 直接绑定 {{FBillNo}},这是幂等的关键。轻易云客户常见的做法是把所有跨系统单据号映射集中放到一张"映射表"里管理,方便后期切换编码规则。

第三,仓库映射要特别留意:金蝶的 FStockId 不能直接落库,必须经过一个轻量查表动作,把它翻译成旺店通认可的委外仓 warehouse_no。我们一般在轻易云的"字段转换"节点里挂一个内置映射函数,规避编码硬编码在脚本里。

第四,buildModel: false 意味着目标接口的请求结构由元数据模板直接定义,轻易云会在首次运行时校验字段类型,避免把字符串塞进数字字段。

实施步骤

分三个阶段上。

第一阶段:全量触发,验证映射。 先手工触发一次全量,把最近 7 天的生产领料单全部推一遍。目的不是补历史数据,而是验证字段映射、单位换算、仓库翻译是否正确。这一阶段不要开调度,全靠工程师手动跑。

第二阶段:设置增量起点。 在轻易云的"调度起点"里把 FDate 锚定到全量验证完成的那个时点。增量策略只抓 FDate > 起点 且审核状态为已审核的记录,避免把草稿也推过去。

第三阶段:调度频率上线。 源端与目标端元数据都标注 crontab: */5 * * * *,即每 5 分钟轮询一次。生产领料通常是车间作业员录入后立即审核,5 分钟粒度足够覆盖。但要观察旺店通接口的 QPS 限制,轻易云客户常见的做法是"增量与全量双轨"——增量 5 分钟跑一次,全量作为兜底每天凌晨补一次未推送成功的单据。

踩坑复盘

坑一:仓库类型不匹配。 旺店通 wdt.stockout.order.push 要求 warehouse_no 对应的仓库类型必须是委外仓。如果金蝶里把生产领料发到普通仓库,会直接报"仓库类型不支持"。稳妥的做法是,在轻易云的映射层前置一个仓库类型校验,类型不对的单据走异常通道而不是直接报错。

坑二:outer_no 重复推送。 金蝶同一张单据如果修改后重新审核,FBillNo 不变但分录可能增删。典型错误是用 outer_no 做幂等键后,目标系统拒绝整张单。处理办法是轻易云端把 outer_no 拼接上分录主键 FEntity_FEntryID,按行做幂等。

坑三:单位不一致。 金蝶物料的基本单位可能是"件",旺店通库存单位是"箱"。中间层必须做单位换算,否则库存扣减数量差一个数量级。建议在轻易云里把单位换算表单独维护,不要散落在各策略里。

坑四:依赖顺序。 这条策略依赖物料主数据先同步(金蝶物料→旺店通商品)。如果商品编码还没建好就推领料单,旺店通会落库失败。我们在轻易云里把"物料同步"策略标为上游依赖,编排时强制先跑。

坑五:草稿单污染。 没审核的领料单被推过去后,仓内库存虚减。务必在源端查询条件里加审核状态过滤,轻易云的 autoFillResponse 支持在请求体里追加过滤条件。

适用场景与不适用场景

适用场景: 制造企业车间生产领料频次高(每日数十单以上),且电商侧需要按委外仓维度实时扣减库存的供应链集成;以及 ERP 与 WMS 单据类型严格一一对应、字段语义明确的场景。

不适用场景: 草稿单频繁反复修改的业务(建议改成按状态变更触发,而非定时轮询);以及金蝶与旺店通之间存在复杂审批流、跨组织调拨的场景,单一策略难以覆盖。

本文为原创内容,转载请注明出处:/insights/solutions/strat-wdt-kingdee-cloud-2008-n633a091f-05b10d81

评论