odata查询 - 有没有办法在过滤器中添加“和false”

时间:2016-05-18 12:18:55

标签: odata sap

odata查询 - 有没有办法向过滤器添加“和false”

这是连接到SAP系统的查询。

让我们说我的网址是:

/ PlannerGrpSet?$ top = 50& $ filter =(Werks eq'3000')& $ select = *

我想做:

/ PlannerGrpSet?$ top = 50& $ filter =(Werks eq'3000'和false)& $ select = *

不要问我为什么,我们有一个工具正在翻译我们生成的一些复杂的sql,在sql中我们做0 = 1表示不返回数据。是的,我知道我们疯了。

只需添加和false 即可:

远程服务器返回错误:(500)内部服务器错误

关于我如何得到我想要的任何想法?再次,不要寻找“不要那样做”。此外,我宁愿不依赖于尝试做Werks eq'3000'和Werks eq'3001'这样的事情,理想情况下我不想随意选择我们的一个列并做类似的事情。

1 个答案:

答案 0 :(得分:1)

$filter表达式的grammar确实允许false表达式右侧的原始文字(例如and)。因此,您似乎正在遇到服务背后的OData实施的错误或限制。

这是false中具有文字$filter值的有效example from the TripPin demo service

http://services.odata.org/V4/(S(ztoosdlp5wrqdiv233gmrqys))/TripPinServiceRW/People?$filter=UserName eq 'russellwhyte' and false

您可以尝试保证失败的其他逻辑表达式。例如,0 eq 1