JavaScript CRM 表单的 serviceIsBusy 错误 OnSave?
JavaScript serviceIsBusy error OnSave of CRM form?
CRM 365 内部部署。
我有一个 Accounts.js
,其中包含针对该示例简化的以下代码:
Xrm.Page.data.save().then(
function() {
Xrm.Utility.alertDialog("Record saved");
},
function(error) {
Xrm.Utility.alertDialog(error.message);
});
想法是表单保存,然后当异步保存完成时它会触发警告对话框说 'record saved'。
问题是错误函数正在被触发,但错误只是'serviceIsBusy'。
任何人都可以解释如何解决这个问题或问题是什么吗?
实际上Xrm.Page.data.save()
是从实体表单调用相同的保存按钮动作,但是如果你从表单保存事件本身调用这个方法,那么它会在循环中结束。
由于您希望使用 .then()
处理程序来满足自定义需求,您可以阻止默认的 save
操作并像您一样调用手动 save
。
你可以理解形式this community thread。
function onSave(context){
context.getEventArgs().preventDefault();
Xrm.Page.data.save().then(
function() {
Xrm.Utility.alertDialog("Record saved");
},
function(error) {
Xrm.Utility.alertDialog(error.message);
});
}
遗憾的是,官方方法不适用于 OnPremise CRM 365。我完全不知道为什么,甚至没有时间进行故障排除。
我在堆栈溢出的某处找到的解决方案是这种'old'方式:
//trigger form save and wait 1 sec
Xrm.Page.data.entity.save();
setTimeout(function () {
saveAccountOK(context);
}, 3000);
CRM 365 内部部署。
我有一个 Accounts.js
,其中包含针对该示例简化的以下代码:
Xrm.Page.data.save().then(
function() {
Xrm.Utility.alertDialog("Record saved");
},
function(error) {
Xrm.Utility.alertDialog(error.message);
});
想法是表单保存,然后当异步保存完成时它会触发警告对话框说 'record saved'。
问题是错误函数正在被触发,但错误只是'serviceIsBusy'。
任何人都可以解释如何解决这个问题或问题是什么吗?
实际上Xrm.Page.data.save()
是从实体表单调用相同的保存按钮动作,但是如果你从表单保存事件本身调用这个方法,那么它会在循环中结束。
由于您希望使用 .then()
处理程序来满足自定义需求,您可以阻止默认的 save
操作并像您一样调用手动 save
。
你可以理解形式this community thread。
function onSave(context){
context.getEventArgs().preventDefault();
Xrm.Page.data.save().then(
function() {
Xrm.Utility.alertDialog("Record saved");
},
function(error) {
Xrm.Utility.alertDialog(error.message);
});
}
遗憾的是,官方方法不适用于 OnPremise CRM 365。我完全不知道为什么,甚至没有时间进行故障排除。
我在堆栈溢出的某处找到的解决方案是这种'old'方式:
//trigger form save and wait 1 sec
Xrm.Page.data.entity.save();
setTimeout(function () {
saveAccountOK(context);
}, 3000);