我已阅读Installable Triggers上的所有文档以及StackOverflow中的问题,但触发器根本无法根据安装程序的权限运行。他们根据谁在电子表格中进行修改的权限运行,从而触发grab_info
。谷歌脚本:如何使安装程序的权限下安装触发器功能?
根据文档:They run as the user who installed the trigger, not as the user triggering the event.
所以我一直手动删除触发器,重装,运行低于触发的创造者,然后重新加载电子表格。虽然仍然登录触发器工作正常,然后我注销后,触发器不起作用。它在当前用户下运行,而不是安装程序。
我做错了什么?
这里是我的下面创建触发器代码:
function add_trigger() {
ScriptApp.newTrigger('grab_info').forSpreadsheet(SpreadsheetApp.openById('blahblah')).onEdit().create();
}
编辑:
这是当前出现错误的代码:
function grab_info(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var i = sheet.getActiveCell().getRow();
var date = ss.getRange("C" + i);
var due_date = 'test';
date.setValue(due_date);
}
我没有看到你的触发器在你没有登录的时候会停止工作的原因。它会继续在创建触发器的人的权限下运行(使用你的函数)。该规则适用于可安装触发器,无论它是如何创建的,手动或通过函数。 –
是的,这很令人沮丧。我试图在会议中向我的老板展示这一点,并且所有触发器都被打破了。> _ < –