2016-03-01 54 views
1

我得到了一个非常有趣的bug,当我应用具有不同变量的过滤器时,过滤工作正常,但是如果我使用一个过滤器变量例如id ne 1 or id ne 2等,则不应用过滤器,因为odata sapui5自动将它们分组,如(id ne 1 or id ne 2)所以它不起作用,但如果我使用这样的过滤器:id ne 1 and year ne 2016 and scenario eq 2没有分组,那么这种类型的过滤器工作正常,从开发人员的工具(从应用的URL)网络),则应用过滤器。似乎这个SAP ODATA不理解过滤器分组,因为版本可能是旧的,或者像这样运行...还尝试定义过滤器的参数,如:and: true,以便所有过滤器都不是通过OR而是通过AND运算符应用,没有帮助......那么解决这类错误或问题的解决方案是什么?sapui5中的过滤器分组

谢谢大家的帮助!

回答

1

这是手动连接过滤器的方式。所以你可以手动控制分组。

var filter1 = new sap.ui.model.Filter("id","NE", 1); 
var filter2 = new sap.ui.model.Filter("id","NE", 2); 
var andFilter = new sap.ui.model.Filter([filter1 ,filter2 ], true); 
var orFilter = new sap.ui.model.Filter([filter1 ,filter2 ], false); 

Filter documentation

+0

是的,这是一个正确的答案,是我不好,我不好阅读文档)),并使用'和''作为真实| FALSE'错误。 –