UI5 Odata 同时使用过滤器和 urlParameters 读取调用
UI5 Odata read call with filter and urlParameters simultaneously
您好,我正在尝试使用过滤器和参数调用 Odata read。但是无法取回数据。任何输入将不胜感激
var fWerks = new sap.ui.model.Filter({
path: "Werks",
operator: sap.ui.model.FilterOperator.EQ,
value1: vWerks
});
var fIblnr = new sap.ui.model.Filter({
path: "Iblnr",
operator: sap.ui.model.FilterOperator.EQ,
value1: iIblnr
});
var oFilter = new Array();
oFilter.push(fWerks);
oFilter.push(fIblnr);
oModel.read("/PIHeaderSet)", {
filters: [oFilter],
urlParameters: {
"$expand": "PIHeaderToItemNav"
},
success: function(oData, response) {
oModelJson.setData(oData);
sap.ui.getCore().setModel(oModelJson, "oJSONModel");
// alert("Success!");
},
error: function(response) {
}
});
尝试删除代码中 oFilter
周围的方括号:
filters: [oFilter],
应替换为
filters: oFilter,
过滤器属性需要 sap.ui.model.Filter 的数组。您的 oFilter 变量已经是 Filter-objects 的数组,因此无需将 oFilter 放在方括号中。
您好,我正在尝试使用过滤器和参数调用 Odata read。但是无法取回数据。任何输入将不胜感激
var fWerks = new sap.ui.model.Filter({
path: "Werks",
operator: sap.ui.model.FilterOperator.EQ,
value1: vWerks
});
var fIblnr = new sap.ui.model.Filter({
path: "Iblnr",
operator: sap.ui.model.FilterOperator.EQ,
value1: iIblnr
});
var oFilter = new Array();
oFilter.push(fWerks);
oFilter.push(fIblnr);
oModel.read("/PIHeaderSet)", {
filters: [oFilter],
urlParameters: {
"$expand": "PIHeaderToItemNav"
},
success: function(oData, response) {
oModelJson.setData(oData);
sap.ui.getCore().setModel(oModelJson, "oJSONModel");
// alert("Success!");
},
error: function(response) {
}
});
尝试删除代码中 oFilter
周围的方括号:
filters: [oFilter],
应替换为
filters: oFilter,
过滤器属性需要 sap.ui.model.Filter 的数组。您的 oFilter 变量已经是 Filter-objects 的数组,因此无需将 oFilter 放在方括号中。