关于|关于 SAP UI5 参数 $$updateGroupId 前面两个 $ 符号的含义
我的 SAP UI5 教程,SAP UI5 应用开发教程之六十五 - 基于 OData V4 的 SAP UI5 表格控件如何实现创建,编辑和保存功能,里面演示了通过 XML 视图的方式,非 SAP UI5 Table
控件,定义复合绑定路径的语法,如下图所示:
文章图片
这行语句的语义是:当用户修改(update)表格行项目时,表格控件不会立即将这些修改,通过 HTTP Post 请求的方式发送到提供 OData 服务的 Mock Server,而是延迟到当用户点击工具栏的 Save 按钮时才发送 HTTP Post Batch 请求,进行修改的保存。peopleGroup 是 Batch 请求的 group 编号,可以在 Chrome 开发者工具里观察到:
文章图片
有朋友对于 XML 视图里的参数 $$updateGroupId
提出这样的疑问:
这个updateGroupId前面是两个$符号,而count前面是一个$,这个含义能给解释一下吗?啥时候是一个,啥时候是两个?
文章图片
其实答案很简单:
- 带有
单个
$ 符号的操作,代表这是 OData 协议支持的标准操作。
从 OData 协议的官网 上可以找到所有这些标准操作的列表,比如:
- $search
- $filter
- $count
- $orderby
- $skip
- $top
等等。
文章图片
【关于|关于 SAP UI5 参数 $$updateGroupId 前面两个 $ 符号的含义】以两个 $$
开头的操作,说明是 SAP 引入的自定义参数,用以同 OData 协议标准的操作相区分。
这个道理其实和 SAP UI5 index.html
页面里,id 为 sap-ui-bootstrap
的引导 script 元素里,有大量 data-sap-XXXX
属性定义的道理一样。这些属性用 data-sap
开头,也是为了避免和 HTML 标准的属性相冲突的可能性。
文章图片
OData V4 模型支持为 read, update 和 delete 操作分别指定不同的 group ID. 调用 OData Model API 提交的更改请求,会根据 group ID 合并到同一个批处理请求中。
关于 group id 字段的更多细节,请参考这两篇文章:
- 关于 SAP UI5 Context.prototype.delete 方法的输入参数 Group ID 的细节
- SAP UI5 OData V4 模型的构造方式
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- SAP|SAP ABAP 解析 excel 文件的函数 TEXT_CONVERT_XLS_TO_SAP 单步执行分析
- 关于|关于 SAP UI5 Context.prototype.delete 方法的输入参数 Group ID 的细节
- SAP|SAP UI5 应用开发教程之一百零一 - SAP UI5 应用的 Locale 决定机制试读版
- 关于Vue3的defineProps用法
- 在|在 SAP BAS 里使用 SAP UI5 应用消费 OData 的 Create 和 Delete 操作
- 个人随笔|关于BLEU值计算的学习笔记
- 代码随想录|关于哈希表,你该了解这些!
- UI5|CSS 初学 (五)边框
- SAP 云平台上的 ABAP 编程环境里如何消费第三方服务
- 分享三个关于CMDB的小故事