OData服务中的UPSERT

2020-09-08 03:10发布

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

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


尊敬的SAP专家

我们找到了以下帮助页面,其中介绍了OData服务中UPSERT方法的使用:

https://view.sap.com。 e0cd7c1ecf3d4f2f9feb46ec1c5b68fb/1905.500/zh-CN/07b1d8e18d924f5ba8bf5275e40a3ee4.html

不幸的是,它没有解释如何实现它。 此外,我们无法理解UPSERT方法是仅更新标题还是自定义业务对象的项目。

您能帮助我们吗?

我们想使用UPSERT方法而不是调用SAP Marketing Cloud来检索SAP UUID,然后使用POST(在SAP_UUID为空的情况下)或PUT方法。

谢谢。

问候。

安德里亚

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

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


尊敬的SAP专家

我们找到了以下帮助页面,其中介绍了OData服务中UPSERT方法的使用:

https://view.sap.com。 e0cd7c1ecf3d4f2f9feb46ec1c5b68fb/1905.500/zh-CN/07b1d8e18d924f5ba8bf5275e40a3ee4.html

不幸的是,它没有解释如何实现它。 此外,我们无法理解UPSERT方法是仅更新标题还是自定义业务对象的项目。

您能帮助我们吗?

我们想使用UPSERT方法而不是调用SAP Marketing Cloud来检索SAP UUID,然后使用POST(在SAP_UUID为空的情况下)或PUT方法。

谢谢。

问候。

安德里亚

付费偷看设置
发送
3条回答
能不能别闹
1楼 · 2020-09-08 03:45.采纳回答

安德烈亚斯,你好

我们在我们的项目中使用" Upsert"来存储员工的标题信息,并通过查看URL参数的结构,我怀疑您是否也可以更新items属性,但是也许SAP可以证实其中的一些内容。 一样。

从实现的角度来看,这是步骤:

1。 创建一个CBO。 确保发布CBO时已选中"服务生成"。

2。 生成创建自定义交流场景和安排。

3。 调用元数据URL并获取upsert FunctionImport/Action名称。 要获取元数据URL,请在步骤2中创建的通信安排中参考入站服务URL。

4。 在元数据中,只需查找名为" Sap_upsert"的字符串,即可定位函数导入。

function-import-xml.png

5。 考虑到CBO结构是:

ID:CHAR10(密钥)

名称:Char 50

电子邮件:字符50

然后将要触发进行upsert操作的URL,如下所示:

https://my30XXXX-api.s4hana.ondemand.com/sap/opu/odata/sap/YY1_EMPLOYEE_CDS/YY1_EMPLOYEESap_upsert?ID='123'&Name='Employee 2'&Email='bllll@sap.co.in '->这是一个没有正文且带有CSRF令牌的POST呼叫

这里YY1_EMPLOYEE是我的CBO ID,而YY1_EMPLOYEESap_upsert是我从步骤3获得的函数导入。其余ID,名称,电子邮件是我的字段。 这些区分大小写,建议检查元数据中的确切字段ID。

要注意的重要一点是,即使仅更新字段的1个字段,也需要将根节点的所有字段传递给URL。

希望这会有所帮助。

谢谢

Saurabh

Baoming ROSE
2楼-- · 2020-09-08 03:46

亲爱的索拉布,

非常感谢您的回答和详细的解释!

我将等待对SAP的确认,以便了解是否也可以使用upsert更新项目。

同时,我将在CBO的标头上测试upsert函数。

再次感谢您。

问候。

Andrea

吹牛啤
3楼-- · 2020-09-08 03:28

尊敬的SAP专家,

任何人都可以确认UPSERT方法是否可以用于更新CBO的项目或仅更新标头吗?

谢谢。

问候。

安德里亚

一周热门 更多>