2020-09-12 06:58发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家您好, 我有一个场景... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家您好,
我有一个场景,我必须使用v2 OData模型在单个批处理调用中一起执行创建(深层实体)和更新操作。
我一次测试了单个操作,并且工作正常。 但是,当我尝试在单个批处理调用中同时执行更新和创建时,它仅执行更新并为创建给出超时错误。 我尝试了" groupId"和" changeSetId"的各种组合,但是没有用。
注意:在V2 OData模型中,是否可以在单个批处理调用中同时执行创建和更新?
此致
Archana
是的,当我为每种请求类型设置后端断点时,(更新和创建请求)都到达后端。
问题是,当我同时提到groupId和deferred groups时,它尝试同时运行两个请求,并给出Socket连接超时错误。 因此,没有任何请求得到执行。
所以我必须为两个请求都提到groupId和deferred groups。 但是这样做后,它在chrome开发人员工具的"网络"标签中显示了两个单独的$ batch调用,这是错误的,因为它应该在具有单个$ batch条目的同一批处理调用中。
下面是我正在尝试的代码:
oModel.create("/img/EntitySet1",request,{groupId:" batchUpdateGroup1"}); ---->包含标题和子字段(深实体结构)的请求
oModel.update("/img/EntitySet2(DoId = guid \'" + request.Id +" \',Isflag ='X')",请求,{groupId:" batchUpdateGroup2"}); >
oModel.setUseBatch(true);
oModel.setDefaultBindingMode(" TwoWay");
oModel.setDeferredGroups([" batchUpdateGroup1"]);
var aDeferredGroups = oModel.getDeferredGroups();
aDeferredGroups = aDeferredGroups.concat([" batchUpdateGroup2"]);
oModel.setDeferredGroups(aDeferredGroups);
oModel.submitChanges({aDeferredGroups,成功:function(oData,oResponse){},错误:function(oError){}});
在这里,我可以看到2个批处理调用。这是预期的行为吗?是否可以在单个$ batch中进行两个调用?
最多设置5个标签!
是的,当我为每种请求类型设置后端断点时,(更新和创建请求)都到达后端。
问题是,当我同时提到groupId和deferred groups时,它尝试同时运行两个请求,并给出Socket连接超时错误。 因此,没有任何请求得到执行。
所以我必须为两个请求都提到groupId和deferred groups。 但是这样做后,它在chrome开发人员工具的"网络"标签中显示了两个单独的$ batch调用,这是错误的,因为它应该在具有单个$ batch条目的同一批处理调用中。
下面是我正在尝试的代码:
oModel.create("/img/EntitySet1",request,{groupId:" batchUpdateGroup1"}); ---->包含标题和子字段(深实体结构)的请求
oModel.update("/img/EntitySet2(DoId = guid \'" + request.Id +" \',Isflag ='X')",请求,{groupId:" batchUpdateGroup2"});
>
oModel.setUseBatch(true);
oModel.setDefaultBindingMode(" TwoWay");
oModel.setDeferredGroups([" batchUpdateGroup1"]);
var aDeferredGroups = oModel.getDeferredGroups();
aDeferredGroups = aDeferredGroups.concat([" batchUpdateGroup2"]);
oModel.setDeferredGroups(aDeferredGroups);
oModel.submitChanges({aDeferredGroups,成功:function(oData,oResponse){},错误:function(oError){}});
在这里,我可以看到2个批处理调用。这是预期的行为吗?是否可以在单个$ batch中进行两个调用?
此致
Archana
一周热门 更多>