在完成了深潜12的所有步骤之后,我一直在尝试像正常的oData服务一样使用$ filter操作。
https://baseurl/odata/v2/CrudService/BusinessPartner?$ filter = BusinessPartnerCategory eq'abc'。
但是,它不起作用。它总是返回相同的实体集。 我看过它的javadoc。似乎没有检索过滤器的方法。我看到有getTopOptionValue,getSkipOptionValue,getSelectProperties和getOrderByProperties。
获取$ fitler操作值的选项有哪些?
另一件事是深度学习4。我看到过滤器是硬编码的。
final List<BusinessPartner> businessPartners =
new DefaultBusinessPartnerService()
.getAllBusinessPartner()
.select(BusinessPartner.BUSINESS_PARTNER,
BusinessPartner.LAST_NAME,
BusinessPartner.FIRST_NAME,
BusinessPartner.IS_MALE,
BusinessPartner.IS_FEMALE,
BusinessPartner.CREATION_DATE)
.filter(BusinessPartner.BUSINESS_PARTNER_CATEGORY.eq(CATEGORY_PERSON))
.orderBy(BusinessPartner.LAST_NAME, Order.ASC)
.execute();
我需要构建一个可能包含多个过滤器的动态过滤器语句吗?
谢谢
答案 0 :(得分:1)
我还包括最初在博客文章中发布的答案。万一有人只看一下Stackoverflow。
当前过滤在SAP Cloud Platform SDK中不可用,但在路线图上。
Here是使用自定义查询选项在自定义处理程序中调用S / 4HANA Cloud SDK的一种解决方法。发出类似...的请求。 BusinessPartner?$ top = 10&$ skip = 1&BusinessPartner eq 1&BusinessPartnerCategory <1
但是,这非常“棘手”,我不推荐这种方法。
最好的问候,
丹尼尔