Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

how to pass the script include data to catalog client script

Deepa12
Tera Contributor

Hi,

 

i was trying to get the value from script include to catalog client script on load, but i am getting null value only. let me know any correction in the below script: thanks.

function onLoad() {
   //Type appropriate comment here, and begin script below
    //alert("ID = " + g_user.userID);
    var ga = new GlideAjax('getUserDetails');
    ga.addParam('sysparm_name', 'userFunc1');
  //  ga.addParam('sysparm_sys_id', g_user.userID);
    ga.getXML(updateUserHandler);

    function updateUserHandler(response){
        var answer = response.responseXML.documentElement.getAttribute("answer");
        alert("answer = " + JSON.parse(answer));
       // alert( " answer1 = " + JSON.stringify(answer));
   
        g_form.setValue("test", answer);
    }
Script Include:
userFunc1: function(check){
    var usr = new GlideRecord('sys_user');
usr.addQuery('sys_id', gs.getUserID());
usr.query();
while(usr.next())
{
    var name = usr.user_name.toString();
    return name;

}
},
   

   
}
1 ACCEPTED SOLUTION

SN_Learn
Kilo Patron
Kilo Patron

Hi @Deepa12 ,

 

Please try the below, working in PDI:

 

Script Include:

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

    userFunc1: function(check) {
        var usr = new GlideRecord('sys_user');
        if (usr.get(gs.getUserID())) {
            var usrName = usr.name.toString();
        }
        return usrName;
    },

    type: 'getUserDetails'
});

 

onLoad Catalog client script:

function onLoad() {

    var ga = new GlideAjax('getUserDetails');
    ga.addParam('sysparm_name', 'userFunc1');
    ga.getXML(updateUserHandler);

    function updateUserHandler(response) {
        var answer = response.responseXML.documentElement.getAttribute("answer");
        g_form.setValue("test", answer);
    }
}

 

Output:

SN_Learn_0-1720379806141.png

 

 

 

Mark this as Helpful / Accept the Solution if this helps

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.

View solution in original post

2 REPLIES 2

Satishkumar B
Giga Sage
Giga Sage

Hi @Deepa12 


Client Script (Catalog Client Script On Load)


function onLoad() {
var ga = new GlideAjax('getUserDetails');
ga.addParam('sysparm_name', 'userFunc1');
ga.getXML(answerHandler);
}

function answerHandler(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
if (answer) {
var parsedAnswer = JSON.parse(answer);
g_form.setValue("test", parsedAnswer);
} else {
console.log("No valid answer received.");
}
}
```

Script Include


var getUserDetails = Class.create();
getUserDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {
userFunc1: function() {
var usr = new GlideRecord('sys_user');
usr.addQuery('sys_id', gs.getUserID());
usr.query();
if (usr.next()) {
var name = usr.user_name.toString();
return name;
} else {
return null;
}
}
});

———————————————-
Please consider marking my reply as Helpful👍 and/or Accept Solution☑️, if applicable. Thanks!

SN_Learn
Kilo Patron
Kilo Patron

Hi @Deepa12 ,

 

Please try the below, working in PDI:

 

Script Include:

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

    userFunc1: function(check) {
        var usr = new GlideRecord('sys_user');
        if (usr.get(gs.getUserID())) {
            var usrName = usr.name.toString();
        }
        return usrName;
    },

    type: 'getUserDetails'
});

 

onLoad Catalog client script:

function onLoad() {

    var ga = new GlideAjax('getUserDetails');
    ga.addParam('sysparm_name', 'userFunc1');
    ga.getXML(updateUserHandler);

    function updateUserHandler(response) {
        var answer = response.responseXML.documentElement.getAttribute("answer");
        g_form.setValue("test", answer);
    }
}

 

Output:

SN_Learn_0-1720379806141.png

 

 

 

Mark this as Helpful / Accept the Solution if this helps

----------------------------------------------------------------
Mark this as Helpful / Accept the Solution if this helps.