SAP Gateway OData V4 里的关系绑定入口,深入理解 /IWBEP/IF_V4_DP_BASIC~CREATE_REFERENCE
发布时间:2026/8/29 20:52:23 作者:尧图编辑部 阅读量:1,286

在 SAP Gateway Client 里向一个 OData V4 服务发送POST请求时,表面上看,我们只是创建了一条业务数据。但只要请求体里出现类似EMPLOYEE_2_TEAM@odata.bind这样的内容,SAP Gateway V4 Runtime 面对的就不再只是一次普通的实体创建。这里同时发生了两件业务动作,一件是创建 Employee,另一件是让这个 Employee 与一个已经存在的 Team 建立导航关系。这正是/IWBEP/IF_V4_DP_BASIC~CREATE_REFERENCE存在的原因。很多刚接触 SAP Gateway OData V4 Data Provider 编程的人,会自然地把POST对应到CREATE_ENTITY,把PATCH和PUT对应到UPDATE_ENTITY。这个理解用于普通属性没有问题,但 OData 的数据模型不仅有 Property,还有 Navigation Property。实体自己的字段发生变化,与另一个实体之间的关系发生变化,在 OData Runtime 看来属于两类不同的信息。SAP Gateway Foundation 因此提供了专门的 Reference 处理机制。CREATE_REFERENCE处理的不是一个新 Team,也不是重新创建 Employee,而是建立已经存在的目标实体与当前实体之间的关系。SAP 官方文档明确说明,当创建或更新实体时,可以利用oda