使用sapsf odata删除/删除PerEmail实体中的电子邮件地址

2020-08-13 18:48发布

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

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


使用sapsf odata API时,我可以使用upsert和purgeType = full更新和替换PerEmail实体上的现有电子邮件地址。 我还可以删除两个地址之一。
但是我找不到任何有关如何删除一个人的所有(或最后一个)电子邮件地址的文档。 我尝试使用delete命令,还尝试使用upsert和purge并将电子邮件地址设置为null,但是没有任何效果。
所以...我如何进行REST odata调用,以实际删除所有电子邮件地址。 人吗?

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

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


使用sapsf odata API时,我可以使用upsert和purgeType = full更新和替换PerEmail实体上的现有电子邮件地址。 我还可以删除两个地址之一。
但是我找不到任何有关如何删除一个人的所有(或最后一个)电子邮件地址的文档。 我尝试使用delete命令,还尝试使用upsert和purge并将电子邮件地址设置为null,但是没有任何效果。
所以...我如何进行REST odata调用,以实际删除所有电子邮件地址。 人吗?

付费偷看设置
发送
5条回答
软件心理学工程师
1楼-- · 2020-08-13 19:05

仅列出的内容支持这些活动,我没有看到DELETE。

您始终可以在数据字典中或在ODATA API参考库中签入。

完全清除-执行upsert操作时,现有记录将被删除。 使用通过URL参数指定的数据创建新记录。


增量清除-仅清除和替换有效负载中指定的记录。 所有其他记录保持不变。 数据是通过URL参数指定的。

这是KBA参考:

2670250-入站集成的OData操作和清除类型

https://launchpad.support.sap.com/#/notes/2670250

但是您可以使用它

https://launchpad.support.sap.com/#/notes/2375294

2375294-如何为员工中心使用复合删除(批量删除网格Portlet数据)

闻人可可
2楼-- · 2020-08-13 19:21

我需要使用PerEmail更新或替换现有电子邮件作为主要电子邮件。 但是我找不到如何做到这一点。

派大星 ヾ
3楼-- · 2020-08-13 19:04

嗨,

删除电子邮件的唯一释放方式是OData的upsert操作中的" operation"字段(所有其他方法都已弃用(SOAP)或仅供内部使用(OData中的CompoundDelete))。这是用于删除电子邮件的有效内容 103223员工的最后一封电子邮件记录,电子邮件类型为8448

POST <您的API URL>/odata/v2/upsert

授权:基本的<您的base64编码为"基本:apiuser @ company:password">

Content-Type:应用程序/json

{" __metadata":{" uri":" https://apisalesdemo4.successfactors.com :443/odata/v2/PerEmail(emailType ='8448',personIdExternal ='103223')"," type":" SFOData.PerEmail"}," emailType":" 8448"," personIdExternal":" 103223"," operation":" DELIMIT"}

另请参见导入帮助 用于受支持的其他实体。

最好的问候

Gerald

Doze时光
4楼-- · 2020-08-13 19:01
我已经尝试了增量清除方案。 但是,当我尝试将电子邮件替换为"无"时,它拒绝接受。 请参阅附件。

set-email-address-to-null.jpg

何必丶何苦呢
5楼-- · 2020-08-13 19:11

感谢,这一事实也适用于API,不仅适用于文件,还没有在SAP文档中明确记录。 使用API​​而不是仅使用文件导入可以有效地节省生命。 只是想知道API中还存在其他"隐藏的宝石"。

谢谢

马克

一周热门 更多>