假设系统里已经有许多的Lead历史数据,而我们正在进行的微信小程序和C4C集成的项目里,又创建了许多新的Lead数据。如何将这些新的在微信小程序里调用OData服务创建的Lead数据同老的历史数据做区分呢?

(1) 在C4C Sales Lead页面里,通过Source字段来标明Lead的来源。

对于AI Card项目来说,所有的Lead经由微信小程序创建,因此调用OData API时,SourceCode指定为“Wechat Social Channel”的代号:Z01

这样,在读取操作时,使用filter=SourceCodeeq′Z01′操作,能取出系统所有SourceCode为Z01的lead.再使用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/count?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 C4C OData服务的filter,客户端分页和排序的使用方式相关推荐

  1. 使用postman和SAP C4C OData服务创建销售订单

    我们使用OData服务创建销售订单,这是一个HTTP post请求,按照SAP C4C的规定需要在HTTP请求的头部附上一个CSRF token. 为此我们先要使用一个独立的HTTP get请求去获取 ...

  2. SAP Odata服务里filter的用法

    看个实际的例子,假设SAP C4C系统里有一个individual customer,昵称nickname为diablo: 我在postman里使用Odata请求根据Nickname字段拿到这个ind ...

  3. 6. 使用 Postman 工具高效管理和测试 SAP ABAP OData 服务

    序言 本文介绍了 Postman 这个强大的 API 测试工具.当我们待测试的 SAP ABAP OData 服务需要通过 user Authentication 验证才能使用时,可以通过手动在 Po ...

  4. 如何启用SAP C4C OData Event Notification

    当我们在试图使用SAP C4C OData事件通知这个功能时,如果遇到下列提示消息,说明这个功能在business configuration里没有开启: The OData Event Notifi ...

  5. 18. SAP ABAP OData 服务嵌套创建功能的实现步骤(Create Deep)

    什么是 SAP ABAP OData 服务的嵌套创建功能?在很多 SAP 帮助文档里,这个功能的英文描述是 Create Deep,或者 Deep Insert. 我们通过一个现实的例子来讲解.下图是 ...

  6. 19. 如何使用 ABAP 程序消费 SAP ABAP OData 服务

    本教程到目前为止,我们已经创建了一个支持增删改查的图书管理 OData 服务.本步骤介绍如何使用 ABAP 程序,来消费这个 OData 服务. 假设我们开发 OData 服务的 SAP ABAP 系 ...

  7. ES 查询关键字(match, term, range,terms)、组合多查询(must, should, must_not,filter)、分页、排序sort、高亮highlight

    一.常用查询关键字 1. match 查询 match查询会将搜索词分词,再与目标查询字段进行匹配,若分词中的任意一个词与目标字段匹配上,则可查询到. { "match": { & ...

  8. SAP Gateway OData服务的语言决定逻辑 - language determination

    Created by Jerry Wang, last modified on Sep 14, 2015 InitModel里决定language: service container locatio ...

  9. SAP UI5 OData API binding.filter(filter) 会触发发往后台的 OData 请求

    Created by Wang, Jerry, last modified on Jan 16, 2015

最新文章

  1. CET6级高频词(按频度)(700个)
  2. ubuntu php 源,Ubuntu18.04更换国内源
  3. 帝国php.ini路径,帝国CMS数据库配置文件是哪个文件?
  4. 安装laravel5.1项目命令
  5. java 设计模式 示例_Java中的中介器设计模式-示例教程
  6. OC2_点语法(属性关键字)
  7. [BTS06]BizTalk2006 SDK阅读笔记(一) 角色
  8. linux内核的邻居表,Linux内核报文收发-L3 - Section 3. IP协议、邻居子系统主要是接收、转发和发送三部分...
  9. Prometheus 监控Mysql服务器及Grafana可视化
  10. css 浏览器的兼容性问题 0303
  11. 39岁阿里P9失业了,总资产1.5亿……
  12. 冒泡排序_Python实现
  13. 弹性地基梁板的计算理论_第八章 弹性地基梁的计算理论
  14. html怎么把图做成3d效果,ps怎么制作立体效果 ps做图怎么做出立体的效果
  15. 如何使用AE制作文字破碎动画?制作ae破碎文字特效教程分享
  16. php 遍历数组 车牌,javascript,html_为什么我最后输出的车牌号全部是数字啊?明明数组里的是字母多啊!,javascript,html - phpStudy...
  17. TYPE-C接口安卓手机直播快充领夹式无线麦克风方案
  18. 历年ACM-ICPC比赛
  19. 利用Unity引擎C#语言实现MySql数据库读写
  20. 60个英文阅读网站推荐

热门文章

  1. Zygote工作流程分析
  2. 寻一名师傅叫我破译电脑各种密码和攻克防火墙
  3. SQL2005备份集中的数据库备份与现有的数据库不同,错误号码:3154,解决方法...
  4. asp.net menu Operation aborted
  5. 有选择性的启用SAP UI5调试版本的源代码
  6. rabbitmq(四)、消息丢失问题
  7. bzoj2049 Cave 洞穴勘测 LCT模版
  8. 散列--数据结构与算法JavaScript描述(8)
  9. 安装cloudermanager时出现Acquiring installation lock问题(图文详解)
  10. Java虚拟机执行引擎多态的实现