用途:指导在 ABAP 中创建与消费 OData 服务,涵盖基于 RAP(V4/V2)与基于 SEGW(V2)两种方式,并包含 Fiori 注解与故障排查。
主要能力:
- RAP 方式(推荐):架构为 CDS View Entity → Behavior Definition → Service Definition → Service Binding,最终生成 OData V4/V2 端点。服务定义用 define service 暴露投影视图(C_ 前缀)与值帮助视图(I_*),别名即 OData 实体集名。服务绑定选择协议类型:OData V4 - UI、V2 - UI、V4 - Web API、V2 - Web API、InA - UI。在 ADT 中新建 Service Binding,选择服务定义、绑定类型,激活后 Publish 注册,Preview 打开 Fiori Elements 预览。
- SEGW 方式(仅 Standard ABAP,ABAP Cloud 不可用):在 SEGW 事务建项目,定义实体类型、属性、导航属性,生成 MPC/DPC 类,实现 GET_ENTITYSET 等方法,在 /IWFND/MAINT_SERVICE 注册,用 /IWFND/GW_CLIENT 测试。
- 消费外部服务:ABAP Cloud 中通过通信安排获取 HTTP 客户端(cl_http_destination_provider=>create_by_comm_arrangement),或用 OData Client Proxy(/iwbep/cl_cp_client_proxy_fact=>create_v4_remote_proxy)构建读写请求。
- Fiori 注解:@UI.headerInfo、@UI.lineItem、@UI.selectionField、@UI.identification、@Consumption.valueHelpDefinition 等控制界面行为。
V4 与 V2 差异:V4 默认 JSON、支持深操作、绑定/非绑定动作函数、lambda 过滤、$apply 聚合与完整草稿;V2 默认 XML、批量 multipart、功能导入、基础过滤。新开发推荐 V4。
限制与排查:SEGW 不适用于 ABAP Cloud;常见错误如 /IWBEP/CX_MGW_BUSI_EXCEPTION、403、404、$metadata 为空、草稿失效、深创建失败、CX_WEB_HTTP_CLIENT_ERROR,需检查实现、ICF 节点、授权、服务注册、草稿表与通信安排。具体收费与平台细节暂未提供。