Notifications

71 views

Description

 

Description


When rendering a list, a user has the option of clicking on a particular column header and selecting the Configure > List Calculations option and add in some aggregate functions (eg., MIN, MAX, AVG).  These aggregated values are shown in the footer section of the list below the corresponding field.  While this may be beneficial in some cases, it can also cause additional performance overhead when rendering the list, especially when dealing with large data sets.  This knowledge article demonstrates how one can programmatically clear/reset all such settings for a particular table and field. 

 

Procedure


Navigate to the System Maintenance > Scripts - Background module, copy the following snippet of javascript into the field labeled "", and click on the Run Script button.

removeCalculations('sys_user', 'sys_mod_count');

function removeCalculations(pTableName, pColumnName) {
    if ((pTableName) && (pColumnName)) {
        var grList = new GlideRecord('sys_ui_list');
        grList.addEncodedQuery('name=' + pTableName);
        grList.query();
        while (grList.next()) {
            // For each List, search the list elements for the columnname
            var grListElement = new GlideRecord('sys_ui_list_element');
            grListElement.addEncodedQuery('list_id=' + grList.sys_id + '^element=sys_mod_count');
            grListElement.query();
            while (grListElement.next()) {
                grListElement.average_value = 0;
                grListElement.max_value = 0;
                grListElement.min_value = 0;
                grListElement.sum = 0;
                grListElement.update();
            }
        }
    }
}

Applicable Versions


All

 

Article Information

Last Updated:2019-08-26 19:03:50
Published:2019-08-27