采购退货单对接策略实战:从吉客云到金蝶云星空的退货数据集成
吉客云金蝶云星空采购退货单同步供应链集成轻易云增量同步
这个策略解决什么问题
在某零售/制造企业的供应链集成项目中,采购退货是高频但又最容易出岔子的环节:吉客云作为前端履约与出库系统,金蝶云星空作为后端财务与库存账系统,两边都要落账。我们这次只解决一件事——把吉客云的采购退货出库单(inouttype=205)一对一推到金蝶云星空的 PUR_MRB 采购退料单,并自动提交审核,让两边账务当天对得上。
数据流向与字段映射
数据流向:吉客云(出库单 inouttype=205)→ 轻易云数据集成平台(中间层)→ 金蝶云星空(PUR_MRB)。
主表核心字段对照:
| 源字段(吉客云) | 目标字段(金蝶云星空) | 映射类型 | 转换规则 |
|---|---|---|---|
| goodsdocNo | FBillNo | DIRECT | {{goodsdocNo}} |
| inOutDate | FDate | TRANSFORM | DATE_FORMAT(inOutDate,'%Y-%m-%d') |
| vendCustomerCode | FSupplierID | DIRECT | {{vendCustomerCode}} |
| companyCode | FStockOrgId / FSettleOrgId / FPayOrgId | DIRECT | {{companyCode}} |
| goodsDocDetailList | FPURMRBENTRY | COLLECTION | 整数组引用 |
明细行核心字段对照(由平台按 buildModel 约定绑定):
| 源字段 | 目标字段 | 业务说明 |
|---|---|---|
| goodsNo | FMaterialId | 物料编码 |
| quantity | FQty | 实退数量 |
| unitName | FUnitId | 计量单位 |
| batchNo | 批次字段 | 启用批次管理时必传 |
| productionDate / expirationDate | 生产日期 / 效期 | 批次追溯 |
| transHasTaxPrice / transNoTaxPrice | FTaxPrice / FPrice | 含税/不含税单价 |
| taxRate | FEntryTaxRate | 税率 |
| recId | FSrcEntryId | 源单分录 ID,便于溯源 |
主表 warehouseCode 需传递至每条明细行的 FStockId,表示退料仓库。
在轻易云上如何配置
在轻易云数据集成平台(Qeasy)里,这条策略被拆成两个节点:Source(吉客云,QUERY) 和 Target(金蝶云星空,EXECUTE),通过中间层完成字段映射与执行参数注入。
- Source 配置要点:接口
erp.storage.goodsdocout.v2,方法 POST,固定过滤inouttype=205,分页 pageSize=100;增量窗口使用_function from_unixtime(({{LAST_SYNC_TIME}}-86400),'%Y-%m-%d %H:%i:%s')起步、{{CURRENT_TIME}}-86400截至,含 1 天缓冲,避免边界丢单。 - Target 配置要点:接口
batchSave,方法 POST;关键执行参数固定为 FormId=PUR_MRB、Operation=batchSave、IsAutoSubmitAndAudit=true、IsVerifyBaseDataField=true、SubSystemId=21。 - 编码映射集中管理:物料、供应商、仓库、组织、单位这几类基础资料编码,全部走轻易云的「编码映射集中管理」能力,先确保吉客云档案与金蝶档案已同步,再做单据同步——这是客户现场最常见的稳态做法。
实施步骤
我们一般把这套集成分成三段推进:
- 增量起点:先用一次全量触发把历史退货单补齐,明确
LAST_SYNC_TIME基线。在轻易云里通常手动跑一次 Source,把窗口拉到上线日期之前。 - 全量触发:上线当晚执行一次全量补传,验证编码映射、批次字段、税价字段在目标侧全部能落库。
- 调度频率:源端 crontab 设为
*/20 7-23/4 * * *(业务时段 4 小时内每 20 分钟一次),目标端 crontab 设为13-59/30 7-23 * * *(业务时段每 30 分钟一次),形成「源端拉取 + 目标端执行」的错峰节奏。
稳妥的做法是先用「增量 + 全量双轨」跑两周,确认无重复单、无丢单后再收紧调度窗口。
踩坑复盘
- 典型错误是把 inOutDate 直接塞给 FDate:源端是 datetime 字符串,金蝶侧只认
YYYY-MM-DD,必须用DATE_FORMAT转一次,否则整张单被目标端拒收。 - warehouseCode 只挂在主表:金蝶 PUR_MRB 的明细行也要仓库,不要忘了循环赋值给每条 FPURMRBENTRY 的 FStockId。
- 基础资料不同步就先推单:物料、供应商、仓库编码在金蝶侧不存在时,IsVerifyBaseDataField=true 会直接报错。先把基础资料同步策略跑稳,再来推单。
- 批次/效期字段缺失:启用批次管理的物料,
batchNo / productionDate / expirationDate必须三件套齐全,缺一个目标端就校验不过。 - 自动审核被忽略:本策略 IsAutoSubmitAndAudit=true,意味着保存即审核;如果上游单据数据脏,会导致金蝶侧生成一堆已审核的错误单。建议上线初期先临时改成 false,人工复核一周再放开。
适用场景与不适用场景
适用:吉客云作为前端出库系统、金蝶云星空作为后端财务库存账,需要把采购退货实时/准实时入账并自动审核的企业。 不适用:退货需要人工修改后再入金的场景(自动审核会把脏数据直接审掉);金蝶侧要求严格按应付核销而非退料单入账的场景(应走应付单而非 PUR_MRB);以及物料档案未在两端打通的环境。
本文为原创内容,转载请注明出处:https://www.qeasy.cloud/insights/solutions/strat-p2ea595-kingdee-cloud-3635-205v2-afde4e4d