Script Include

sarika ponnagan
Tera Contributor

In my PDI script Include is not running, while i verified in background script the code is working fine, Created script include and added script include in on change client script, the script include itself not working in my PDI, may i know the reason behind this

1 ACCEPTED SOLUTION

@sarika ponnagan Try this 

var Ifuserismanager = Class.create();
Ifuserismanager.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    isUserManager: function() {
        gs.log("checking the manager");
        var userId = this.getParameter('sysparm_user_sys_id');
        var grReportee = new GlideRecord('sys_user');
        grReportee.addQuery('manager', userId);
        grReportee.setLimit(1);
        grReportee.query();
        if (grReportee.next()) {
            gs.log("user is manager");
            return true;
        }
        gs.log("user is not a manager");
        return false;
    },
    type: 'Ifuserismanager'
});

✔️ If this solves your issue, please mark it as Correct.


✔️ If you found it helpful, please mark it as Helpful.



Shubham Jain


View solution in original post

15 REPLIES 15

@sarika ponnagan  Can you help with error snapshot? Let us know exactly where you stuck 

✔️ If this solves your issue, please mark it as Correct.


✔️ If you found it helpful, please mark it as Helpful.



Shubham Jain


I am not getting any error, i added the log after the calling function its showing in logs, but here its not going to the loop

var Ifuserismanager = Class.create();
Ifuserismanager.prototype = Object.extendsObject(AbstractAjaxProcessor, {

      isUserManager: function() {
        gs.log("checking the manager");
         var userId = this.getParameter('sysparm_user_sys_id');

        // Check if user is listed as manager of anyone
        var grReportee = new GlideRecord('sys_user');
        grReportee.addQuery('manager', userId);
        grReportee.setLimit(1);
        grReportee.query();
        if (grReportee.next()) {
            return true;
            gs.log("user is manager");
        }
    },

    type: 'Ifuserismanager'
});

@sarika ponnagan Try this 

var Ifuserismanager = Class.create();
Ifuserismanager.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    isUserManager: function() {
        gs.log("checking the manager");
        var userId = this.getParameter('sysparm_user_sys_id');
        var grReportee = new GlideRecord('sys_user');
        grReportee.addQuery('manager', userId);
        grReportee.setLimit(1);
        grReportee.query();
        if (grReportee.next()) {
            gs.log("user is manager");
            return true;
        }
        gs.log("user is not a manager");
        return false;
    },
    type: 'Ifuserismanager'
});

✔️ If this solves your issue, please mark it as Correct.


✔️ If you found it helpful, please mark it as Helpful.



Shubham Jain


Now its not triggering the catalog client script,

   var ga = new GlideAjax('Ifuserismanager');
    ga.addParam('sysparm_name', 'isUserManager');
    ga.addParam('sysparm_user_sys_id', g_form.getValue('employee_name'));
    //ga.addParam('sysparm_user_sys_id', newValue);
    ga.getXMLAnswer(getResult);

    function getResult(response) {
        var answer = response.responseXML.documentElement.getAttribute("answer");
        if (answer == true) {
            alert('The selected user is a manager.');
        }

    }

Getting below error

sarikaponnagan_0-1752079276364.png