How to redirect to same page when click on Approve button

Rama Rao
Tera Contributor

Hello,

 

I want to be redirected to the same page when click on E- signature approve button. Is that possible?

 

note: currently it redirects to previous update page

 

Thanks in advance.

11 REPLIES 11

Hello @Maddysunil ,

 

Where can i put that mentioned code?

 

Thanks,

@Rama Rao 

can you paste your code here

 

Hello @Maddysunil @Robbie ,

 

Code

function onApproveClick(){
  var sysID = '';
  if (gel('sys_uniqueValue'))
     sysID = gel('sys_uniqueValue').value;
  var ga = new GlideAjax('ESignatureUtils');
  ga.addParam('sysparm_name','listApprovalCheck');
  ga.addParam('sysparm_target_state', 'approved');
  ga.addParam('sysparm_sys_ids', sysID);
  ga.getXMLAnswer(function(answer){
    if (answer == "prompt_v2") {
        displayGreyout();
        promptCheck(true, 'approve', function(doPrompt, sysID) {  
            if (doPrompt != "true")
                processFormUpdateApprovalCheck("no_prompt", sysID, "sysverb_update");
            else {
                g_form.previousState = g_form.getValue("state");
                g_form.setValue("state", "approved");
                processFormUpdateApprovalCheck("prompt_v2", sysID, "sysverb_update");
            }
        }, sysID);
    } else {
        g_form.previousState = g_form.getValue("state");
        g_form.setValue("state", "approved");
        var button = gel("sysverb_update");
        gsftSubmit(button);
    }
  });
}
RamaRao_0-1716379397370.png
 
 
I tried many things but had no luck. Could you please look into it and suggest?
 
Thanks in advance,

 

@Rama Rao 

 

function onApproveClick() {
    var sysID = '';
    if (gel('sys_uniqueValue'))
        sysID = gel('sys_uniqueValue').value;

    var ga = new GlideAjax('ESignatureUtils');
    ga.addParam('sysparm_name', 'listApprovalCheck');
    ga.addParam('sysparm_target_state', 'approved');
    ga.addParam('sysparm_sys_ids', sysID);

    ga.getXMLAnswer(function(answer) {
        if (answer == "prompt_v2") {
            displayGreyout();
            promptCheck(true, 'approve', function(doPrompt, sysID) {
                if (doPrompt != "true") {
                    processFormUpdateApprovalCheck("no_prompt", sysID, "sysverb_update");
                } else {
                    g_form.previousState = g_form.getValue("state");
                    g_form.setValue("state", "approved");
                    processFormUpdateApprovalCheck("prompt_v2", sysID, "sysverb_update");
                }
            }, sysID);
        } else {
            g_form.previousState = g_form.getValue("state");
            g_form.setValue("state", "approved");
            
            // Use GlideRecord to update the record without redirection
            var gr = new GlideRecord('sysapproval_approver');
            if (gr.get(sysID)) {
                gr.setValue('state', 'approved');
                gr.update();
                
                // Reload the current form to reflect changes
                g_form.refresh();
            }
        }
    });
}

 

Please Mark Correct if this solves your query and also mark 👍Helpful if you find my response worthy based on the impact.

 

Thanks

Hello @Maddysunil ,

This is client-side code and we can not use glide record, right?

 

Thanks,