SAP Cloud Integration OData适配器中的$ filter选项不起作用。 无效的过滤器选项

2020-09-09 17:38发布

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

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


我们正尝试通过OData设置将SAP后端用户中的OData服务称为$ Filter

我们可以使用此过滤器选项直接调用odata服务,但是当我们通过OData适配器进行调用时,适配器会因该错误而崩溃。

HCI的请求网址:

 https://xxxxxx-iflmap.hcisbp.eu1.hana.ondemand.com/http/Webshop/SalesOrderHistory/SalesOrderSet$filter=Customer eq'0050169000'

来自CPI的响应(请求未到达SAP后端

发生内部服务器错误:" Customer%20eq%20%270050169000%27"中位置1的类型" Z_ORDER_TO_CASH_V1_SRV.SalesOrder"中没有属性" Customer%20eq%20%270050169000%27"。 >

似乎适配器试图在服务中找到整个字符串" Customer eq'1234567890"作为属性。

使用CamelHTTPQuery标头从请求网址动态设置Filter参数。

我认为OData供应本身不是问题,因为直接调用ODP OData服务(通过http)可以很好地工作。 $ top && skip在http和odata适配器中也可以正常工作。

因此,这似乎是专门针对CPI OData适配器的问题。

我们如何解决这个问题?

谢谢

汤姆

odata-filter-definition.jpg (28.6 kB)

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

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


我们正尝试通过OData设置将SAP后端用户中的OData服务称为$ Filter

我们可以使用此过滤器选项直接调用odata服务,但是当我们通过OData适配器进行调用时,适配器会因该错误而崩溃。

HCI的请求网址:

 https://xxxxxx-iflmap.hcisbp.eu1.hana.ondemand.com/http/Webshop/SalesOrderHistory/SalesOrderSet$filter=Customer eq'0050169000'

来自CPI的响应(请求未到达SAP后端

发生内部服务器错误:" Customer%20eq%20%270050169000%27"中位置1的类型" Z_ORDER_TO_CASH_V1_SRV.SalesOrder"中没有属性" Customer%20eq%20%270050169000%27"。 >

似乎适配器试图在服务中找到整个字符串" Customer eq'1234567890"作为属性。

使用CamelHTTPQuery标头从请求网址动态设置Filter参数。

我认为OData供应本身不是问题,因为直接调用ODP OData服务(通过http)可以很好地工作。 $ top && skip在http和odata适配器中也可以正常工作。

因此,这似乎是专门针对CPI OData适配器的问题。

我们如何解决这个问题?

谢谢

汤姆

odata-filter-definition.jpg (28.6 kB)
付费偷看设置
发送
4条回答
SAP小黑
1楼-- · 2020-09-09 18:06

您尝试过

 https://xxxxxx-iflmap.hcisbp.eu1.hana.ondemand.com/http/Webshop/SalesOrderHistory/SalesOrderSet/?$filter=Customer eq'0050169000'
奄奄一息的小鱼
2楼-- · 2020-09-09 18:23

嗨< rel =" nofollow" hraf=" https://answers.sap.com/users/6804/tvanrooijen.html"> Rooijen ,

请详细说明"将白名单命名为filter"。 您如何在CPI中做到这一点? 我们有一个OData服务集成流程(Odata作为发送方和接收方)。 我们无法在标头中捕获任何url参数。 在我们的例子中,下面是标题列表的输出

null accept-language en-US,en; q = 0.9,gu; q = 0.8

ODataContext org.apache.olingo.odata2.core.ODataContextImpl@501b8ee3

odataEntity客户

ODataMethod GET_FEED

odataURI空

SAP_MessageProcessingLogID AFy_xY3nU4CZP0GUMwfhjwAyYXip s

criptFile script2.gsh

scriptFileType常规

UriInfo com.sap.gateway.core.ip.odata.OGWUriInfo@da8f72b x-forwarded- for 50.101.108.120

暮风yp
3楼-- · 2020-09-09 18:23

嗨,奥列格斯,

谢谢,我尝试过,但是行为保持不变。

致谢

汤姆

打个大熊猫
4楼-- · 2020-09-09 18:07

嗨,汤姆,

在我看来,有一个? 丢失:

 https://xxxxxx-iflmap.hcisbp.eu1.hana.ondemand.com/http/Webshop/SalesOrderHistory/SalesOrderSet$filter=Customereq'0050169000'

vs

 https://xxxxxx-iflmap.hcisbp.eu1.hana.ondemand.com/http/Webshop/SalesOrderHistory/SalesOrderSet?$filter=Customereq'0050169000'

那是错误吗?

亲切的问候,

马丁

一周热门 更多>