在 SAP S/4HANA On-Premise 系统里做集成开发时,经常会遇到一种很现实的需求。某个外部系统需要读取 SAP 里的业务数据,数据已经存在于标准数据库表中,我们并不打算从零开发一套复杂应用,只希望尽快形成一个结构清晰、可以被 Postman、SAP Business Application Studio、SAPUI5 或其他系统消费的 OData API。
这次拿 SAP EWM 的标准存储仓位表/SCWM/LAGP来做这件事。
/SCWM/LAGP保存 EWM 的 Storage Bin 主数据。SAP 官方关于 Storage Bin Migration 的文档也明确提到,EWM 的存储仓位数据最终存储在/SCWM/LAGP中。
按照传统思路,我们可能会手工创建 CDS View,再创建 Projection View、Behavior Definition、Behavior Implementation、Service Definition、Service Binding,一层一层把完整的 RAP 技术栈搭出来。
这当然没有问题,而且在复杂业务中依然是更可控的做法。
可如果当前目标只是快速得到一个 RAP Web API,ADT 已经提供了一条自动化程度很高的路径,也就是Generate ABAP Repository Objects。
SAP 官方文档目前把这一功能定义为OData Web API Service wizard。它能够以现有数据库表为起点,生成一个完整的 RAP Business Object