从 DDIC 结构到 OData Complex Type,深入理解 /IWBEP/IF_MGW_ODATA_CMPLX_TYPE 与 BIND_STRUCTURE

发布时间:2026/8/22 10:39:39
从 DDIC 结构到 OData Complex Type,深入理解 /IWBEP/IF_MGW_ODATA_CMPLX_TYPE 与 BIND_STRUCTURE 在一个经典的 SAP Gateway 项目里,进入MPC或MPC_EXT的DEFINE方法,经常能看到一批名字很接近的接口,/IWBEP/IF_MGW_ODATA_ENTITY_TYP、/IWBEP/IF_MGW_ODATA_PROPERTY、/IWBEP/IF_MGW_ODATA_ENTITY_SET,还有今天要讨论的/IWBEP/IF_MGW_ODATA_CMPLX_TYPE。它们看起来都属于 Metadata Model 的技术细节,但/IWBEP/IF_MGW_ODATA_CMPLX_TYPE很特别。它处理的不是可以通过 URL 独立访问的一条业务实体,而是一块嵌入在其他数据结构内部的结构化数据。SAP 官方给这个接口的定义非常简洁,/IWBEP/IF_MGW_ODATA_CMPLX_TYPE代表一个 OData Complex Type 对象。当前 SAP Gateway Foundation 文档依然保留了这个接口,并列出了BIND_STRUCTURE、CREATE_PROPERTY、GET_PROPERTY、CREATE_CMPLX_TYPE_PROPERTY、SET_IS_ABSTRACT、ADD_AUTO_EXPAND_INCLUDE等模型 API。真正理解这个接口,关键并不在于记住方法名称