通过一个实际例子,理解 SAP UI5 sap.ui.model.odata.v2.ODataModel API 中 BindingContext 绑定上下文的概念和用法试读版

简介: 通过一个实际例子,理解 SAP UI5 sap.ui.model.odata.v2.ODataModel API 中 BindingContext 绑定上下文的概念和用法试读版

有朋友提出疑问,说对 SAP UI5 官网 里介绍的这个 read 方法的可选参数 mParameterscontext 字段有所疑问,想通过一个具体例子来学习其概念。

本文咱们就来学习这个 context 概念。



本文之前我们展示了 OData 协议支持的过滤操作 $filter 在 SAP UI5 OData API 中是如何调用的:


SAP UI5 应用开发教程之一百六十五 - SAP UI5 应用如何采取 JavaScript 代码调用 OData API 读取满足过滤条件的业务数据($filter 操作)



那么假设我想查询 id 为 10248 这个订单的详细数据。首先根据这个 url https://services.odata.org/V2/Northwind/Northwind.svc/$metadata 拿到 NorthWind OData 服务的元数据:


从中观察到 Order 模型的 key 为 OrderID. 那么我们如果想根据 key 字段来读取 OData 节点的数据,除了使用 $filter 操作符之外,有一种更加简便的访问方式,即直接将 key 字段值拼接在 Orders 这个 EntitySet 后面,完整 url 如下:


https://services.odata.org/V2/Northwind/Northwind.svc/Orders(10248)


image.png



我们仔细查看这个订单数据,发现了 Order_Details 这个节点,其数据默认没有在当前读取请求内被返回,仅仅返回了如果想读取该数据,需要使用的 url 为 https://services.odata.org/V2/Northwind/Northwind.svc/Orders(10248)/Order_Details


image.png


我们再访问 https://services.odata.org/V2/Northwind/Northwind.svc/Orders(10248)/Order_Details,就能看到三条 Order 明细数据:


image.png


每条明细数据包含行项目的产品 ID,即字段 ProductID,还有该产品购买的数量 Quantity 以及单价 UnitPrice.


在 metadata 里,Order 节点和 Order_Details 节点的导航关系,通过名叫 Order_Details 的 NavigationProperty 进行关联。


image.png


也就是说,我们要读取一个订单的明细数据,前提是先获得该订单的抬头数据即获得 Order 节点的数据,然后再通过 Navigation Property,Order_Details 进行进一步读取。这里的 Order 抬头数据,相对于 Order_Details 数据而言就是后者的 上下文 即 Context.


我们下面就来学习如何使用 SAP UI5 OData API 进行编码来读取指定 ID 的 Order 以及 Order Details 数据。




相关文章
|
5月前
|
搜索推荐 BI 开发者
sap.ui.comp.smarttable.SmartTable 组件 beforeRebindTable 事件的用法
sap.ui.comp.smarttable.SmartTable 组件 beforeRebindTable 事件的用法
|
5月前
|
前端开发 JavaScript API
SAP UI5 sap.ui.require.toUrl 的作用介绍
SAP UI5 sap.ui.require.toUrl 的作用介绍
|
5月前
|
监控 测试技术
SAP 电商云修改 Product Catalog Staged 版本数据后,同步到 online 版本的 UI 操作
SAP 电商云修改 Product Catalog Staged 版本数据后,同步到 online 版本的 UI 操作
|
5月前
|
安全 API 数据库
SAP ABAP OData 中 Function import 的概念介绍
SAP ABAP OData 中 Function import 的概念介绍
|
5月前
|
存储 供应链
什么是 SAP 产品主数据里的 Sales Unit 概念
什么是 SAP 产品主数据里的 Sales Unit 概念
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
什么是 SAP ABAP 里的 Subscreen
|
5月前
|
存储 安全 网络安全
SAP ABAP 系统 STRUST 事务码里 System PSE 的概念介绍
SAP ABAP 系统 STRUST 事务码里 System PSE 的概念介绍
|
5月前
|
数据库
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
SAP S/4HANA 系统的底层基石 - 通过实际的例子,介绍 CDS View 入门级的概念试读版
|
5月前
|
算法 API 开发者
【Qt UI相关】Qt中如何控制 窗口的最大化、最小化和关闭按钮?一文带你掌握用法
【Qt UI相关】Qt中如何控制 窗口的最大化、最小化和关闭按钮?一文带你掌握用法
853 1
|
5月前
|
数据库 开发者 容器
SAP OData metadata.xml 里 EntityType,EntitySet 和 EntityContainer 三个概念之间的区别和联系
SAP OData metadata.xml 里 EntityType,EntitySet 和 EntityContainer 三个概念之间的区别和联系

热门文章

最新文章

下一篇
无影云桌面