尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

OData V4 $filter 深入解析,Lambda 如何把金额、币种与关联集合变成可执行查询

OData V4 $filter 深入解析,Lambda 如何把金额、币种与关联集合变成可执行查询 在 SAP Gateway Client 里看到下面这条 OData V4 请求时,真正需要关注的并不是Budget gt 4000这个普通比较条件,而是它外面包着的一层DEPARTMENT_2_TEAMS/any(...)。一旦$filter进入这种写法,过滤对象已经不再只是当前 Entity 的某个字段,而是沿着 Navigation Property 进入一组关联 Entity,再对这组数据执行类似存在性判断的逻辑。/sap/opu/odata4/iwbep/tea/default/iwbep/tea_busi/0001/Departments?$filter=DEPARTMENT_2_TEAMS/any(d:d/Budget gt 4000 and d/BudgetCurrency eq 'JPY')SAP Gateway Foundation 对这个场景给出了一个相当关键的 OData V4 能力,Lambda Operator 可以和 Amount、Currency 一起用于$filter。更具体地说,在ANY或ALL内部可以同时判断金额和币种,并且即便 Currency 与 Amount 并不存在直接连接,这种过滤方式依然受到支持。这条看起来只有一行的 URI,实际上把 OData V4 中几个非常重要的概念压缩到了一起,包括$filter、Navigation Property、Collection、Lamb
返回列表