我有一个谷歌脚本,我希望每个工作日上午8:11自动运行。我已经设置了我的时区以确保一切正确,但它似乎永远不会正常工作。我在脚本方面仍然很弱。有没有人在这个脚本中看到我可能有错误的地方?
function myFunction(){
try {
var d = new Date();
if (d.getDay() == 6 || d.getDay() == 0) return;
if (d.getHours() != 08 && d.getMinutes() != 11) return; // This will stop the script from running unless it is 8:11am
} catch (e) {
MailApp.sendEmail("pthompson@ucc.on.ca", "Error report", e.message);
}
}
谢谢,
保
答案 0 :(得分:0)
要基于时间运行功能,请使用“时间驱动”事件设置项目触发器(在“资源”选项卡下)。您甚至可以设置通知。
如果您想以编程方式管理此触发器,可以执行以下操作:
function createTimeTrigger() {
// Once a day at 8AM, near minute 11 for function 'writeSomething()'
var dailyHourNearMinute = ScriptApp.newTrigger("writeSomething")
.timeBased()
.everyDays(1)
.atHour(8)
.nearMinute(11)
.create();
}
您会注意到这会为您创建一个触发器,可以在“当前项目的触发器”下查看。它会说在上午8点到9点之间。至于谷歌时间事件,他们在一小时内得到它,但不是在确切的分钟。系统中的负载也可以将其关闭。所以,你真正计划的最好的是,早上8点到9点之间。