如何使用sap.ui.model.Filter过滤DateTime数据?

时间:2017-01-19 07:34:21

标签: odata sapui5

我尝试使用sap.ui.model.Filter过滤DateTime数据:

oTableSearchState = [new Filter([ new Filter("Date", FilterOperator.Contains, sQuery), new Filter("Another_Date", FilterOperator.Contains, sQuery), ])]

它返回400 Bad String。我发现odata请求是...$filter substringof(,Date)。所以我知道使用"字符串过滤器"是不对的。过滤日期。

我需要的是...$filter= Date ge datetime'2016-08-17T16:00:00Z' and Date lt datetime'2016-08-18T16:00:00'我可以使用sap.ui.model.Filter吗?或者唯一的方法就是亲自将过滤器参数放在一起?

1 个答案:

答案 0 :(得分:3)

是的,你可以,请使用sap.ui.model.Fitler(使用运算符BT):

new sap.ui.model.Filter("Date", sap.ui.model.FilterOperator.BT, dateFrom, dateTo)

可以通过处理sap.m.DateRangeSelection事件“更改”来完成日期的选择

handleChange : function(oEvent){
        dateFrom = oEvent.getParameter("from");
        dateTo   = oEvent.getParameter("to");
}