从 CDS 到 Fiori Elements,一套支持草稿事务的 SAP Fiori 应用究竟由哪些技术拼起来

从 CDS 到 Fiori Elements,一套支持草稿事务的 SAP Fiori 应用究竟由哪些技术拼起来
在 SAP Fiori 项目里,最容易被低估的并不是某一段 ABAP 代码,而是应用背后那条完整的技术链路。页面上看到的可能只是一张销售订单列表,一个对象页,以及编辑、保存、取消几个按钮。可当业务人员点开一张订单,修改客户、增加行项目,又临时离开浏览器时,系统必须保证尚未提交的数据不会丢失。另一个人同时打开同一张订单时,系统还要知道当前对象是否正在被编辑。等到修改完成,后台又要执行金额重算、数据校验、状态控制和持久化。这些行为并不是单靠 SAPUI5 控件堆出来的。在经典的 ABAP Programming Model for SAP Fiori 中,一套支持 Draft 的事务型应用,通常由 ABAP CDS、CDS Metadata Extension、BOPF、OData、SAP Gateway、SAP Fiori Elements 以及相应的开发工具共同完成。每一层解决的问题都不同,却又通过元数据和统一运行时紧密连接。这套架构还有一个很鲜明的特点,前端与 ABAP 后端之间采用无状态通信。浏览器不会长时间占用某个固定的 ABAP 会话,后端也不会依赖某个持续存在的服务器内存来保存整个编辑过程。编辑状态、草稿数据、业务对象状态和锁定信息,都需要被明确建模并交给框架管理。理解这些参与技术以及它们对应的开发对象,是读懂 Draft 应用架构的入口。从有状态事务走向无状态事务传统 SAP