Need help in the scripting to display the array values while using GlideAggregate
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2022 12:14 AM
Hi,
We are using Glide Aggregate and trying to display the values of the incident number in an array as output but we are not able to display the values. If you use GlideRecord we are able to display the value and the below script is working for GlideRecord but not for Glide Aggregate. Can anyone please help us with the issue.
var score='';
var scoreJson=[];
var scanApp = new GlideAggregate('incident'); // if we use Glide Record below script is working
scanApp.addEncodedQuery("state!=7^short_description!=NULL");
scanApp.groupBy('sys_created_by');
scanApp.orderByDesc('sys_created_on');
scanApp.getRowCount();
scanApp.query();
gs.info(scanApp.getRowCount());
while(scanApp.next()){
score=scanApp.getDisplayValue("number");
scoreJson.push(score.toString());
}
gs.info(scoreJson);
Output - while using Glide Aggregate -
Output while using Glide Record
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2022 12:29 AM
Hi Maradani,
You need to add scanApp.groupBy('number'); before the query. I tried and its working.
Please mark correct if helpful.
Regards,
Vaibhav Dane
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2022 12:56 AM
Thank you Vaibhav
It is working fine.
Can you please help me in the script as well. In my script I am trying to group all the sys_created_by field and display the latest created record for each user.
I am getting the count as 9 but only one record is displaying.
[13:13] chiranjeevi Thirumandyam
var score='';
var scoreJson=[];
var scanApp = new GlideAggregate('incident');
scanApp.addEncodedQuery("state!=7^short_description!=NULL");
scanApp.groupBy('sys_created_by');
scanApp.setLimit();
scanApp.orderByDesc('sys_created_on');
scanApp.groupBy('number');
scanApp.query();
gs.info(scanApp.getRowCount());
while(scanApp.next()){
score=scanApp.getDisplayValue("number");
}
scoreJson.push(score.toString());
}
gs.info(scoreJson);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2022 12:59 AM
Hi,
your line
scoreJson.push(score.toString());
should be inside while loop.
Thanks,
Sagar Pagar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-23-2022 02:13 AM
Hi Maradani,
You can use below code:
var score='';
var scoreJson=[];
var user = '';
var scanApp = new GlideAggregate('incident');
scanApp.addEncodedQuery("state!=7^short_description!=NULL");
scanApp.groupBy('sys_created_by');
scanApp.orderByDesc('sys_created_on');
scanApp.groupBy('number');
scanApp.query();
gs.info(scanApp.getRowCount());
while(scanApp.next()){
if(scanApp.getDisplayValue("sys_created_by") != user ){
score=scanApp.getDisplayValue("number");
scoreJson.push(score.toString());
}
user = scanApp.getDisplayValue("sys_created_by");
}
gs.info(scoreJson);
Please mark correct if helpful.
Regards,
Vaibhav Dane