I created a one question form this morning because I wanted to look at the event block for myself. However, the process took an unexpected turn for me. My description follows:
I'm logging the onFormSubmit event with the following code:
function testFormSubmission(e) {
var lock=LockService.getUserLock();
try{
if(lock.tryLock(30000)) {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('LogSheet');
var tA=[Utilities.formatDate(new Date(), Session.getScriptTimeZone(),"d/M/yyyy HH:mm:ss")];
tA=tA.concat(e.values);
tA.splice(tA.length-1,1,e.triggerUid,e.range.rowStart,e.range.columnEnd,JSON.stringify(e.values));
sh.appendRow(tA);
lock.releaseLock();
}
}
catch (e){throw("Couldn\'t get lock for 30 seconds");return;};
}
I have two images of my spreadsheet below:
There's actually only two columns in e.values one is the date and one is the answer to the question which is either "green" or "blue". The blank columns come from the fact that I started with three questions and collecting emails but decided to remove two of them for simplicity, since I'm generating the submissions myself.
Anyway the responses that don't have either Green or Blue in columnC just shouldn't be there. Column J is simply JSON.stringify(e.values)
and it seems to suggest that e has incorrect values in it...I think? Yes/No
Here's an image of the Spreadsheet. (some of it)
This is the Form Responses 1 Sheet:
This is the LogSheet:
So my question is simply where are the unwanted appended lines in the Log Sheet coming from?
I updated my title question because I don't think I'm getting multiple submissions otherwise I'd expect to have multiple lines in Form Responses 1 sheet.
For your information columnH in LogSheet is rowStart so it's easy to figure out what row in Form Response 1 correlates.