- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-20-2025 02:49 AM
Hi,
I have two selectbox variables and one reference variable to autopopulate, but one selectbox is not displaying. Kindly help.
GlideAJAX
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
if (newValue == "") {
g_form.setValue('current_primary_approver', "");
g_form.setValue('share_type', "");
g_form.setValue('protocol_type_new', "");
} else {
alert(g_form.getValue('protocol_type_new'));
var ga = new GlideAjax('populate_modify_network');
ga.addParam('sysparm_name', 'get_modify');
ga.addParam('sysparm_share_path', newValue);
ga.getXML(callBackFunction);
function callBackFunction(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
var op = JSON.parse(answer);
g_form.addInfoMessage(answer);
g_form.setValue('current_primary_approver', op.approver);
g_form.setValue('share_type', op.type);
g_form.setValue('protocol_type_new', op.protocol);
}
}
}
ScriptInclude
var populate_modify_network = Class.create();
populate_modify_network.prototype = Object.extendsObject(AbstractAjaxProcessor, {
get_modify : function()
{
var path = this.getParameter('sysparm_share_path');
var values = {};
var gr = new GlideRecord('u_cmdb_ci_file_share');
gr.addQuery('sys_id',path);
gr.query();
if(gr.next())
{
values.approver = gr.managed_by.toString();
values.type = gr.u_type.getDisplayValue();
values.protocol = gr.u_protocol.getDisplayValue();
}
return JSON.stringify(values);
},
type: 'populate_modify_network'
});
Even though Employment Center showing up as the correct protocol, it is not getting into the variable.
Regards
Suman P.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-20-2025 04:47 AM
you should set either of those 2 choice values.
check the value in server side and set it accordingly
var populate_modify_network = Class.create();
populate_modify_network.prototype = Object.extendsObject(AbstractAjaxProcessor, {
get_modify: function() {
var path = this.getParameter('sysparm_share_path');
var values = {};
var gr = new GlideRecord('u_cmdb_ci_file_share');
gr.addQuery('sys_id', path);
gr.query();
if (gr.next()) {
values.approver = gr.managed_by.toString();
values.type = gr.u_type.getDisplayValue();
if (gr.u_protocol.toString() == 'Windows Only')
values.protocol = 'windows';
else
values.protocol = 'multiprotocol';
}
return JSON.stringify(values);
},
type: 'populate_modify_network'
});
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-20-2025 05:58 AM
refer below, you marked your own response as correct
If my response helped, please mark my response as correct.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-20-2025 05:59 AM
Seems you marked it as correct now.
Thanks
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader