Detached Apps Script




通常Apps Script會Binding在一份文件上,但是使用的情境上,如果永遠讓文件與Script做Binding,就缺少了些操縱的快感.... 例如,需要動態產生表單,並且讓表單自動的Binding onFormSubmit的Event….

下面就是這段範例,執行createFormTrigger之後,ID為 '1hCg1vS…..Qm5-Q'的文件(必須要是Form啦,這個Trigger是針對Form動作的),就會附加上onFormSubmit的Event,而Event的內容,則是同一份Script中的runCommand function,也就是由ScriptApp所new的Trigger名稱:


function createFormTrigger() {

 var fid = '1hCg1vS…..Qm5-Q';

 // Create onEdit trigger using sheet ID

 ScriptApp.newTrigger("runCommand").forForm(fid).onFormSubmit().create();

}


function runCommand(){

 Logger.log('TEST......' + new Date());

}


上面的Script可以搭配Driver來使用,例如指定某個Forder下的文件都要附加上某個Trigger,這樣以後Create在那個Folder下的文件,就都會具備同樣的Event...