javascript - Google Script createEvent() 函数突然停止工作
问题描述
最后,我能够创建将自动更新日历中的事件的功能。我对其进行了测试,它运行良好;它将在日历中添加新事件,当用户编辑它时,它将删除以前的事件并创建新事件以及新的 ID。
然而第二天,当我再次测试时,它不起作用,我检查了code.gs中的所有函数,只有这个函数有问题。
function updateCalendar(request) {
var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = sheet.getLastRow();
var range = sheet.getRange(2,1,lastRow,13);
var values = range.getDisplayValues();
var calendar = CalendarApp.getCalendarById('XXXXXXXXXXXXXXXXXXX@group.calendar.google.com');
var numValues = 0;
for (var i = 0; i < values.length; i++) {
if (values[i][0].length > 0) {
if (values[i][12] == undefined) {
var newEvent = calendar.createEvent("booked", request.date, request.endTime);
var newEventId = newEvent.getId().split('@')[0];
//mark as entered, enter ID
sheet.getRange(i+2,13).setValue('y');
sheet.getRange(i+2,12).setValue(newEventId);
}
else if (values[i][12] == 'y') {
var eventEditId = calendar.getEventSeriesById(values[i][11]);
eventEditId.deleteEventSeries();
var newEvent = calendar.createEvent("booked", request.date, request.endTime);
var newEventId = newEvent.getId().split('@')[0];;
//mark as entered, enter ID
sheet.getRange(i+2,13).setValue('y');
sheet.getRange(i+2,12).setValue(newEventId);
}
}
numValues++;
}
};
我还检查了日历设置和内容,并确保我已登录到管理员帐户。非常感谢任何帮助,在此先感谢。
解决方案
我只是将 "undefined" 更改为简单的空字符串 ' ' ,它再次起作用。但同样,出于某种原因,我很好奇为什么它上次使用“未定义”命令
推荐阅读
- asp.net - IIS 8.5 配置导致 Sitefinity 12.1 动态链接创建问题 (ASP.NET .NET 4.7.2)
- bash - 使用 awk 有条件地对 jq 文件中的数字求和
- python - Django Rest Framework TypeError 需要一个类似字节的对象,而不是'str'
- amazon-web-services - 如何在多个子网上运行 AWS EMR 集群?
- datetime - 如何很好地将 Neo4J 日期映射到 dateTime 字符串?
- r - R:使用收集来清理数据集
- excel - 返回第一个单元格中具有特定值的两个单元格之间的差异
- rust - 如何在同一项目的同一目录中包含另一个文件中的文件?
- python - 根据内部字典中的条件获取特定键 - python
- python - Python – Simplex 为原始和对偶返回不同的值