diff --git a/APPL/MLD/mld_cancelworkflow.asp b/APPL/MLD/mld_cancelworkflow.asp index 9a16225ef3..0fc29becf3 100644 --- a/APPL/MLD/mld_cancelworkflow.asp +++ b/APPL/MLD/mld_cancelworkflow.asp @@ -45,10 +45,9 @@ user.anything_todo_or_abort(mld_info.workflowRoot && user.has(autfunction) && S( function mld_cont_callback(json, textStatus) { if (json.success) - FcltMgr.closeDetail(window, { cancel: true } ); + FcltCallbackClose(json); else iface.button.enable("btn_cont_submit"); - FcltCallbackClose(json); } function mld_cancel() diff --git a/APPL/MLD/mld_cancelworkflow_save.asp b/APPL/MLD/mld_cancelworkflow_save.asp index 0a3924255f..9c44f28d04 100644 --- a/APPL/MLD/mld_cancelworkflow_save.asp +++ b/APPL/MLD/mld_cancelworkflow_save.asp @@ -16,8 +16,11 @@ var JSON_Result = true; <% -function workflow_tree(mld_key) +function workflow_tree(mld_key, org_mld_key) { + if (!org_mld_key) + org_mld_key = mld_key; + var sql = "SELECT mld_melding_key" + " , mld_melding_status" + " FROM mld_melding" @@ -32,38 +35,40 @@ function workflow_tree(mld_key) if (inArray(statusopdr, [0,2,3,4,7])) { // Sluit deze actieve melding - cancel_workflowstep(next_mld_key); + cancel_workflowstep(next_mld_key, org_mld_key); } // Als niet zichzelf dan volgend niveau if (next_mld_key != mld_key) { - workflow_tree(next_mld_key); + workflow_tree(next_mld_key, org_mld_key); } oRs.MoveNext(); } oRs.Close(); } -function cancel_workflowstep(mld_key) +function cancel_workflowstep(next_mld_key, org_mld_key) { var sql_u = "UPDATE mld_melding" + " SET mld_melding_status = 1" - + " WHERE mld_melding_key = " + mld_key; + + " WHERE mld_melding_key = " + next_mld_key; Oracle.Execute(sql_u); var sql_i = "INSERT INTO mld_melding_note" + "( mld_melding_key" + ", prs_perslid_key" + ", mld_melding_note_omschrijving" + ") VALUES" - + "(" + mld_key + + "(" + next_mld_key + "," + user_key + "," + safe.quoted_sql(mld_opmerking) + ")"; Oracle.Execute(sql_i); // tracking: Vervolgmelding {0} is afgesloten. - var melding_nr = mld.mld_prefix(mld_key) || mld_key; - shared.trackaction("#MLDAFM", mld_key, L("lcl_mld_cancel_workflow_tracking").format(melding_nr)); + var melding_nr_next = mld.mld_prefix(next_mld_key) || next_mld_key; + var melding_nr_org = mld.mld_prefix(org_mld_key) || org_mld_key; + var msg = ( next_mld_key == org_mld_key ? melding_nr_org : melding_nr_next + " (@ " + melding_nr_org + ")" ); + shared.trackaction("#MLDAFM", next_mld_key, L("lcl_mld_cancel_workflow_tracking").format(msg) ); } protectRequest.validateToken();