2020-08-15 12:19发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) oModel.create()... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
oModel.create()函数使整个应用程序挂起,直到完成为止。 我无法使用任何繁忙的指示器向用户显示正在发生的事情,因为挂起会停止执行任何其他操作。 无论是true还是false,create()函数调用中的async标志都不会对其造成影响。
有人知道这是否可以解决吗? 谢谢。
我找到了解决方案。 问题的确确实是async为false,即使在函数调用中将参数设置为true也不将其设置为true。
对于其他任何有此问题的人,我发现的解决方案是将呼叫添加到批处理操作中,尽管只是一个请求。 默认情况下,批处理调用是异步的。
var oBusy = new sap.m.BusyDialog();
oBusy.open();
var aBatch = [];
//向阵列添加批处理操作
aBatch.push(oModel.createBatchOperation(sPath," POST",oDataToBeSent));
oModel.addBatchChangeOperations(aBatch);
oModel.submitBatch(
function(evt){//成功
oBusy.close();
sap.m.MessageToast.show("已保存。");
},
function(oError){//失败
//使用状态码执行某些操作,以更好地处理错误
sap.m.MessageToast.show("保存失败。");
console.log(oError);
}
);
旧消息:
我的代码如下: 在将表单数据传递到对象中之后,在onSave()函数中。 oModel.create(sPath,oDataToBeSent,null, function(){ //成功 }, function(err){ console.log(err); }, true//bAsync ); 我注意到请求标头仍然显示" async:false"。 这可能是我问题的根源吗?
我的代码如下:
在将表单数据传递到对象中之后,在onSave()函数中。
oModel.create(sPath,oDataToBeSent,null,
function(){
//成功
function(err){
console.log(err);
true//bAsync
我注意到请求标头仍然显示" async:false"。 这可能是我问题的根源吗?
最多设置5个标签!
我找到了解决方案。 问题的确确实是async为false,即使在函数调用中将参数设置为true也不将其设置为true。
对于其他任何有此问题的人,我发现的解决方案是将呼叫添加到批处理操作中,尽管只是一个请求。 默认情况下,批处理调用是异步的。
var oBusy = new sap.m.BusyDialog();
oBusy.open();
var aBatch = [];
//向阵列添加批处理操作
aBatch.push(oModel.createBatchOperation(sPath," POST",oDataToBeSent));
oModel.addBatchChangeOperations(aBatch);
oModel.submitBatch(
function(evt){//成功
oBusy.close();
sap.m.MessageToast.show("已保存。");
},
function(oError){//失败
//使用状态码执行某些操作,以更好地处理错误
oBusy.close();
sap.m.MessageToast.show("保存失败。");
console.log(oError);
}
);
旧消息:
一周热门 更多>