@TOC
本教程依据笔者在 SAP 研究院工作多年的实战经验,打算通过 300 篇以上的文章篇幅,深刻介绍 SAP 三大支流的 OData 开发技术:
- SEGW(Gateway Service Builder)
- RAP – Restful ABAP Programming 模型
- CAP – Cloud Application Programming 模型
心愿这套教程对应用 ABAP,Java 和 Node.js 开发 OData 服务的从业人员的入门和进步都能有所帮忙。点击文末 浏览原文 取得本教程。
笔者之前的文章 SAP OData 编程指南 已经提到过,OData(Open Data) 是 SAP 旗舰级产品 S/4HANA 里宽泛应用的一种前台 Fiori 利用(SAP UI5 前端框架开发而成) 同后盾 S/4HANA ABAP 服务端通信的协定。通过这种交互方式,实现了 SAP Fiori 利用的前后端拆散。
OData(Open Data Protocol)协定是一个凋谢的工业规范,用于 RESTFul API 的设计和应用。OData 是一种协定而不是一门具体的编程语言,咱们能够用市面上风行的任何高级语言,比方 Java,Node.js,Go,Python 等实现 OData 服务。目前支流的编程语言,均提供了各自的软件开发工具包(SDK),对底层的 OData API 开发提供了封装,进步了开发人员编写 OData 服务的效率和代码品质。
在 SAP 产品里,也存在多种 OData 服务的开发方式,其中最典型的三类,就是笔者在本教程里会为大家分享和解说的内容。
同笔者的一套适宜 SAP UI5 开发人员循序渐进的学习教程相似,本教程笔者打算通过 300 篇以上的文章篇幅,别离介绍这三类 SAP 支流的 OData 服务开发技术。
SEGW – Gateway Service Builder
SEGW 是咱们在 SAP ABAP 零碎里开发 OData 服务的事务码。在这个事务码里,开发人员对 OData 服务的模型进行建模,应用 Builder 主动生成 OData 服务模型元数据类(Metadata Provider Class,简称 MPC),以及 OData 服务的业务数据提供类(Data Provider Class,简称 DPC).
应用 Restful ABAP Programming 编程模型(简称 RAP) 开发 OData 服务
SAP RAP 编程模型定义了在 SAP Business Technology Platform ABAP 环境中进行高效的端到端利用开发的一种形式,反对针对 SAP HANA 优化过的 OData 服务的开发。
SAP RAP 反对开发所有类型的 Fiori 应用程序以及 A2X 服务。SAP RAP 提供了一套技术和框架,包含用于定义语义丰盛的数据模型的外围数据服务 (Core Data Service,简称 CDS) 和围绕 CDS 的底层基础架构。
应用 SAP RAP,开发人员能够疾速和高质量的创立基于 ABAP 技术栈的 OData 服务,并应用基于 SAP UI5 的 Fiori 利用来生产这些 OData 服务。
对于 Restful ABAP Programming 编程模型,笔者已经发表过这些文章:
- 30 分钟用 Restful ABAP Programming 模型开发一个反对增删改查的 Fiori 利用
- 理解 Restful ABAP Programming 模型系列之二:Action 和 Validation 的实现
- 理解 Restful ABAP Programming 模型系列之三:云端 ABAP 利用调试
- 如何基于 Restful ABAP 模型开发并部署一个反对增删改查的 Fiori 利用
本教程将用大量的篇幅进行开展,深刻介绍这些开发步骤的细节。
应用 SAP Cloud Application Programming 编程模型开发 OData 服务
同 SEGW 和 RAP 相比,SAP Cloud Application Programming(简称 CAP) 同前两种基于 ABAP 技术栈的 OData 开发方式不同,它是一个蕴含语言、库和工具的框架,用于构建企业级服务和应用程序。SAP CAP 疏导着开发人员,沿着通过 SAP 验证的最佳实际,和大量开箱即用的重复性工作解决方案的黄金开发门路而后退。
从 SAP CAP 上面的架构图可能发现,SAP CAP 底层的编程语言是 Node.js 和 Java,并反对 Node.js 的 Express 框架和 Java 的 Spring 框架,这使得领有非 ABAP 开发技能的开发者,也能退出到 SAP 开发这个大的生态圈。应用 SAP CAP 能开发合乎企业应用规范的端到端利用,而用它来开发 OData 服务,只是牛刀小试。
笔者已经公布过一些对于 SAP CAP 的概述和具体例子的文章:
- 应用 Cloud Application Programming 模型开发 OData 的一个理论例子
- SAP Cloud Application Programming 介绍(2021 更新版)
本教程会具体介绍应用 SAP CAP 开发 OData 服务的步骤和实现细节。
具体目录
上面是本教程的 具体目录 ,通过点击文末 浏览原文 来取得本教程。
基于 SEGW – Gateway Service Builder 的开发教程
1. 在 SAP ABAP 事物码 SEGW 里创立 SAP OData 我的项目
2. 在 SAP ABAP 系统对事物码 SEGW 创立的 OData 服务进行配置并测试
3. SAP ABAP OData 服务诊断工具 /IWFND/ERROR_LOG 的应用办法
4. SAP ABAP OData 服务 Data Provider Class 的 GET_ENTITYSET 办法实现指南
5. SAP ABAP OData 服务如何反对 $filter (过滤)操作
6. 应用 Postman 工具高效治理和测试 SAP ABAP OData 服务
7. SAP ABAP OData 服务如何反对 $orderby (排序)操作
8. SAP ABAP OData 服务如何反对创立 (Create) 操作
9. SAP ABAP OData 服务如何反对删除 (Delete) 操作
10. SAP ABAP OData 服务如何反对批改 (Update) 操作
11. 应用 HTTP PUT, PATCH 以及 MERGE 申请生产 SAP ABAP OData 服务批改操作的实现及其区别
12. SAP ABAP OData 服务如何反对 $select 有选择性地仅读取局部模型字段值
13. SAP ABAP OData 服务的分页加载数据集的实现(Paging)
14. 几种 SAP ABAP OData 服务的性能评估和测试工具介绍
15. SAP ABAP OData 服务里 EntityType 和 EntitySet 的区别
16. 如何批改 SAP ABAP OData 模型,使其反对 $expand 操作
17. 如何通过 SAP ABAP OData $expand 操作在同一个 HTTP 申请中返回多个节点的数据
18. SAP ABAP OData 服务嵌套创立性能的实现步骤(Create Deep)
19. 如何应用 ABAP 程序生产 SAP ABAP OData 服务
20. 如何应用 ABAP 代码生产须要传递 CSRF token 的 OData 服务
21. SAP ABAP OData 服务的 $count 操作实现
22. SAP ABAP OData 服务的 $count 和 $inlinecount 两个操作的区别
23. 如何给 SAP ABAP SEGW 开发的 OData 服务增加 Access-Control-Allow-Origin 响应头
24. SAP 规范产品里应用 OData 服务的一些细节分享
25. 答疑 – SAP OData 框架解决 Metadata 元数据申请的实现细节,前后端组件部署在同一台物理服务器
26. SAP ABAP OData Gateway 框架里 /IWFND, /IWBEP 这些缩写代表了什么含意?
27. SAP OData 框架里的缓存 (Cache) 设计专题讲座
28. 如何应用 SAP OData 服务向 ABAP 服务器上传文件
29. 如何通过 ABAP 代码给 SAP OData 元数据削减注解
30. 如何应用 SEGW 的 redefine 性能对 SAP 规范 OData 服务进行扩大
31. SAP UI5 Fiori 利用在启动时向 ABAP 后盾发动的 OData 申请序列的程序和作用剖析
32. 更多文章正在写作中,敬请期待
应用 Restful ABAP Programming 编程模型(简称 RAP) 开发 OData 服务
正在写作中,敬请期待
应用 SAP Cloud Application Programming 编程模型开发 OData 服务
1. SAP Business Application Studio 里创立一个基于 CAP 模型的最简略的 OData 服务
2. 如何给在 SAP Business Application Studio 里开发的 OData 服务筹备测试数据