如何在SAPUI5中将过滤的数据绑定回Model?

2020-09-01 20:52发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我将表格与以下模型绑定:...

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

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


嗨,

我将表格与以下模型绑定:

 var _jsonModel = new sap.ui.model.json.JSONModel();
 _jsonModel.setData(response.data.results);
 oTable.setModel(_jsonModel," myModel");
 

现在我要像下面那样过滤表格

 oTable = this.getView()。byId(" idTable");
 oTable.getBinding(" rows")。filter(aFilters,sap.ui.model.FilterType.Application);
 

在上面的代码中,我仅过滤并获取表的一个子集,但我想将此子集绑定回表。 所以我只想过滤,而是将表格绑定到过滤后的数据,有人可以建议我如何实现吗?

4条回答
我是小鹏鹏啊
2020-09-01 21:28

让我解释一下我的问题。

1)我正在使用sap.ui.table.Table。

2)我有一个包含900条记录的表。

3)我选择此表中的第250和270行,并将这些记录提交到后端(使用oData方法),到目前为止没有问题。

4)现在,方案2:我根据一些条件过滤了900条记录,并获得了100条记录(在代码行下方)

 oTable.getBinding(" rows")。filter(aFilters,sap.ui.model.FilterType.Application); 

5)现在,我选择了过滤列表中的第3行和第5行,这就是问题所在。 下面的代码是我正在使用的。

 var oPrgTab = this.getView()。byId(" idProgTable");
 var oSlctIndices = oPrgTab.getSelectedIndices();
 var oSlctIndLen = oSlctIndices.length;

 for(var i = 0; i 
 

在上面的代码中,selectedIndices数组中包含3和5。 而oPrgTab.getBinding(" rows")具有所有900行。 现在,如果我使用最后一条语句来获取ProgramID,则会得到错误的结果。 我了解原因,但未能解决问题。 基本上,selectedIndices是从过滤的100条记录中提取rowIndex,而oPrgTab.getBinding(" rows")则具有全部900条记录。

一周热门 更多>