我正在使用 13 列和最多 10-12000 行的 Google 电子表格从日托机构收集服务数据。
为了创建每周服务报告,我通过以下语句将整个表提取到数组中:
//Fetch all required data and pack it into an array
var DataRange = Konsoblatt.getRange(StartRow, 1, NumRows, ColumnEmailAddressTageseltern) //Define required data range: all rows and columns up to the email address of the parents
var AlleEintraege = DataRange.getValues(); //Fetch all data in defined range
这总是完美的。
要编译报告,我需要使用以下服务对获取的数据进行排序:
AlleEintraege.sort(ArraySort(ColumnDatumLeistung-1)); //Sort array for the date of the service
其中指的是:
function ArraySort(column) {
//Diese Funktion sortiert ein Array nach der Kolonne "column"
return function (a,b) {
a = a[column];
b = b[column];
return a == b ? 0 : (a < b ? -1 : 1)
}
return 0;
}
与电子表格的大小无关,这通常可以正常工作,但有时会导致“服务器错误”而没有更详细的描述。
我首先认为电子表格中的日期可能无效,但到目前为止还没有找到。当发生此服务器错误时,我需要做的就是按服务日期手动对电子表格进行排序,然后上述功能可以正常工作。
我在排序算法方面并没有真正的经验,并在互联网上复制了上面的示例作为示例。
关于我为什么不时遇到这个问题的任何想法?
非常感谢
亨氏