用 ADT 一键生成 RAP OData V4 Web API,从 /SCWM/LAGP 到可消费服务的完整实践

用 ADT 一键生成 RAP OData V4 Web API,从 /SCWM/LAGP 到可消费服务的完整实践 最近在 SAP S/4HANA On-Premise 系统里做接口开发时,我重新体验了一遍 ADT 里的Generate ABAP Repository Objects。这个功能很容易被理解成一个普通的代码生成器,实际用下来会发现,它已经把 RAP 开发中相当长的一段机械工作压缩进了一个 Wizard。这次场景很具体,我们希望把 SAP EWM 的标准 Storage Bin 持久化表/SCWM/LAGP暴露成一个基于 OData V4 的 Web API。传统做法下,我们通常需要自己创建 CDS Data Definition,再创建 RAP Behavior Definition,继续准备 Projection、Service Definition、Service Binding,逐个检查对象之间的依赖关系,再处理 Gateway 发布。对象本身并不难,真正消耗时间的是大量重复操作,以及 Repository Object 名称、引用关系和激活顺序。ADT 提供的Generate ABAP Repository Objects正好解决了这类问题。SAP 当前官方文档把它定义得很明确,OData Web API ServiceWizard 可以直接基于一个已经存在的 database table 创建完整的 RAP Web API。当前版本能够生成 CDS view entity、CDS projection view entity、RAP behavior definition、projection behavior definition、access control、behav