【发布时间】:2018-01-18 04:22:03
【问题描述】:
我编写了一个函数 FillMissingEvents(),它基本上编辑了我使用 Google 表格网络应用程序构建的数据记录器的最后一行缺失的数据。
手动调用函数时,效果很好。
是否可以在每次执行 doGet() 后自动执行我的函数?
我找不到其他方法来调用它:FillMissingEvents();
日志记录功能也在 doGet() 中工作吗?不能让它工作。
谢谢!
function FillMissingEvents(){
Logger.log("Execution started");
var ss = SpreadsheetApp.getActiveSpreadsheet();
//give your sheet name below instead of Sheet1
var sheet = ss.getSheetByName("Sheet1");
var datarange = sheet.getDataRange();
var lastrow = datarange.getLastRow();
var lastcolumn = datarange.getLastColumn();
for (i=1;i<=lastcolumn;i++) {
var testvalue = sheet.getRange(lastrow, i).getValue();
if (typeof testvalue == 'string' && testvalue=="")
{
var newvalue = sheet.getRange(lastrow - 1, i).getValue();
sheet.getRange(lastrow, i).setValue(newvalue);
}
}
}
function doGet(request) {
if(request != null) {
//******* CODE
}
FillMissingEvents();
}
编辑:我在不增加版本的情况下发布 Web 应用程序。现在完美运行!谢谢!
【问题讨论】:
-
在运行 Google 网络应用时,日志记录功能受到严重限制。但是,您可以在电子表格中创建一个新工作表并将您的运行记录到该工作表中。
-
确保重新部署您的网络应用并在版本号中选择新的,以便网络应用更新并运行最新代码。
-
如果您找到了解决方案,请与我们分享,以便其他人学习。
标签: web-applications google-apps-script google-sheets-api google-sheets-query