- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-19-2022 04:50 AM
Hi All,
I am filtering out the values from list collector (list_of_devices) which is referencing alm_asset table and another reference is location. So, i want to show only those assets which are from that location.
I have created a client script and a script include. I am able to return the sys_id from script include to client script but not able to set them in list collector. Below is my code:
Script include:
getSiteAssets: function() {
var arr_name = [];
var OtoO = this.getParameter('sysparm_type');
var ast = new GlideRecord('alm_asset');
ast.addQuery('location', OtoO);
ast.query();
while (ast.next()) {
arr_name.push(ast.getUniqueValue());
}
return arr_name.toString();
},
Client script:
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var ga = new GlideAjax('SiteDependentAssets');
ga.addParam('sysparm_name', 'getSiteAssets');
ga.addParam('sysparm_type', newValue);
ga.getXML(parseData);
function parseData(response) {
var answer = response.responseXML.documentElement.getAttribute('answer');
alert(answer);
g_form.setValue('list_of_devices', answer);
}
}
Please help.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-20-2022 02:17 AM
inform business that this is not feasible.
Either tell them
1) you will filter the list collector based on location and let user select the location to right bucket
OR
2) you will set the right bucket with the available assets for location selected and let user remove if they wish to
If my response helped you please mark it correct to close the question so that it benefits future readers as well.
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
‎01-20-2022 01:35 AM
Hi
I used your code in dynamically setting it and it working but it populates the right bucket.
What i need is those result in left bucket and remove all the other values, just the values for that particular location in left bucket.
Could you help with that, please?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-20-2022 01:49 AM
Hi,
it would set right bucket only
why to update the left bucket?
Better you filter the list collector and let user select the values to be pushed to right bucket
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
‎01-20-2022 01:57 AM
yes, you are right but the business requirement kinda forced me to use scripting for this.
Is there any way to do that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-20-2022 02:17 AM
inform business that this is not feasible.
Either tell them
1) you will filter the list collector based on location and let user select the location to right bucket
OR
2) you will set the right bucket with the available assets for location selected and let user remove if they wish to
If my response helped you please mark it correct to close the question so that it benefits future readers as well.
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
‎01-20-2022 02:31 AM
okay, thank you very much !!