从ODATA服务前端将过滤器值作为参数传递给CDS视图

2020-08-13 23:15发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我们有一个由ODATA服务引用的...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们有一个由ODATA服务引用的主CDS视图。 假设主CDS视图显示订单抬头信息。 主CDS与物料有关联(例如,订单可以有多种物料)。 所有这一切都很好并且有效。

要求是在物料编号上添加一个过滤器。 如果用户输入商品列表,则CDS仅应返回包含输入商品的订单。 由于主CDS不保存物料编号,因此将成为与物料CDS关联的过滤器。

我知道CDS可以具有输入参数,但是可以处理来自ODATA服务的过滤器值吗? 因此,用户可以输入过滤条件,例如{包含* 12345 *},{等于12345},{结束* 12345}或诸如{包含* 12345 *}或{等于11111}或{等于22222}等组合 等等

我看到的所有参数示例在CDS中都使用等于" ="运算符,而不使用" IN"运算符。 例如:

其中material =:in_material

我们可以使用:

其中材料IN:in_material

如果上述方法不可行,我们如何根据过滤器范围提交关联?

欢迎您提出想法和建议。