有关业务合作伙伴的SDK API的问题

2020-09-08 08:54发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 我对业务合作伙伴S...

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

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


专家您好,

我对业务合作伙伴SDK API有一些疑问。 以下是业务伙伴的结构。 希望有您的建议。

 {
     "生意伙伴": "",
      ...
    
     " to_BusinessPartnerAddress":[{
         ...
         }
     ]
 } 

1。 我想获得业务伙伴以及地址数据。 但是地址数据不会在方法getAllBusinessPartner中返回。 这是否意味着我需要调用方法getAllBusinessPartnerAddress以获得基于业务伙伴编号的地址数据?

2。 什么是支持模糊搜索的SDK API? filter()或withCustomQueryParameter()方法?

3。 如何同时更新业务伙伴常规数据和地址数据? 似乎我无法设置

to_BusinessPartnerAddress,然后进行更新。 它确实支持POST操作。 POST的请求有效负载如下。

 {
     " BusinessPartner":" 1534",
     " LastName":" Jerry",
     " to_BusinessPartnerAddress":[{
         " Country":" DE",
         " StreetName":" Dietmar-Hopp-Allee 16",
         " PostalCode":" 69190",
         " CityName":" Walldorf",
         " to_AddressUsage":[{
         " AddressUsage":" XXDEFAULT"}]
     }]
 } 
2条回答
落灬小鱼
2020-09-08 09:59 .采纳回答

你好杰瑞,

> 我希望获得业务伙伴以及地址数据。 但是地址数据不会在方法getAllBusinessPartner中返回。 这是否意味着我需要调用方法getAllBusinessPartnerAddress以获得基于业务伙伴编号的地址数据?

如果您打算使用OData V2子实体扩展,建议将相应的字段添加到 select 方法:

服务
   .getAllBusinessPartner()
   。选择(
     BusinessPartner.FIRST_NAME,
     BusinessPartner.LAST_NAME,
     BusinessPartner.TO_BUSINESS_PARTNER_ADDRESS//您可以在此处链接属性
   )


>什么是支持模糊搜索的SDK API? filter()或withCustomQueryParameter()方法?

很遗憾,SAP Cloud SDK尚不支持此功能,但已在我们的积压中。 解决方法是,指定一个自定义过滤器,例如:

服务
   .getAllBusinessPartner()
   .withCustomQueryParameter(" $ filter"," substringof('Foo',LastName)eq true")
 

请注意,并非所有的SAP OData服务端点实际都支持自定义过滤器。 请检查您的浏览器或邮递员,该服务如何响应您的请求。 另外请记住,通过添加自定义" $ filter",您无法使用 filter(...)方法添加API过滤器。


>如何同时更新业务伙伴常规数据和地址数据?

OData V2不支持此功能。 您将需要迭代嵌套的更新操作。 请注意,仅在基本实体上进行更改时,不需要更新子实体。

例如,如果您只想更新BusinessPartner上的字段,则不需要更新地址。 另一方面,如果要更新BusinessPartnerAddress的字段,只需使用专用服务即可。 在这种情况下,不会碰到BusinessPartner。

最好的问候

亚历山大

一周热门 更多>