- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-20-2022 06:16 AM
Hi SNC,
GlideAjax returning null value.
Where i am doing wrong?
Script Include
checkTheExisingPachingRequest: function(AppServiceId, reqStartDate, reqEndDate) {
var appserviceId = this.getParameter('sysparm_Appci') || AppServiceId;
var sDate = this.getParameter('sysparm_reqStartDate') || reqStartDate;
var eDate = this.getParameter('sysparm_reqEndDate') || reqEndDate;
gs.log("appserviceId >> " + appserviceId);
gs.log("sDate >> " + sDate);
gs.log("eDate >> " + eDate);
Catalog Client Script
function onSubmit() {
//Type appropriate comment here, and begin script below
// >> topic >> getting boolen value server_patching_request
var server_patching_request_true_or_false = g_form.getValue('server_patching_request');
var application_choosen = g_form.getValue('application_service');
var start_time_choosen = g_form.getValue('start_timestamp');
var end_time_choosen = g_form.getValue('end_timestamp');
//alert(server_patching_request_true_or_false + " >> " + g_form.getValue('application_service') + " >> " + g_form.getValue('start_timestamp') + " >> " + g_form.getValue('end_timestamp'));
// >> topic >> initiate GlideAjax and pass the above values
var gjx = new GlideAjax('WOWserverbookerUtils');
gjx.addParam('sysparm_name', 'checkTheExisingPachingRequest');
gjx.addParam('sysparm_Appci', application_choosen);
gjx.addParam('sysparm_reqStartDate', start_time_choosen);
gjx.addParam('sysparm_reqEndDate', end_time_choosen);
gjx.getXML(CallBack);
alert(JSON.stringify(gjx));
function CallBack(response) {
var output = response.responseXML.documentElement.getAttribute("answer");
alert(output);
}
}
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-21-2022 11:46 PM
Update the below line as below and try.
var arrAppServiceID = appserviceId.toString().split(',');
Replaced "AppServiceId" with "appServiceId".
Muhammad

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-20-2022 09:39 AM
Kindly share screenshot of your script include.
Also, Can you confirm on these?
1. Do you have client callable marked as true on the script include
2. Functional parameters doesn't work in GlideAjax functions, so remove those, since you will be explicitly passing details using addParams function
Aman Kumar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-21-2022 10:53 PM
checkTheExisingPachingRequest: function(AppServiceId, reqStartDate, reqEndDate) {
gs.log("catalog client script calling checkTheExisingPachingRequest day_M2 >> ");
var appserviceId = this.getParameter('sysparm_Appci') || AppServiceId;
var sDate = this.getParameter('sysparm_reqStartDate') || reqStartDate;
var eDate = this.getParameter('sysparm_reqEndDate') || reqEndDate;
gs.log("appserviceId > in script inc > day_M2 called " + appserviceId);
gs.log("sDate > in script inc > day_M2 called " + sDate);
gs.log("eDate > in script inc > day_M2 called " + eDate);
var dateStart = new GlideDateTime();
dateStart.setDisplayValue(sDate, "dd-MM-yyyy hh:mm a");
gs.log("sDate_into_sDis > in script inc > day_M2 called " + sDate);
gs.log("dateStart.setDisplayValue > in script inc > day_M2 called " + dateStart.setDisplayValue(sDate, "dd-MM-yyyy hh:mm a"));
var dateEnd = new GlideDateTime();
dateEnd.setDisplayValue(eDate, "dd-MM-yyyy hh:mm a");
gs.log("eDate_into_sDis > in script inc > day_M2 called " + eDate);
gs.log("dateEnd.setDisplayValue > in script inc > day_M2 called " + dateEnd.setDisplayValue(sDate, "dd-MM-yyyy hh:mm a"));
var arrAppServiceID = AppServiceId.toString().split(',');
gs.log("arrAppServiceID >> day_M2 >>" + arrAppServiceID);
var finalServerList = '';
var returnval = '';
for (var i = 0; i < arrAppServiceID.length; i++) {
var gr = GlideRecord('cmdb_ci');
gr.get(arrAppServiceID[i]);
gs.log("gr.get(arrAppServiceID[i]) > day_M2 called " + gr.get(arrAppServiceID[i]));
finalServerList = this.ServerCIsImpactedByCI(arrAppServiceID[i]);
gs.log("finalServerList > day_M2 called " + finalServerList);
var request_count = 0;
var server_count = finalServerList.length;
var ritm_numbers = '';
var req_check = new GlideRecord('sc_req_item');
req_check.addQuery('variables.f589271edb1155145b8645521596192f', true);
req_check.addEncodedQuery("cat_item=1e804c12db573450530b322af4961904^active=true^variables.09d9ef9edb1155145b864552159619d0IN" + finalServerList.toString());
req_check.query();
while (req_check.next()) {
var startdateQuery = new GlideDateTime(req_check.variables.start_timestamp);
var enddateQuery = new GlideDateTime(req_check.variables.end_timestamp);
gs.log("startdateQuery > in script inc > day_M2 called " + startdateQuery);
gs.log("enddateQuery > in script inc > day_M2 called " + enddateQuery);
gs.log("req_check.variables.start_timestamp > in script inc > day_M2 called " + req_check.variables.start_timestamp);
gs.log("req_check.variables.end_timestamp > in script inc > day_M2 called " + req_check.variables.end_timestamp);
if (((dateStart.compareTo(startdateQuery) == 1 || dateStart.compareTo(startdateQuery) == 0) && dateStart.compareTo(enddateQuery) == -1) || ((dateEnd.compareTo(startdateQuery) == 1 || dateEnd.compareTo(startdateQuery) == 0) && dateEnd.compareTo(enddateQuery) == -1)) {
request_count = request_count + 1;
ritm_numbers = ritm_numbers + req_check.number + ',';
}
}
gs.log("returnval > before if in script inc > day_M2 called in.loop >> " + returnval);
if (request_count == server_count) {
gs.log("request_count == server_count >in script inc> day_M2 " + request_count == server_count);
var strNumber = ritm_numbers.substring(0, ritm_numbers.length - 1);
returnval = returnval + 'Booking request for ' + gr.name + ' can not be submitted as all the server are schedule with pacthcing request(' + strNumber + ')';
gs.log("returnval > in script inc > day_M2 called in.loop >> " + returnval);
}
}
gs.log("returnval >> day_M2 called " + returnval);
return returnval;
},
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-21-2022 10:55 PM
The reason is :
dateStart.setDisplayValue(sDate, "dd-MM-yyyy hh:mm a");
dateEnd.setDisplayValue(eDate, "dd-MM-yyyy hh:mm a");
var arrAppServiceID = AppServiceId.toString().split(',');
These are returning "undefined".
BUT - When i try in bg.script, I get expected output.
++
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-21-2022 11:09 PM
Hi,
Don't use gs.log() but use gs.info()
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-21-2022 11:25 PM
I will follow this practice, Thanks!!
This below changes have fixed the date value from undefined.
checkTheExisingPachingRequest: function(AppServiceId, reqStartDate, reqEndDate) {
gs.log("catalog client script calling checkTheExisingPachingRequest day_M2 >> ");
var appserviceId = this.getParameter('sysparm_Appci') || AppServiceId;
var sDate = this.getParameter('sysparm_reqStartDate') || reqStartDate;
var eDate = this.getParameter('sysparm_reqEndDate') || reqEndDate;