- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-12-2015 02:44 PM
Function below outputs the correct count of each "u_process_attribute.u_name" however it doesn't print the name of the u_process_attribute.u_name. Thoughts?
getRating: function(assessment) {
var assessment_sys_id = assessment; // Change this to do calculations on other assessments
var count = new GlideAggregate('u_itsm_question_instance');
count.addQuery('u_assessment', assessment_sys_id);
count.addAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
count.query();
while (count.next()) {
var categoryCount = count.getAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
gs.log("There are currently " + categoryCount + " questions with a process attribute of " + count.u_question_definition.u_process_attribute.u_name);
}
return;
}
Below is the output:
There are currently 3 questions with a process attribute of
There are currently 4 questions with a process attribute of
There are currently 2 questions with a process attribute of
There are currently 3 questions with a process attribute of
There are currently 3 questions with a process attribute of
There are currently 5 questions with a process attribute of
There are currently 8 questions with a process attribute of
There are currently 2 questions with a process attribute of
There are currently 3 questions with a process attribute of
There are currently 2 questions with a process attribute of
There are currently 2 questions with a process attribute of
There are currently 9 questions with a process attribute of
There are currently 2 questions with a process attribute of
There are currently 3 questions with a process attribute of
There are currently 5 questions with a process attribute of
There are currently 7 questions with a process attribute of
There are currently 4 questions with a process attribute of
There are currently 5 questions with a process attribute of
There are currently 12 questions with a process attribute of
There are currently 1 questions with a process attribute of
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-15-2015 09:25 AM
Hi Ashish,
I have had a similar experience with GlideAjax and one weird quirk is that in this case you have to use the getValue function to retrieve your dot walked value. I am not sure why this is the case, possibly a detail in the object relational mapping, but I do know that this does tend to work:
getRating: function(assessment) {
var assessment_sys_id = assessment; // Change this to do calculations on other assessments
var count = new GlideAggregate('u_itsm_question_instance');
count.addQuery('u_assessment', assessment_sys_id);
count.addAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
count.query();
while (count.next()) {
var categoryCount = count.getAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
gs.log("There are currently " + categoryCount + " questions with a process attribute of " + count.getValue('u_question_definition.u_process_attribute.u_name'));
}
return;
}
Notice the change on line 10.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-15-2015 09:25 AM
Hi Ashish,
I have had a similar experience with GlideAjax and one weird quirk is that in this case you have to use the getValue function to retrieve your dot walked value. I am not sure why this is the case, possibly a detail in the object relational mapping, but I do know that this does tend to work:
getRating: function(assessment) {
var assessment_sys_id = assessment; // Change this to do calculations on other assessments
var count = new GlideAggregate('u_itsm_question_instance');
count.addQuery('u_assessment', assessment_sys_id);
count.addAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
count.query();
while (count.next()) {
var categoryCount = count.getAggregate('COUNT', 'u_question_definition.u_process_attribute.u_name');
gs.log("There are currently " + categoryCount + " questions with a process attribute of " + count.getValue('u_question_definition.u_process_attribute.u_name'));
}
return;
}
Notice the change on line 10.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-15-2015 09:34 AM
Agree with Travis.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-15-2015 10:11 AM
Just tried this solution and it worked!
Thanks Travis and Saritha!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-02-2018 11:31 AM
Hi,
I am stuck up with the similar thing, I want to replace the location field with caller's location in the below script, however if I do it is not working. Can you please help me, we are not using location field on the incident and it has to be done with callers location.
When I enter dot walking it is returning the record, but I am missing, some where, so posted the original OOB code, itself, can any one help me
//get the instances url so we can link back to it
var uri = gs.getProperty("glide.servlet.uri");
//create an aggregate query on the incident table
var count = new GlideAggregate('incident');
//set condition for active incidents
count.addQuery('active', 'true');
//set aggregate field to location to get count by location
count.addAggregate('COUNT', 'location');
//execute the query
count.query();
//loop through the results
while (count.next()) {
//get the current record's location
var loc = count.location;
//get the count of incidents for this locationa
var locCount = count.getAggregate('COUNT', 'location');
//only display location is there are active incidents
if (locCount > 0) {
//create new new map item for this location
var item = map.addItem(count);
//set lat/long from the location record
item.latitude = String(loc.latitude);
item.longitude = String(loc.longitude);
//create a marker label with the count
item.marker_label = locCount;
//define label offset for proper position
item.label_offset_left = -4;
item.label_offset_top = -20;
//option to define table and record for label hyperlink
//setting table and sys_id will override the use of html parameter
//item.table = 'cmn_location';
//item.sys_id = loc;
//build the link to the list of incidents for the location
var link = 'href=' + uri + 'incident_list.do?sysparm_query=active%3Dtrue^location%3D' + loc;
//build the html value to be displayed when you click the map icon
item.html='<a ' + link + '>' + loc.getDisplayValue() + ' (' + locCount + ')</a>';
//link to the icon image
item.icon = "images/red_marker.png";
//set the size of the icon based on the number of active incidents
item.icon_width = 24;
item.icon_height = 24;
}
}