我们正在做的事情很具体,S/4HANA 后端已经能够发布产品主数据相关的 Enterprise Event,事件经过 Integration Suite、Event Mesh、Advanced Event Mesh,再进入 Kafka Event Broker,消费系统按照 product type 订阅不同的 material event。链路跑通以后,业务方很快发现一个缺口,事件能够告诉外围系统某个物料发生了变化,标准 API 也能把产品主数据取出来,但我们自定义在 material master 上的字段没有出现在 API 响应里。
这类问题在 S/4HANA 项目里非常常见。产品主数据、业务伙伴、销售订单、采购订单这些对象,标准事件往往承担通知职责,真正的上下文数据通常要通过对应 API 拉取。SAP 官方对 business event 的描述也是围绕业务对象变化通知展开,事件来源系统把业务对象状态变化发布出去,消费方再根据 key 去读取上下文数据。SAP Business Accelerator Hub 则承担 API、事件、集成内容的发现入口角色。(SAP Help Portal)
放在 Clean Core 语境里,我们不应该为了一个字段去复制标准 API,也不应该直接改