Odata发送方适配器批处理请求

2020-08-31 03:25发布

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

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


大家好,

我想在LeadCollection端点上模仿来自SAP Cloud For Customer oData API的oData批处理操作,以创建多个Lead对象。 我使用接收器创建了一个IFlow,并使用Cloud for Customer的EDMX将其配置为LeadCollection端点。 当我发送具有单个更改集的批处理操作时就可以了。 当我发送多个变更集时,我在下面收到错误消息。 跟踪或访问日志中没有此错误的内容。 。 我参考了github文档,标记应该没问题。

请帮助我实现这一目标,我想将此批次用作自定义实现的基础。

Github开发人员批量指南: https://github.com/SAP/C4CODATAAPIDEVGUIGUI#batch
ECC相关信息:https://blogs.sap.com/2017/12/17/implementing-batch-operations-in-odata/

参考问题: https://answers.sap.com/questions/11969450/odata-sadl-batchrequest-with-multiple-changesets-d.html

请帮我解决这个问题,我想将其用作自定义实现的基础。

两个变更集请求:

-batch_guid_01
 内容类型:多部分/混合;  boundary = changeset_guid_01


 --changeset_guid_01
 内容类型:application/http
 内容传输编码:二进制


 POST LeadCollection HTTP/1.1
 内容类型:application/json
 内容长度:10000


 {
   " ObjectID":" 1111",
   " Name":" TestLeadCollection 1",
   " AccountPartyID":" 1000976",
   " ContactID":" 1000337",
   "公司":" Testleadcollection公司1"
 }


 --changeset_guid_01
 内容类型:application/http
 内容传输编码:二进制


 POST LeadCollection HTTP/1.1
 内容类型:application/json
 内容长度:10000


 {
   " ObjectID":" 2222",
   "名称":" TestLeadCollection2",
   " AccountPartyID":" 1000976",
   " ContactID":" 1000337",
   "公司":" Testleadcollection公司2"
 }


 --changeset_guid_01--
 --batch_guid_01--

 

两个变更集响应:

-batch_73428c58-ea9d-49d4-ba22-48d24a66d9e0
 内容类型:application/http
 内容传输编码:二进制


 HTTP/1.1 500内部服务器错误
 DataServiceVersion:1.0
 内容类型:application/atom + xml; charset = utf-8; type = entry
 内容长度:248


 <?xml version ='1.0'encoding ='UTF-8'?> <错误xmlns =" http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">  INTERNAL_SERVER_ERROR  空:交易ID:eed36bd8-f068-4498-a813-20910f073a83  
 --batch_73428c58-ea9d-49d4-ba22-48d24a66d9e0--
 

提前谢谢!

布拉姆

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

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


大家好,

我想在LeadCollection端点上模仿来自SAP Cloud For Customer oData API的oData批处理操作,以创建多个Lead对象。 我使用接收器创建了一个IFlow,并使用Cloud for Customer的EDMX将其配置为LeadCollection端点。 当我发送具有单个更改集的批处理操作时就可以了。 当我发送多个变更集时,我在下面收到错误消息。 跟踪或访问日志中没有此错误的内容。 。 我参考了github文档,标记应该没问题。

请帮助我实现这一目标,我想将此批次用作自定义实现的基础。

Github开发人员批量指南: https://github.com/SAP/C4CODATAAPIDEVGUIGUI#batch
ECC相关信息:https://blogs.sap.com/2017/12/17/implementing-batch-operations-in-odata/

参考问题: https://answers.sap.com/questions/11969450/odata-sadl-batchrequest-with-multiple-changesets-d.html

请帮我解决这个问题,我想将其用作自定义实现的基础。

两个变更集请求:

-batch_guid_01
 内容类型:多部分/混合;  boundary = changeset_guid_01


 --changeset_guid_01
 内容类型:application/http
 内容传输编码:二进制


 POST LeadCollection HTTP/1.1
 内容类型:application/json
 内容长度:10000


 {
   " ObjectID":" 1111",
   " Name":" TestLeadCollection 1",
   " AccountPartyID":" 1000976",
   " ContactID":" 1000337",
   "公司":" Testleadcollection公司1"
 }


 --changeset_guid_01
 内容类型:application/http
 内容传输编码:二进制


 POST LeadCollection HTTP/1.1
 内容类型:application/json
 内容长度:10000


 {
   " ObjectID":" 2222",
   "名称":" TestLeadCollection2",
   " AccountPartyID":" 1000976",
   " ContactID":" 1000337",
   "公司":" Testleadcollection公司2"
 }


 --changeset_guid_01--
 --batch_guid_01--

 

两个变更集响应:

-batch_73428c58-ea9d-49d4-ba22-48d24a66d9e0
 内容类型:application/http
 内容传输编码:二进制


 HTTP/1.1 500内部服务器错误
 DataServiceVersion:1.0
 内容类型:application/atom + xml; charset = utf-8; type = entry
 内容长度:248


 <?xml version ='1.0'encoding ='UTF-8'?> <错误xmlns =" http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">  INTERNAL_SERVER_ERROR  空:交易ID:eed36bd8-f068-4498-a813-20910f073a83  
 --batch_73428c58-ea9d-49d4-ba22-48d24a66d9e0--
 

提前谢谢!

布拉姆

付费偷看设置
发送
3条回答
小熊yu生菜
2楼-- · 2020-08-31 04:16

您好 Saranya Baskaran

是的,您是正确的。 我不知道此功能。

我认为 Bram Keijers 希望在接收方进行批量操作。 如果您在上方更改了您的答案以在两侧都包含批处理操作,则可以关闭该问题。

亲切的问候,

巴拉

当学会了学习
3楼-- · 2020-08-31 04:24

您好布拉姆·凯耶斯

不幸的是,OData Receiver适配器不支持批处理操作。

您必须使用HTTP适配器。

希望这会有所帮助,

巴拉

P.S .:您的问题可能使我对博客有了另一个想法。 ;)

一周热门 更多>