笔者之前写过的五套 SAP 技术开发教程:
- 零基础快速学习 ABAP
- 一套适合 SAP UI5 开发人员循序渐进的学习教程
- SAP OData 开发实战教程 - 从入门到提高
- SAP Fiori Elements 从入门到进阶
- SAP Fiori 知识点大全
笔者从 2007年计算机专业硕士毕业之后,就一直深耕 SAP 技术领域至今。从技术体系的完备性这个方面来看,上述五套教程,已经涵盖了当今 SAP 主流开发技术的大部分:后台的 ABAP 技术栈,前台的 SAP UI5 & Fiori Elements,前后台通过 OData 协议交互。
笔者上述五套 SAP 开发技术教程,尚未涵盖的内容,一块是 RAP 即 Restful ABAP Programming Model,另一块是 SAP BTP 开发的全面系统介绍。
为什么学习 SAP ABAP CDS View 如此重要?
从下面这张图可以看出,Restful ABAP Programming Model 的概念和 SAP BTP 平台 ABAP 编程环境里的开发,都包含了部分 ABAP CDS View 的内容。换言之,学习 ABAP CDS View,是掌握 RAP 和 SAP BTP ABAP 编程环境开发技术的基础。
SAP 的旗舰级产品是 SAP S/4HANA 和 SAP S/4HANA Cloud. 经历过 SAP ERP 时代的朋友们,一定对 SAP ERP 底层数以万计的数据库表的数量印象深刻。而 SAP S/4HANA 作为一款能够同时在一套系统里运行 OLTP 和 OLAP 程序的企业管理软件,其后台模型在从 ERP 时代升级过来的这些传统数据库表之上,封装了一层所谓的 VDM(Virtual Data Model), 中文名称为虚拟数据模型。
VDM 使得 SAP S/4HANA 底层持久层的业务数据和应用层的业务逻辑,能够被 SAP S/4HANA 各种消费终端消费,比如 Fiori UI,OData 服务,Web Service,Restful API 等等。
VDM 技术的核心,正是 ABAP CDS View!
OLTP(Online Transaction Processing,即联机事务处理)和 OLAP(Online Analytical Processing,即联机分析处理),在传统的企业级软件中,一般是单独实现于不同的系统中。
在企业级系统中, OLTP 通常被用于处理日常事务,如订单录入、支付处理、库存管理等操作。企业在进行大批量数据输入时,需要保证每笔交易的数据准确性与一致性,因此 OLTP 系统强调事务处理的完整性与高并发性能
。
SAP ERP 擅长的就是 OLTP 事务处理。
与之相对应的 OLAP 则主要关注对历史数据的整合、汇总与分析。OLTP 主要目的是为决策层提供复杂数据查询和多维度分析能力,帮助企业洞察运营趋势与市场变化。
比如企业高层管理者往往依赖 OLAP 系统获取详尽的报表与图表信息,从而制定未来的战略规划。
技术层面上, 传统 OLAP 系统的数据结构往往采用多维数据模型,并经过预先汇总处理,以支持复杂查询需求。数据仓库(Data Warehouse)是 OLAP 体系的核心,企业将从 OLTP 系统中提取来的原始数据经过清洗、转换与加载(ETL)后,存入数据仓库,再利用专门的分析工具进行多维查询。通过数据仓库,决策者可以直观地看到各类指标的历史演变趋势,进行钻取分析与交叉比对,从而更好地把握市场脉搏。
SAP S/4HANA 能够将 OLTP 和 OLTP 的处理能力,整合在同一个系统内完成,ABAP CDS View 功不可没。
学习 ABAP CDS View 的开发技术,体会其背后的设计理念,也就掌握了 SAP S/4HANA 底层数据模型的设计精髓。
学习 SAP ABAP CDS View 的前置知识
学习 ABAP CDS View 之前不需要掌握 ABAP 编程语言的开发知识。CDS View 首先也是一种数据库视图技术,但它是一种特殊的、经过 SAP 增强和包装的数据库视图,比如能够为视图添加注解,这些注解实际上就是一种元数据,即描述视图本身的数据,能够被各种 SAP 工具和框架解析,生成各种 Design Time(开发时)和 Run Time(运行时)资源。
不过大多数学习者,包括笔者在内,都是先有 ABAP 编程的基础,然后再开始进行 ABAP CDS View 的学习。
学习本教程,大家需要有一个可以登录的 ABAP 系统用来做练习。
学习工具是 SAP ABAP Development Tool,在 SAP 官网可以免费下载。
工具安装完毕之后,启动,打开 Project Explorer,使用新建菜单,选择 New->Project...
, 新建一个项目。
选择 ABAP Project,这代表连接一个 ABAP On-Premise 系统:
如果大家本地电脑已经安装过 SAPGUI 并且已经使用过 SAPGUI 登录过 ABAP 系统,那么这里 ABAP Development Tool 就会把 SAPGUI 里的系统列表自动带出来,如下图所示。
也可以点击 new system connection 的超链接,直接维护一个新的系统登录记录:
维护完登录系统后,登录到系统里,就可以开始跟着本教程的步骤做练习了。
本教程下一篇文章,会正式开始 ABAP CDS View 开发技术的讲解。