diff --git a/o2web/source/x_component_process_Xform/Form.js b/o2web/source/x_component_process_Xform/Form.js index e241d166029ae3875e340ea61091ef7b12aefc67..2dba59bf67b8dfac70a9e7d8729f6d492eedb7d2 100644 --- a/o2web/source/x_component_process_Xform/Form.js +++ b/o2web/source/x_component_process_Xform/Form.js @@ -1570,14 +1570,19 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class( if (editor.docToWord) p.push(new Promise(function(resolve){ editor.docToWord(resolve) })); }); Promise.all(p).then(function(){ - this.workAction.saveData(callback || function () { }, failure, this.businessData.work.id, this.modifedData); + this.workAction.saveData(function () { + this.businessData.originalData = null; + this.businessData.originalData = Object.clone(data); + if(callback)callback(); + }.bind(this), failure, this.businessData.work.id, this.modifedData); }.bind(this)); }else{ - this.workAction.saveData(callback || function () { }, failure, this.businessData.work.id, this.modifedData); + this.workAction.saveData(function () { + this.businessData.originalData = null; + this.businessData.originalData = Object.clone(data); + if(callback)callback(); + }.bind(this), failure, this.businessData.work.id, this.modifedData); } - - this.businessData.originalData = null; - this.businessData.originalData = Object.clone(data); }, saveFormDataDraft: function (callback, failure, history, data, issubmit, isstart) { if (this.officeList) { @@ -1592,6 +1597,10 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class( "identity": this.businessData.work.creatorIdentityDn } this.workAction.saveDraft(draft, function (json) { + + this.businessData.originalData = null; + this.businessData.originalData = Object.clone(data); + this.workAction.getDraft(json.data.id, function (json) { this.businessData.work = json.data.work; this.app.options.draftId = json.data.work.id; @@ -1618,8 +1627,6 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class( }.bind(this)); }.bind(this), failure); - this.businessData.originalData = null; - this.businessData.originalData = Object.clone(data); }, setProcessorSectionOrgList: function (data) { if (!this.routeDataList) this.getRouteDataList();