Skip to Content
0
Dec 09, 2022 at 08:11 PM

Filter from viewsettingsdialog not working

82 Views Last edit Dec 09, 2022 at 09:00 PM 8 rev

I have been tried everything, its says wrong parameters for filter. Sorry for bad formating of code

onConfirmViewSettingsDialog: function (oEvent) {
var aFilterItems = oEvent.getParameters().filterItems,
aFilters = [],
aCaptions = [],
sQuery = oEvent.getParameters("query");
if(sQuery){
aFilterItems.forEach(function (oItem) {

switch (oItem.getKey()) {
case "Filter1" :

debugger; ---> doesn't enter here
aFilters.push(new Filter("Name1", FilterOperator.Contains, sQuery));
break;
case "Filter2" :
aFilters.push(new Filter("Name2", FilterOperator.Contains, sQuery));
break;
case "Filter3" :
aFilters.push(new Filter("IdHead", FilterOperator.Contains, sQuery));
break;
default :
break;
}
aCaptions.push(oItem.getText());
})
}
this._applyFilterSearch(oEvent);
this._applySortGroup(oEvent); //sort
},

_applyFilterSearch: function () {
var aFilters = this._oListFilterState.aSearch.concat(this._oListFilterState.aFilter),
oViewModel = this.getModel("listView");
this._oList.getBinding("items").filter(aFilters, "Application");
// changes the noDataText of the list in case there are no filter results
if (aFilters.length !== 0) {

oViewModel.setProperty("/noDataText",this.getResourceBundle().getText("listListNoDataWithFilterOrSearchText"));

} else if (this._oListFilterState.aSearch.length > 0) {
// only reset the no data text to default when no new search was triggered
oViewModel.setProperty("/noDataText", this.getResourceBundle().getText("listListNoDataText"));
}
}