- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 08:28 AM
I currently am working on a catalog item. I have a variable that uses a list collector for the computer table. On the form you can select multiple computers by name. In my workflow I create an incident and set the description to list the list collector results. It returns the sysid and not the computer name. I checked dictionary to make sure I wasn't crazy and the name field is set to name. I was looking at functions on the variable in the flow designer but not sure how I can fix this. When I had it set to reference where only one record can be selected it worked properly but when I changed it to multi select I started having this issue.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 11:22 AM
Give this a try
var comp = fd_data._1__get_catalog_variables.server.toString();
var str = '';
if (comp != '') {
var compList = comp.split(',');
for (i = 0; i < compList.length; i++) {
var grComp = new GlideRecord('cmdb_ci_computer');
grComp.addQuery('sys_id', compList[i]);
grComp.query();
while (grComp.next()) {
str += grComp.name + ', ';
}}}
return str;
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 10:53 AM
What is the trigger for your flow designer and on which table is the server field created
Can you share flow designer snaps, that would help in getting the first line right in script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 10:58 AM
The trigger is a catalog item.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 11:03 AM
Try with below script and see if it works
var comp = fd_data.trigger.variables.server.toString();
var str = '';
if (comp != '') {
var compList = comp.split(',');
for (i = 0; i < compList.length; i++) {
var grComp = new GlideRecord('cmdb_ci_computer');
grComp.addQuery('sys_id', compList[i]);
grComp.query();
while (grComp.next()) {
str += grComp.name + ', ';
}}}
return str;
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 11:07 AM
I get the following when attempting to activate.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-06-2023 11:22 AM
Give this a try
var comp = fd_data._1__get_catalog_variables.server.toString();
var str = '';
if (comp != '') {
var compList = comp.split(',');
for (i = 0; i < compList.length; i++) {
var grComp = new GlideRecord('cmdb_ci_computer');
grComp.addQuery('sys_id', compList[i]);
grComp.query();
while (grComp.next()) {
str += grComp.name + ', ';
}}}
return str;