2014-01-20 250 views
0

首先,如果已經得到解答,我想表示歉意。我當然希望不會。Google Apps腳本觸發電子郵件通知

無論如何,這裏是我在做什麼的想法。

使用Google雲端硬盤,用戶應該能夠填寫表單並提交。 在提交表單時,會觸發一個腳本。 腳本應該向我們域中的帳戶發送電子郵件,以通知他們已提交新表單。

下面是我用做腳本:

function emailnotifacs1() { 
var recipient = "[email protected]"; 
var subject = "New Form Is In!"; 
var body = "Check the spreadsheet." + 
" Link: spreadsheetLink.com"; 
MailApp.sendEmail(recipient, subject, body); 

} 

出於某種原因,每次我嘗試調試腳本,它要求我每一次重新授權的腳本,從字面上看

而每一次的腳本會自動運行(在提交),它不運行在所有的,給我這個電子郵件: You do not have permission to call openById 它觸發formEdit

任何幫助將不勝感激,並返回免費的互聯網餅乾。

謝謝,
亞歷克斯·李

回答

0

您可以嘗試觸發emailnotifacs1()與「關於提交表單」,而不是 ,也許分享更多的代碼,如果不解決這個問題

0

據​​,要解決它,你必須預先授權將要運行的功能。要做到這一點,你可以進入你的腳本編輯器並運行該功能。但是,如果你的函數是爲了在觸發器上運行,你將無法直接從腳本編輯器運行你的函數(例如,我的函數只能在onSubmit上運行,並且它會對錶單已經提交,所以如果我從腳本編輯器運行它,我會得到錯誤,因爲表單不存在)。

因此,我將代碼封裝在try-catch循環中的觸發函數中,從腳本編輯器菜單運行它,瞧,我的代碼開始工作。

另外,就您的情況而言,您可能需要檢查是否正確設置了觸發器,以便在表單提交時調用emailnotifacs1emailnotifacs1應該接受event參數 - 有關更多信息,請參閱here

注意:每次對功能進行更改時,都需要通過從腳本編輯器運行它來重新授權它!

相關問題