2016-09-02 41 views
13

Bir forogle formundan forFembSubmit() tetikleyiciyi kullanarak forma bağlı bir komut dosyası kullanarak yanıt ayrıntılarını toplamaya çalışıyorum.Form formunda alınan Google formları olayı hiç yanıt vermiyor

Çoğu zaman detaylar hatasız olarak alınır, ancak bir kerede bir hata alıyorum. Tetik alındı, ancak komut dosyasına hiçbir veri iletilmedi. Yanıt google form konsolu tarafından alınır, ancak komut dosyasına yönlendirilmez. Veri alabilmesi için

Kodu: hata durumunda

function onFormSubmit(e) 
{ 

    Logger.log("A response has been received!"); 
    Logger.log(e); 
    var resp = e.response.getItemResponses(); //capturing trigger event output 
    var form = e.source; 
...... 

Yürütme dökümü:

[16-09-27 07:29:15:073 PDT] Starting execution 
[16-09-27 07:29:15:096 PDT] Logger.log([A response has been received!, []]) [0 seconds] 
[16-09-27 07:29:15:097 PDT] Logger.log([{authMode=FULL, triggerUid=xxxxxxx41}, []]) [0 seconds] 
[16-09-27 07:29:15:099 PDT] Execution failed: TypeError: Cannot call method "getItemResponses" of undefined. (line 18, file "Code") [0.002 seconds total runtime] 

Şu ana kadar, formunu çoğaltarak ve tüm izinleri yeniden ayarlayarak bunu telafi gelmiş. Ama bunu tekrar yapmama neden olan bir çözüm istiyorum. Benim 10 yinelenen şimdi :(herkes bu sorunu karşılaştığı mı? başarıyla yanıtları almak edildiğinde !!

yardım edin, e yanı bir yanıt anahtarı vardı.

+0

Kullanıcının yanıt verdiği doğrulandı mı? –

+0

Evet. Yanıt, ilgili form için Google formları kontrol panelinde kaydedilir. –

+0

Bize kodunuzu gösterebilir misiniz? – Fralec

cevap

5

Bu Senaryonu önlemek gerektiğini etrafında bir iştir bölünmesini.

function onFormSubmit(e) 
{ 
    Logger.log("A response has been received!"); 
    // Check if e is defined 
    if (e) { 
    // Any code that use e should be inside this block 
    Logger.log(e); 
    var resp = e.response.getItemResponses(); //capturing trigger event output 
    var form = e.source; 
    } else { 
    // Log if e is undefined 
    Logger.log('e is undefined!'); 
    } 
...... 

sana, google destek sorunu incelemeye başvurmalısınız özellikle konsolda yanıtını görebilirsiniz Rubén katılıyorum

0

sen aktif tetikleyiciler içine geri dönmek zorunda kalabilirsiniz,tetiği silin, yeniden ekleyin ve yeni erişim bilgileri için sizi uyarır.