问题描述
我是SAPUI5的新手,请问我的问题听起来很简单。我正在尝试为Odata读取请求将多个值设置为单个过滤器。我需要从表中获取列的值,然后将值绑定到过滤器中。我无法正确处理。提前致谢 响应将读取这些值,并在UI上默认这些值。
var oModel = oTable.getModel();
var aItems = oTable.getItems();
var lFilterart;
for (var iRowIndex = 0; iRowIndex < aItems.length; iRowIndex++) {
var lArticle= oModel.getProperty("Article",aItems[iRowIndex].getBindingContext());
lFilterart= new sap.ui.model.Filter({
path: "Article",operator: sap.ui.model.FilterOperator.EQ,value1: lArticle
});
}
var aFilter = new Array();
aFilter.push(lFilterart);
解决方法
var aFilters = [];
for (var iRowIndex = 0; iRowIndex < aItems.length; iRowIndex++) {
var lArticle= oModel.getProperty("Article",aItems[iRowIndex].getBindingContext());
var oFilter = new sap.ui.model.Filter("Article",sap.ui.model.FilterOperator.EQ,lArticle);
aFilters.push(oFilter);
}
this._oControl.bindItems({
path: "model>/DataSet",filters: [
new Filter({
filters: aFilters,and: false // Defaults to true in which case all filters must match,when set to false it behaves like an OR.
})
],…
});