我正在尝试创建一个简单的函数,当按下功能区按钮时,将实体属性值设置为 null。现在我面临的问题是,我对实体所做的更改没有保存,表单重新加载并返回以前的值。
我将“任务”活动属性“实际结束”传递给按钮事件。“实际结束”字段默认禁用。
ClearField: function (field) {
if (Xrm.Page.getAttribute(field) == null) return;
Xrm.Page.ui.controls.get(field).setDisabled(false);
Xrm.Page.getAttribute(field).setSubmitMode("always");
Xrm.Page.getAttribute(field).setValue(null);
if (Xrm.Page.data.entity.getIsDirty()) {
Xrm.Page.data.entity.save(); //also tried addOnSave(function)
}
}
在调试器之后,我能够跟踪所有更改是否正确,除了在 save() 方法上它们被“丢弃”,然后使用以前的值重新加载。此代码适用于 CRM UR8,但不适用于 CRM UR13。
我错过了什么吗?