【发布时间】:2014-09-07 17:18:00
【问题描述】:
我正在创建一个脚本,该脚本从表单中获取信息并将其写入日历。当我在脚本编辑器中运行脚本时,它运行良好,从电子表格中获取信息并创建一个日历事件。但是,当我填写表格并提交(提交是触发器)时,我收到一条错误消息,指出我无权调用 getActiveForm()。我拥有表格和日历。我很欣赏任何想法。
代码
function createEvent() {
var calendarToUse = "testing";
var ssUrlToUse ='https://docs.google.com/a/bay.k12.fl.us/spreadsheets
/d/1ZTDQL9G5U7RqbbKQbAfb3ERqFwpSsC3EOQxdD1zdQwA/edit#gid=441997215';
/* Get Canalnder*/
var calen = CalendarApp.getCalendarsByName(calendarToUse);
var cal = calen[0];
Logger.log(cal.getName());
/* get info from responses*/
var mySS
=SpreadsheetApp.openByUrl(ssUrlToUse).getActiveSheet()
Logger.log(mySS.getName());
var values = mySS.getDataRange().getValues();
var response = values[values.length-1];
var i=2;
var desc = response[i];
var loc = response[i+1];
var start = makeGreatDate( response[i+2], response[i+4]);
var end = makeGreatDate(response[i+3],response[i+6]);
var title = response[i+5];
/* populate calendar event*/
var event = cal.createEvent(title, start, end, {
description : desc,
location : loc
});
};
function makeGreatDate(date, time) {
var day = new Date(date);
day.setHours(time.getHours());
day.setMinutes(time.getMinutes());
Logger.log( "The Date is"+ day);
return day;
}
【问题讨论】:
-
您的代码示例不包含对
getActiveForm()的调用,请更新。
标签: google-apps-script permissions google-forms