SAPUI5单个过滤器中的多个值

问题描述

我是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.
        })
    ],…
});