SAP C4C OData服务的filter,客户端分页和排序的使用方式
假设系统里已经有许多的Lead历史数据,而我们正在进行的微信小程序和C4C集成的项目里,又创建了许多新的Lead数据。如何将这些新的在微信小程序里调用OData服务创建的Lead数据同老的历史数据做区分呢?
(1) 在C4C Sales Lead页面里,通过Source字段来标明Lead的来源。
对于AI Card项目来说,所有的Lead经由微信小程序创建,因此调用OData API时,SourceCode指定为“Wechat Social Channel”的代号:Z01
这样,在读取操作时,使用 f i l t e r = S o u r c e C o d e e q ′ Z 0 1 ′ 操 作 , 能 取 出 系 统 所 有 S o u r c e C o d e 为 Z 01 的 l e a d . 再 使 用 filter=SourceCode eq 'Z01'操作,能取出系统所有SourceCode为Z01的lead. 再使用 filter=SourceCodeeq′Z01′操作,能取出系统所有SourceCode为Z01的lead.再使用inlinecount=allpages,能一并返回SourceCode为Z01的Lead一共有多少个。
最后的url如下:
https://my500.c4c.saphybriscloud.cn/sap/c4c/odata/v1/c4codata/LeadCollection?KaTeX parse error: Expected 'EOF', got '&' at position 27: …ceCode eq 'Z01'&̲inlinecount=allpages
结果如下:
截至2020年3月20日12:23PM为止,在系统上经由微信小程序创建,Source Code字段为Z01的Lead总共有6个。
如果系统里满足这个条件的Lead越来越多,调用OData服务后,会造成规模巨大的数据量从服务器发送往消费端,所以建议使用客户端分页方式读取数据。
首先获取满足SourceCode为Z01的lead个数:
https://my500.c4c.saphybriscloud.cn/sap/c4c/odata/v1/c4codata/LeadCollection/ c o u n t ? count? count?filter=SourceCode eq ‘Z01’
假设返回结果数为1000, 我们可以在客户端进行分页读取,每页读取的个数可以客户端自行决定,比如每次读取20个。
第一页的读取请求:
https://my50.c4c.saphybriscloud.cn/sap/c4c/odata/v1/c4codata/LeadCollection?KaTeX parse error: Expected 'EOF', got '&' at position 24: …ourceCode eq ''&̲orderby=CreatedOn desc&$top=20
20个Lead返回:
第二页:即第21到第40个:
https://my50.c4c.saphybriscloud.cn/sap/c4c/odata/v1/c4codata/LeadCollection?KaTeX parse error: Expected 'EOF', got '&' at position 24: …ourceCode eq ''&̲orderby=CreatedOn desc&KaTeX parse error: Expected 'EOF', got '&' at position 8: skip=20&̲top=20
第三页:即第41个到第60个
https://my500.c4c.saphybriscloud.cn/sap/c4c/odata/v1/c4codata/LeadCollection?KaTeX parse error: Expected 'EOF', got '&' at position 24: …ourceCode eq ''&̲orderby=CreatedOn desc&KaTeX parse error: Expected 'EOF', got '&' at position 8: skip=40&̲top=20
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关文章
- SAP UI5 Responsive Grid Layout 里的 Label-Field Ratio 在屏幕类型 S 下的表现
- 测试 SAP 电商云 Spartacus UI 3.4.x 和 4.3.x 的 guest checkout 功能
- SAP UI5 应用中的 sap.ui.require.toUrl 使用场景
- SAP UI5 sap.ui.Device.media 的使用介绍
- SAP UI5 sap.ui.Device.media 公有方法介绍
- SAP Spartacus 中的 HTTP URL parameters
- 通过一个实际例子,理解 SAP UI5 sap.ui.model.odata.v2.ODataModel API 中 BindingContext 绑定上下文的概念和用法试读版
- SAP UI5 XML 视图在实例化时就已经确定了 BindingSyntax 的实现版本了
- SAP ABAP Append structure 介绍
- SAP ERP系统在企业内部控制方面有哪些独到之处?
- 澄清一些对 SAP UI5 响应式表格 sap.m.Table 的常见理解误区试读版
- SAP UI5 响应式表格 sap.m.Table 根据不同宽度的屏幕动态决定显示或隐藏 Column 的实现源代码讲解试读版
- Oracle购买SAP: 开启新数据时代(oracle收购sap)
- SAP 标准Excel解析函数改进详解编程语言
- SAP 图形页面详解编程语言
- SAP GUI 保存密码详解编程语言
- SAP中删除假脱机请求详解编程语言
- Sap SE16n 修改表数据详解编程语言
- SAP ALV内嵌(In-place)Excel的问与答详解编程语言
- sap unix timestamp转换详解编程语言
- SAP播放本地视频及音频(仅限于window MediaPlayer可播放文件)详解编程语言
- SAP MM MB5L 报表里的差异金额如何调整详解编程语言
- SAP的归档详解编程语言
- SAP ABAP 的常用debug方式详解编程语言
- Oracle与SAP在仓储领域的联姻(仓库oracle和sap)
- 调用SAP接口:MSSQL实现自动化(mssql调用sap接口)
- Oracle从SAP抽取数据的简单方法(oracle从sap抽数)
- 数据库解决方案如何使用SAP创建Redis数据库(sap怎么创建redis)
- 聘请高级Oracle与SAP顾问,拓展业务潜力(oracle sap顾问)
- Oracle与SAP的技术潜力比较(oracle sap比较)
- 探索 Oracle 与 SAP 技术的开发可能性(oracle sap开发)
- Oracle 与 SAP深度对比分析(oracle sap对比)