- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-12-2023 07:39 AM - edited ‎05-17-2023 03:53 AM
Hello,
I am currently using a client script, which calls a script include to pull information from a RITM and populate it into a multi-line text field on a record producer but keep getting an error.
I've referenced it with one I created which pulled from a RITM and populated a text field on a catalog item but can't see where it's going wrong - can anyone point me in the right direction?
Thanks in advance.
Client script:
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var gajax = new GlideAjax('LOTH_GetRequestedItemDetails');
gajax.addParam('sysparm_name', 'isRITM');
gajax.addParam('sysparm_ritm', newValue);
gajax.getXML(ajaxResponse);
function ajaxResponse(response) {
var answer = JSON.parse(response.responseXML.documentElement.getAttribute("answer"));
var disputeRequest = 'Request: ' + answer.request;
var disputerequestedFor = 'Requested for: ' + answer.requestedFor;
var disputecontact = 'Contact number: ' + answer.contact;
var disputelocation = 'Location : ' + answer.location;
g_form.setValue('u_requested_item_details', + disputeRequest + disputerequestedFor + disputecontact + disputelocation);
}
}
Script include:
var LOTH_GetRequestedItemDetails = Class.create();
LOTH_GetRequestedItemDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {
isRITM: function() {
var ritm = this.getParameter('sysparm_ritm');
var retRes = {};
//get user record:
var gr = new GlideRecord('sc_req_item');
gr.addQuery('sys_id', ritm);
gr.query();
if (gr.next()) {
retRes.request = gr.request + '\n';
retRes.requestedFor = gr.requestedFor + '\n';
retRes.contact = gr.variables.u_phone_contact + '\n';
retRes.location = gr.variables.u.location + '\n';
}
return new JSON().encode(retRes);
},
type: 'LOTH_GetRequestedItemDetails'
});
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-29-2023 02:56 AM
This was fixed with the following:
Client Script:
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var gajax = new GlideAjax('LOTH_GetRequestedItemDetails');
gajax.addParam('sysparm_name', 'isRITM');
gajax.addParam('sysparm_ritm', newValue);
gajax.getXMLAnswer(ajaxResponse);
}
function ajaxResponse(response) {
var answer = JSON.parse(response);
var disputeRequest = 'Request: ' + answer.request;
var disputeItem = 'Item: ' + answer.item;
var disputeRequestedFor = 'Requested for: ' + answer.requested_for;
var disputeRequestedForID = 'Requested for user ID: ' + answer.requestedForID;
var disputeContact = 'Contact number: ' + answer.contact;
var disputeLocation = 'Location: ' + answer.location;
//var disputeResolver = 'Resolving team: ' + answer.resolver;
//var disputeClosingComments = "Closing comments: " + answer.comments;
g_form.setValue('u_requested_item_details', disputeRequest + '\n' + disputeItem + '\n' + disputeRequestedFor + '\n' + disputeRequestedForID + '\n' + disputeContact + '\n' + disputeLocation); //+ '\n' + disputeResolver + '\n' + disputeClosingComments);
}
Script Include:
var LOTH_GetRequestedItemDetails = Class.create();
LOTH_GetRequestedItemDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {
isRITM: function() {
var ritm = this.getParameter('sysparm_ritm');
var retRes = {};
//get user record:
var gr = new GlideRecord('sc_req_item');
if (!gr.get(ritm)) {
return;
} else {
retRes.request = gr.request.getDisplayValue();
retRes.item = gr.cat_item.getDisplayValue();
retRes.requested_for = gr.request.requested_for.getDisplayValue();
retRes.requestedForID = gr.request.requested_for.user_name.getDisplayValue();
retRes.contact = gr.variables.u_phone_contact.getDisplayValue();
retRes.location = gr.variables.location.getDisplayValue();
//retRes.resolver = gr.sc_task.assignment_group.getDisplayValue();
//retRes.comments = gr.comments;
}
return JSON.stringify(retRes);
},
});

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-17-2023 05:21 AM
Hi,
In the script include
retRes.location = gr.variables.u_location + '\n';
Thanks,
Rahul Kumar
Thanks,
Rahul Kumar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-29-2023 02:56 AM
This was fixed with the following:
Client Script:
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var gajax = new GlideAjax('LOTH_GetRequestedItemDetails');
gajax.addParam('sysparm_name', 'isRITM');
gajax.addParam('sysparm_ritm', newValue);
gajax.getXMLAnswer(ajaxResponse);
}
function ajaxResponse(response) {
var answer = JSON.parse(response);
var disputeRequest = 'Request: ' + answer.request;
var disputeItem = 'Item: ' + answer.item;
var disputeRequestedFor = 'Requested for: ' + answer.requested_for;
var disputeRequestedForID = 'Requested for user ID: ' + answer.requestedForID;
var disputeContact = 'Contact number: ' + answer.contact;
var disputeLocation = 'Location: ' + answer.location;
//var disputeResolver = 'Resolving team: ' + answer.resolver;
//var disputeClosingComments = "Closing comments: " + answer.comments;
g_form.setValue('u_requested_item_details', disputeRequest + '\n' + disputeItem + '\n' + disputeRequestedFor + '\n' + disputeRequestedForID + '\n' + disputeContact + '\n' + disputeLocation); //+ '\n' + disputeResolver + '\n' + disputeClosingComments);
}
Script Include:
var LOTH_GetRequestedItemDetails = Class.create();
LOTH_GetRequestedItemDetails.prototype = Object.extendsObject(AbstractAjaxProcessor, {
isRITM: function() {
var ritm = this.getParameter('sysparm_ritm');
var retRes = {};
//get user record:
var gr = new GlideRecord('sc_req_item');
if (!gr.get(ritm)) {
return;
} else {
retRes.request = gr.request.getDisplayValue();
retRes.item = gr.cat_item.getDisplayValue();
retRes.requested_for = gr.request.requested_for.getDisplayValue();
retRes.requestedForID = gr.request.requested_for.user_name.getDisplayValue();
retRes.contact = gr.variables.u_phone_contact.getDisplayValue();
retRes.location = gr.variables.location.getDisplayValue();
//retRes.resolver = gr.sc_task.assignment_group.getDisplayValue();
//retRes.comments = gr.comments;
}
return JSON.stringify(retRes);
},
});