如何将过滤器查询参数应用于XS OData服务?

2020-09-19 02:59发布

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

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


大家好,

我将HANA表公开为XS OData服务,并且试图在SAP Cloud平台上运行的Fiori应用程序中使用该服务。我已经为XS OData服务创建了目的地,并且能够查看数据。

现在我想使用查询字符串参数来限制数据。

我想知道如何在XS OData服务中使用$ filter查询参数语法。

我们正在使用以下示例查询在Postman上测试我的OData服务,但出现以下错误。

/EMPLOYEESAMPLE.xsodata/EMPLOYEE_ODATA/?$ format = json&$ filter = LOCATION eq'XXX'

***********错误详细信息***********

{" error":{" code":""," message":{" lang":" en-US"," value":"运算符'eq'与操作数类型'Edm.Int32'和 " Edm.String"。" }}}

我们是否需要像为网关OData服务实现的那样在HANA表上启用查询参数?

谢谢。

最好的问候

Mahalakshmi

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

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


大家好,

我将HANA表公开为XS OData服务,并且试图在SAP Cloud平台上运行的Fiori应用程序中使用该服务。我已经为XS OData服务创建了目的地,并且能够查看数据。

现在我想使用查询字符串参数来限制数据。

我想知道如何在XS OData服务中使用$ filter查询参数语法。

我们正在使用以下示例查询在Postman上测试我的OData服务,但出现以下错误。

/EMPLOYEESAMPLE.xsodata/EMPLOYEE_ODATA/?$ format = json&$ filter = LOCATION eq'XXX'

***********错误详细信息***********

{" error":{" code":""," message":{" lang":" en-US"," value":"运算符'eq'与操作数类型'Edm.Int32'和 " Edm.String"。" }}}

我们是否需要像为网关OData服务实现的那样在HANA表上启用查询参数?

谢谢。

最好的问候

Mahalakshmi

付费偷看设置
发送
4条回答
xfwsx85
1楼-- · 2020-09-19 03:48

$ filter应该可以自动用于XSOData服务...无需更改代码。

签出使用XSOData定义OData服务的标准文档

缺少错误屏幕截图。

樱桃小丸子0093
2楼-- · 2020-09-19 03:55

位置属性属于哪种类型?

如消息所示,它应该是一个Edm.Int32,不能与您传递的Edm.String进行比较。

致谢,
弗洛里安

骆驼绵羊
3楼-- · 2020-09-19 03:43

感谢弗洛里安,我将查询修改为没有单引号的整数类型,并且可以看到返回了数据集,

例如,我尝试使用/EMPLOYEESAMPLE.xsodata/EMPLOYEE_ODATA/?$format=json&$filter=LOCATION eq 100

此问题已解决。

最好的问候

Mahalakshmi

蓋茨
4楼-- · 2020-09-19 03:51

嗨弗洛里安,

位置在元数据文件上生成为EDM.INt32的以下类型,但是在HANA端,SQL数据类型为NVARCHAR,列存储数据类型为String。

<属性名称=" LOCATION"类型=" Edm.Int32"/>

BR

Mahalakshmi

一周热门 更多>