当前位置:网站首页>SAP ABAP OData 服务如何支持 $orderby (排序)操作试读版
SAP ABAP OData 服务如何支持 $orderby (排序)操作试读版
2022-08-01 09:34:00 【汪子熙】
正如本教程的开篇介绍文章SAP OData 开发教程 - 从入门到提高(包含 SEGW, RAP 和 CDP)所提到的,SAP OData 服务开发,从实现技术上来说,可以分为三大类。因此本教程也分为三大部分,分别进行介绍。本文是本教程的文章目录。
作者简介
Jerry Wang,2007 年从电子科技大学计算机专业硕士毕业后加入 SAP 成都研究院工作至今。Jerry 是 SAP 社区导师,SAP 中国技术大使。在长达 15 年的 SAP 标准产品开发生涯里,Jerry 曾经先后参与 SAP Business ByDesign, SAP CRM, SAP Cloud for Customer, SAP S/4HANA, SAP Commerce Cloud(电商云)等标准产品的研发工作。
Jerry 对 SAP OData 服务的开发,测试,发布,部署,测试,及基于各种不同 SAP 技术实现的 OData 服务的幕后技术实现细节和使用场合,均有着深入的研究。
基于 SEGW - Gateway Service Builder 的开发教程
使用 Restful ABAP Programming 编程模型(简称 RAP) 开发 OData 服务
- 正在写作中,敬请期待
使用 SAP Cloud Application Programming 编程模型开发 OData 服务
- 正在写作中,敬请期待
序言
本文详细介绍了 SAP ABAP OData 服务如何支持 $orderby (排序)操作,以一个图书管理的 OData 服务实现为例,阐述了如何基于图书的名称和作者名称这两个字段进行排序操作。
我们在本教程第一篇文章 1. 在 SAP ABAP 事物码 SEGW 里创建 SAP OData 项目 里创建的 OData 模型,在 book_name 和 author_name 这两个字段的 sort 属性打上了勾,意思是这两个属性需要支持 OData 标准协议的 $orderby 操作即排序操作。

为了更清楚的看到我们的图书管理 OData 服务,在支持了 $orderby 操作之后的运行时效果,我们再往之前存储图书信息的 ZBOOKS 数据库表里添加一行测试数据:

我们如果不加任何参数,直接通过 OData 服务读取系统所有的 book 数据,那么返回给消费者的 book 数据的顺序,和上图数据库表里记录的顺序一致,这三条记录的 Author,依次为 Jerry,Tom 和 Arena.
我们使用本教程之前步骤提到的 Postman,在请求所有图书数据的 OData 请求的 HTTP 头部字段里,添加一个名叫 Accept 的字段,值为 application/json.
这样,点击 Send 按钮之后,我们开发好的 OData 服务,会以 JSON 格式返回数据。
点击屏幕右下角的按钮,将这些 JSON 数据粘贴到系统剪切板里。
然后粘贴到自己喜欢的 JSON 数据查看工具里即可。这里我用了一款名叫 JSON Viewer Pro 的 Chrome 扩展,打开上面 Postman 收到的 JSON 数据。

从中可以看出,OData 返回的三条数据,顺序同数据库表里的三条数据顺序完全一致。
下面我们开始实现基于 author_name 和 book_name 两个字段的排序操作。
边栏推荐
猜你喜欢
改版去不图床 Token 的获取

Change Servlet project to SSM project

Explain / Desc 执行计划分析

Py之yellowbrick:yellowbrick的简介、安装、使用方法之详细攻略

Idea common plugins

三子棋(C语言实现)

WLAN networking experiment of AC and thin AP

Microsoft Azure & NVIDIA IoT developers season I | Azure IoT & NVIDIA Jetson development foundation

HoloView -- Tabular Datasets
![[Software Architecture Mode] The difference between MVVM mode and MVC mode](/img/37/8470ff9267752d4ca26a6b54ec0b50.png)
[Software Architecture Mode] The difference between MVVM mode and MVC mode
随机推荐
HoloView -- Tabular Datasets
毕业论文写作技巧
GBase 8c中怎么查询数据库配置参数,例如datestyle
WLAN networking experiment of AC and thin AP
What's up with VS "Cannot find or open PDB file"?How to solve
企业微信群:机器人定时提醒功能数据库配置化
常见的API安全缺陷有哪些?
TiDB的真实数据库数据是存在kv和还是pd上?
周鸿祎称微软抄袭 360 安全模式后发文否认;英特尔CEO基辛格回应市值被AMD超越:股价下跌是咎由自取|极客头条
Ogg synchronizes oracle to mysql, there may be characters that need to be escaped in the field, how to configure escape?
ACmix 论文精读,并解析其模型结构
How to implement deep copy in js?
报告:想学AI的学生数量已涨200%,老师都不够用了
PHP获取时间戳后写数据库的一个问题
Detailed explanation of JVM runtime data area and JMM memory model
sql server, FULL mode, dbcc shrinkfile(2,1) can not shrink the transaction log, or the original size, why?
VS“无法查找或打开PDB文件”是怎么回事?如何解决
A problem with writing to the database after PHP gets the timestamp
scrapy爬虫框架的使用
量化日常工作指标