
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2019 10:09 PM
Hi,
I want to auto-populate the equivalent Server Environment of each Server CI selected in Server CI (List) field. But I am only getting the first value and the rest was just a comma.
Here are my scripts:
1. Script Include:
2. Client Script:
Thank you for your answer! 🙂
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2019 11:05 PM
try now.
Script Include:
var watch = Class.create();
watch.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getEmail: function()
{
var abc=[];
var arr=[];
var et = this.getParameter('sysparm_user_name');
gs.log('value of is val length'+et);
var res = et.split(',');
gs.log('length of array is'+res.length);
for(var i=0;i<res.length;i++){
var gr = new GlideRecord('cmdb_ci');
gr.get('sys_id',res[i]);
abc.push(gr.u_environment);
}
return abc.join(',');
},
type: 'watch'
});
Client Script:
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
//Type appropriate comment here, and begin script below
var abc= g_form.getValue('u_related_ci').toString();
var ga = new GlideAjax('watch');
ga.addParam('sysparm_name', 'getEmail');
ga.addParam('sysparm_user_name', abc);
ga.getXML(HelloWorldParse);
function HelloWorldParse(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.setValue('u_server_env',answer);
}
}

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2019 11:05 PM
try now.
Script Include:
var watch = Class.create();
watch.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getEmail: function()
{
var abc=[];
var arr=[];
var et = this.getParameter('sysparm_user_name');
gs.log('value of is val length'+et);
var res = et.split(',');
gs.log('length of array is'+res.length);
for(var i=0;i<res.length;i++){
var gr = new GlideRecord('cmdb_ci');
gr.get('sys_id',res[i]);
abc.push(gr.u_environment);
}
return abc.join(',');
},
type: 'watch'
});
Client Script:
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
//Type appropriate comment here, and begin script below
var abc= g_form.getValue('u_related_ci').toString();
var ga = new GlideAjax('watch');
ga.addParam('sysparm_name', 'getEmail');
ga.addParam('sysparm_user_name', abc);
ga.getXML(HelloWorldParse);
function HelloWorldParse(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
g_form.setValue('u_server_env',answer);
}
}

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-07-2019 01:50 AM
Hi Harshvardhan,
Thank you for your response.
I try this script but it only displays the first 2 values.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-07-2019 01:52 AM
Hi,
Add a condition in server side that
gr.u_environment !=''
Thanks

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-07-2019 01:55 AM
On my script?
Or in Harshvardhan's script?