Approvals for users on list collectors depending on variable (workflow)

Magali Legaspi
Tera Contributor

Hello all!

 

I need urgent help with this issue. I need to create an approval for users present on two different list collector variables on a form with different conditions. I can't make the code work:

 

 

answer = myScript();

function myScript() {
approvers = [];
    var checkboxPartner = current.variables.check_here_if_partner_is_not;
    var budget = current.variables.budget_amount;
    // Partner Approval
    if (checkboxPartner == false) {
        approvers.push(current.variables.partner_sponsor_name.toString());
    }

    gs.log("Maga@ answer before script: " + approvers);
    // Budget Owner Approval
    if (budget == true) {
        approvers.push(current.variables.budget_holder_name.toString());
    }
gs.log("Maga@ answer after script: " + approvers);
answer = approvers;
return approvers;
}

 

 

partner_sponsor_name and budget_holder_name are the list collectors. I need to get all users from those two list collectors as approvers on approval user task on workflow.

Any help is much appreciated.

Thank you!

1 REPLY 1

Sandeep Rajput
Tera Patron
Tera Patron

@Magali Legaspi Update your code as follows and see it it works.

 

answer = myScript();

function myScript() {
approvers = [];
    var checkboxPartner = current.variables.check_here_if_partner_is_not;
    var budget = current.variables.budget_amount;
    // Partner Approval
    if (checkboxPartner == false) {
        //approvers.push(current.variables.partner_sponsor_name.toString());
        var sponsorArray = current.variables.partner_sponsor_name.split(',');
        for(var i=0;i<sponsorArray.length;i++){
            approvers.push(sponsorArray[i]+'');
        }
    }

    gs.log("Maga@ answer before script: " + approvers);
    // Budget Owner Approval
    if (budget == true) {
      //approvers.push(current.variables.budget_holder_name.toString());
        var budgetArray = current.variables.budget_holder_name.split(',');
        for(var j=0;j<budgetArray.length;j++){
            approvers.push(budgetArray[j]+'');
        }
        
    }
gs.log("Maga@ answer after script: " + approvers);
answer = approvers;
return approvers;
}

Hope this helps.