- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-15-2020 08:02 PM
Hi ServiceNow Community Developers,
Do you guys know if one can use the g_form.setValue() API in a name value pairs field? If so would you please provide examples of how one can go about in doing that.
Thanks,
John
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-15-2020 09:42 PM
Hi,
you need to parse the array of json objects
Sample below
var arr = '[{"variable":"jm_template_variable","type":"xlrelease.StringVariable"},{"variable":"jm_template_var2","type":"xlrelease.StringVariable"},{"variable":"jm_date","type":"xlrelease.DateVariable"},{"variable":"jm_boolean","type":"xlrelease.BooleanVariable"},{"variable":"jm_array","type":"xlrelease.ListStringVariable"},{"variable":"jm_integer","type":"xlrelease.IntegerVariable"}]';
var parser = JSON.parse(arr);
var obj = {};
for(var i=0;i<parser.length;i++){
obj[parser[i].variable] = parser[i].type;
}
g_form.setValue('u_name_value', JSON.stringify(obj));
Output:
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
11-15-2020 09:42 PM
Hi,
you need to parse the array of json objects
Sample below
var arr = '[{"variable":"jm_template_variable","type":"xlrelease.StringVariable"},{"variable":"jm_template_var2","type":"xlrelease.StringVariable"},{"variable":"jm_date","type":"xlrelease.DateVariable"},{"variable":"jm_boolean","type":"xlrelease.BooleanVariable"},{"variable":"jm_array","type":"xlrelease.ListStringVariable"},{"variable":"jm_integer","type":"xlrelease.IntegerVariable"}]';
var parser = JSON.parse(arr);
var obj = {};
for(var i=0;i<parser.length;i++){
obj[parser[i].variable] = parser[i].type;
}
g_form.setValue('u_name_value', JSON.stringify(obj));
Output:
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
11-15-2020 09:56 PM
Thank you very much Ankur, it works. It's been driving crazy for more than 8 hours today. You are the greatest
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-15-2020 10:48 PM
Glad to help.
Happy learning.
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
10-16-2024 06:49 AM
Hi Ankur/ Joe83,
I am also using similar way but it is not working
function onLoad() {
// Type appropriate comment here, and begin script below
alert("OnLoad");
var arr = '[{"name":"jm_template_variable","value":"xlrelease.StringVariable"},{"name":"jm_template_var2","value":"xlrelease.StringVariable"},{"name":"jm_date","value":"xlrelease.DateVariable"},{"name":"jm_boolean","value":"xlrelease.BooleanVariable"},{"name":"jm_array","value":"xlrelease.ListStringVariable"},{"name":"jm_integer","value":"xlrelease.IntegerVariable"}]';
var parser = JSON.parse(arr);
var obj = {};
for (var i = 0; i < parser.length; i++) {
obj[parser[i].name] = parser[i].value;
}
if (g_form.hasField('u_properties')) {
alert( JSON.stringify(obj));
g_form.setValue('u_properties', JSON.stringify(obj));
}
}