SAPUI5应用程序中的EntitySet和Entity之间的数据绑定问题

2020-09-11 02:42发布

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

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


大家好,

我们正在研究SAPUI5应用程序。 我有一个"地理地图和详细信息"屏幕。 在地理地图屏幕中,我加载了集合(EntitySet)。 单击地图上的景点时,它会在详细信息屏幕中显示详细信息。

我们在后端实现了EntitySet和Get Entity方法。 我们在Entity方法中添加了更多字段。 因此,我只能在Map区域中显示,很少显示详细信息,而在Details屏幕中显示更多信息。

但是,当我选择该地点时,我没有在详细信息屏幕上看到其他信息。 它从我的GetEntitySet视图/模型加载信息。 我把断点放在后端,我没有触发。

但是当我放一些随机值(作为键)时,它被触发了。

图片1:

我在细节视图中绑定元素的代码如下:

 var abc =" 000000111743";


 this.getView()。getModel()。metadataLoaded()。then(function(){
 var sObjectPath = this.getView()。getModel()。createKey(" EntitySet",{
 Qmnum:abc
 });
 this._bindView("/" + sObjectPath);
 } .bind(this));
 
 _bindView:函数(sObjectPath){


 this.getView()。bindElement({
 路径:sObjectPath


 });
 },
 

请帮助我。

谢谢

此致

JK。

(240.5 kB)

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

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


大家好,

我们正在研究SAPUI5应用程序。 我有一个"地理地图和详细信息"屏幕。 在地理地图屏幕中,我加载了集合(EntitySet)。 单击地图上的景点时,它会在详细信息屏幕中显示详细信息。

我们在后端实现了EntitySet和Get Entity方法。 我们在Entity方法中添加了更多字段。 因此,我只能在Map区域中显示,很少显示详细信息,而在Details屏幕中显示更多信息。

但是,当我选择该地点时,我没有在详细信息屏幕上看到其他信息。 它从我的GetEntitySet视图/模型加载信息。 我把断点放在后端,我没有触发。

但是当我放一些随机值(作为键)时,它被触发了。

图片1:

我在细节视图中绑定元素的代码如下:

 var abc =" 000000111743";


 this.getView()。getModel()。metadataLoaded()。then(function(){
 var sObjectPath = this.getView()。getModel()。createKey(" EntitySet",{
 Qmnum:abc
 });
 this._bindView("/" + sObjectPath);
 } .bind(this));
 
 _bindView:函数(sObjectPath){


 this.getView()。bindElement({
 路径:sObjectPath


 });
 },
 

请帮助我。

谢谢

此致

JK。

(240.5 kB)
付费偷看设置
发送
2条回答
绿领巾童鞋
1楼-- · 2020-09-11 03:24

您好Jayakrishnan,

Odata缓存所有请求数据,以避免额外的服务调用。
您可以使用" this.getModel()。oData"检查缓存的数据。


在您的情况下,当您随机设置关键参数时,它将首先检查现有的缓存数据中是否存在具有给定关键参数的记录。 由于此检查失败,因此它将新的Odata请求发送到后端,并且您的断点将被触发。

您为什么不在实体集方法中编写相同的逻辑来填充额外的字段?

致谢,
维卡斯

SC_Yao
2楼-- · 2020-09-11 03:22

感谢您的评论,这是很有价值的。 我会研究这个

一周热门 更多>