核心结论(已代码级验证):新POTD本地采购链路从下单到SAP记账全链贯通,0个致命缺陷。两处关键SAP落点(建在途采购PO、GR记账)由 order-tool 承担(营销服中台的订单工具服务),已代码级验证。剩余均为配置/迁移/行为对齐事项。
范式级差异:Pentana是单体系统(采购/库存/AP/GL在一处闭环);新链路是分布式——POTD薄编排(下单) + 订单中台(交易/履约) + order-tool(SAP推送补偿) + OTWB(仓储) + SAP(业财一体) + 商品中心(主数据) + GODP(总部网关)。从1个系统变成7个系统协同。
先看结论——切换后本地采购链路能带来哪些 Pentana 做不到的能力提升(均代码级可证);其后各节为得出此结论的过程证据。本节列本场景独有能力;推送失败自动补偿、CQRS 读写分离查询、多品牌多租户并行等为全链路通用能力(与总部采购共享),不再单列。
备件本地采购 LOCAL_PURCHASE(orderType=7)端到端链路,每步标注实现系统 + 代码证据。✅ 全部已验证。
SpareLocalPurchaseEMOrderStateMachine(CREATED→SUBMITTED→DELIVERY_PROCESSING→DONE)所有transition的perform全为null,approve_status字段不初始化,MSS财务审核零命中。SUBMITTED=已提交即可履约/可推SAP,非"待审"。POTD侧有UNDER_MSS_FINANCE_REVIEWING等审核状态枚举,但LOCAL的confirm/resubmit是空实现。即备件本地采购在新链路里无自动审批(对比Pentana APRT/02+HE201审批闸门)——这是真实差异,见 Gap-3。SendTypeEnum.LOCAL_PURCHASE(40,"本地采购ASN-Local")——印证 ASN-Local 即本地采购履约。orderStatus=SUBMITTED 的备件本地采购单,组装DTO走GBOP调SAP ZMM_RECEIVE_LCLPO,request_system=POTD。BSART按国家配置(注释ZNB=本地化采购),与整车ZSTO区分。LIFNR=sellerId透传(样本8100000,8开头7位)。sap.bizTypes.23.localPurGrPushCountries)写 ThirdPartyPushData,bizType=23(SEND_NOTE_TO_GR),ext含inboundTime/orderItems(actualQty/actualNGQty)。中台到此为止,不直接调SAP。ZMM_01_GRGI_INFO_SAVE(=EVO_MM_GRGI_INFO_SAVE接口族,存表ZTSD_WTS_*),逐条按sendNoteNo推送,支持部分签收actualQty/actualNGQty。三种场景:本地采购GR/国际采购GR/本地内部非转直发GR。此前6系统全景里未包含"营销服中台"。本次考古确认其4个项目各自角色——其中 order-tool 是本地采购SAP推送的真正落点。
request_system=POTD)。承担:①建在途采购PO(ZMM_RECEIVE_LCLPO)②GR记账(ZMM_01_GRGI_INFO_SAVE)。主动外调型,入站靠RocketMQ+HTTP补偿入口。boss_order_data_sync/boss_fulfillment_data_sync)→写入MySQL+ES,对外暴露查询Feign。不参与LOCAL_PURCHASE写链路。| Pentana 角色/对象 | 新链路对应 | 映射说明 |
|---|---|---|
| 澳洲子公司(买方) | buyerId→KUNNR | 子公司=买方,SAP公司代码BUKRS |
| 本地供应商 | sellerId→LIFNR | 间采平台8开头7位(样本8100000),POTD/SAP/OTWB三端一致;order-tool透传sellerId |
| 收货仓库 | WarehousePO + OTWB仓库 + WERKS/LGORT | Pentana单仓;新链路仓库经OTWB执行,映射SAP工厂/库存地点 |
| 计划员码 HE407 | 数据权限走NDR公司列表 | Pentana用计划员码闸门,新链路用公司数据权限 |
| AP录发票员/出纳 | SAP VIM/付款侧 | 财务全切SAP |
| 多品牌隔离 | tenant_id+brand_code(GEELY/ZEEKR/LYNKCO)+市场(EM/EU)+ZBRAND(G/L/Z) | Pentana无多品牌多租户概念 |
| 步 | Pentana | 新链路(已验证) |
|---|---|---|
| 0 | 主数据:AP404供应商(TRCR/BANK);IC402物料;INPR026采购价;HE407计划员 | 商品中心主数据/价格(orderType=ZF01);SupplierPO;间采平台供应商code三端一致;WERKS/LGORT配置 |
| 1 | PU202建PO(Order Type=L),PO号APO-#####,PO就是采购凭证本体 | POTD调中台createOrder建采购单(orderType=7);采购单本体在中台;order-tool后续推SAP建在途PO |
| 2 | PU802打印下达给供应商 | 建ASN履约单(SendType=40 ASN-Local);POTD的release方法对LOCAL无害(下达语义由采购单SUBMITTED+履约单承担) |
| 3 | SH204收货:Land→Receipt→Binning→ActualCost;POCT控制完成时机 | 中台下发OTWB入库单→OTWB入库完成回调中台→签收累加(状态机45部分/50已签收) |
| 4 | AP202三单匹配(PO+收货+发票),INVVARTH容差 | SAP VIM侧闭环;中台落GR待推表→order-tool推SAP GR记账(ZMM_01_GRGI_INFO_SAVE) |
| 5 | AP208授权(Payment authorised闸门) | SAP付款侧配置授权环节 |
| 6 | AP210付款批→AP212释放→AP214支票→AP207呈兑 | SAP付款侧闭环 |
| 7 | 自动GL AP批:DR费用/DR税/CR TRCR;收货过SIT→INAC | order-tool推SAP GR记账触发入账;发票/付款/GL全在SAP |
| 8 | PO关闭标志Y;PU602欠交 | 签收状态机50=已签收;部分签收45 |
原评级经代码级验证后修正。🟢已验证对齐 / 🟡配置/迁移/行为对齐 / 🔴缺失(本次:0)
| 维度 | 评级 | 核心差异(修正后) |
|---|---|---|
| 1 触发与前置主数据 | 🟡 | 供应商code三端一致✓;IC406参数体系(TRCR/INVVARTH)→SAP科目映射;WERKS/LGORT配置 |
| 2 单据创建 | 🟢 | POTD→中台建采购单已验证;采购单本体在中台是设计 |
| 3 审批流 | 🟡 | 订单中台侧备件LOCAL无审批闸门(状态机perform全null,提交即SUBMITTED);POTD侧审核状态枚举存在但LOCAL空实现。真实差异:Pentana有APRT/02+HE201审批,新链路无自动审批——需确认业务是否需要 |
| 4 状态机 | 🟢 | 签收状态机45/50已验证;状态分散在POTD+中台+order-tool+OTWB+SAP |
| 5 库存动作 | 🟢 | OTWB入库单由中台下发✓;入库回调+签收累加✓;架构设计成立 |
| 6 物流/运输 | 🟡 | 本地供应商运输是否走OTWB/data-factory(chennault-core)待确认 |
| 7 财务记账 | 🟢 | AP 应付职责迁移:Pentana 自持 AP(AP202录发票/AP208授权/AP210付款/内部GL)→ iParts 无财务能力,建PO(ZMM_RECEIVE_LCLPO)+GR(ZMM_01_GRGI_INFO_SAVE)在order-tool,发票/付款/VIM/GL全在SAP |
| 8 上下游集成 | 🟡 | 7系统分布式,集成链路稳定;order-tool有@Retryable+补偿Job兜底;建PO/GR为定时Job有延迟 |
| 9 异常处理 | 🟡 | 部分签收支持✓;order-tool补偿重推入口;mismatch机制培训 |
| 10 查询报表 | 🟡 | order-boss读侧聚合查询✓;跨系统对账取数 |
备件本地采购链路的5个关键差异点,均已代码级验证。🟢已验证对齐/设计如此;🟡真实差异,需业务决策。
BspLclpoInfoSyncJob 定时拉 SUBMITTED 状态的备件本地采购单,组装DTO走GBOP调SAP ZMM_RECEIVE_LCLPO(request_system=POTD)。BSART按国家配置(注释ZNB=本地化采购),与整车ZSTO区分。LIFNR=sellerId透传(8开头7位,样本8100000)。SpareLocalPurchaseEMOrderStateMachine(CREATED→SUBMITTED→DELIVERY_PROCESSING→DONE)所有transition perform全null,approve_status不初始化,MSS财务审核零命中。备件LOCAL提交即SUBMITTED,无审批环节。POTD侧有UNDER_MSS_FINANCE_REVIEWING枚举但LOCAL的confirm/resubmit空实现。真实差异:Pentana有APRT/02+HE201审批闸门,新链路无自动审批——需确认业务是否需要审批闸门(若需要,在POTD或中台补;若不需要,提交即生效也合理)。OtwbManager.sendSync);入库回调→签收累加;PartInventoryPO作可用量缓存是设计;库存权威在OTWB。SyncByBizTypeJob扫bizType=23待推数据→SapRemoteWrapper.pushGoodsReceipt调SAP ZMM_01_GRGI_INFO_SAVE(=EVO_MM_GRGI_INFO_SAVE族),逐条按sendNoteNo推送,支持部分签收actualQty/actualNGQty。状态机45=部分签收/50=已签收。