Hi, just evaluating Smartclient 9.0 and found the need for this patch that does a null check on records at the top
Code:
if (window.isc && isc.version.startsWith("v9.0")){ isc.ListGrid.getPrototype().addProperties({ // getSummaryValue() - generic handler to take a bunch of records and a field definition and // return the summary value from them. Used for both grid level summaries and group-level summaries getSummaryValue : function (records, field) { //7/31/13.. needed null check here if(records==null){ return null; } // pull out any records where includeInSummary is false var includedRecords = []; for (var i = 0; i < records.length; i++) { var record = records[i]; if (!record || (record[this.includeInSummaryProperty] == false)) continue; includedRecords[includedRecords.length] = record; } var summaryFunction = this.getGridSummaryFunction(field); if (summaryFunction != null) { if (!isc.isAn.Array(summaryFunction)) { summaryFunction = [summaryFunction] } var results = []; for (var i = 0; i < summaryFunction.length; i++) { var currentFunction = summaryFunction[i]; if (currentFunction != null) { var r = isc.SimpleType.applySummaryFunction(includedRecords, // Pass the component into 'applySummaryFunction' as // an extra, undocumented param. // We use this to handle resolving "absolute" dataPaths // on fields field, currentFunction, this); if (!r) r = 0; results[i] = r; } } return results; } return null; } }) }
Comment