如何将@ odata.count绑定到SAPUI5控件

2020-08-27 01:07发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个连接到OData模型的Table控件。 如果在请求中添加$ count = true,则会在@ odata.count元数据中获得记录计数。如何将其绑定到控件。

首先,如何使SAPUI5发送$ count = true?

第二,如何将值绑定到控件?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个连接到OData模型的Table控件。 如果在请求中添加$ count = true,则会在@ odata.count元数据中获得记录计数。如何将其绑定到控件。

首先,如何使SAPUI5发送$ count = true?

第二,如何将值绑定到控件?

付费偷看设置
发送
3条回答
太Q了
1楼-- · 2020-08-27 01:45

您好 Daniel Wroblewski

您可能需要在清单文件中调整模型定义。

我认为WebIDE现在能够在描述符编辑器(而不是代码编辑器)中为您提供帮助。

想法是像这样在模型定义下添加一个设置部分:

"型号":{
   " myModel":{
     "数据源": "...",
     "设置":{
       " defaultCountMode":" <值>"
     }
   }
 },

可以在此处找到可能的值: https://sapui5.hana.ondemand.com/#/api/sap.ui.model.odata.CountMode

现在,关于第二个询问,您可以直接找到从模型返回的任何数据,但是我想这个计数信息不是数据部分的一部分。 您是否尝试过"打印"返回的有效载荷?


派大星 ヾ
2楼-- · 2020-08-27 01:43

首先,很高兴收到您的来信:-)

第二,感谢您对第一个回答。 我会尽快尝试。

第三,我不知道您"打印"返回的有效负载是什么意思。 您能解释吗?

绿领巾童鞋
3楼-- · 2020-08-27 01:39

如果您使用的是oData v4,则存在headercontext将count绑定到控件,而parameres设置Scount:true。

 items =" {path:'/productList',参数:{
             $ count:是的,
         }}" 

XML中的标题元素

 <标题id ="标题" text =" {$ count}产品"/> 

控制器中的标头上下文

 setHeaderContext:function(){var oView = this.getView();
     oView.byId(" title")。setBindingContext(
         oView.byId(" productList")。getBinding(" items")。getHeaderContext());} 

如果您正在使用oData v2,则使用接收到的事件数据,并且可以从oEvent参数获取计数,然后可以使用SAPUI5控件设置计数。

在绑定中添加事件:

 items =" {path:'/productList',事件:{dataReceived:'。dataReceived'}}" 

从事件处理程序中获取计数

 dataReceived:函数(oEVent){
 让sCount = oEVent.getParameter(" data").__ count;
 this.getView()。byId(" title")。setText(`Products($ {sCount})));
 } 

一周热门 更多>