-
-
Save cgkio/7520891 to your computer and use it in GitHub Desktop.
POST rows into Google Spreadsheet using Google Apps Script and REST
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* Usage | |
1. Run the setup function (you'll need to do this twice - 1st time to grant acces to Script Properties) | |
2. Share > Publish as service ... set security level and enable service | |
3. Copy the service URL and post this in your form/script action | |
4. Insert column names on the DATA sheet matching the parameter names of the data you are passing | |
*/ | |
function doGet(e) { // change to doPost(e) if you are recieving POST data | |
var ss = SpreadsheetApp.openById(ScriptProperties.getProperty('active')); | |
var sheet = ss.getSheetByName("DATA"); | |
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; //read headers | |
var nextRow = sheet.getLastRow(); // get next row | |
var cell = sheet.getRange('a1'); | |
var col = 0; | |
for (i in headers){ // loop through the headers and if a parameter name matches the header name insert the value | |
if (headers[i] == "Timestamp"){ | |
val = new Date(); | |
} else { | |
val = e.parameter[headers[i]]; | |
} | |
cell.offset(nextRow, col).setValue(val); | |
col++; | |
} | |
//http://www.google.com/support/forum/p/apps-script/thread?tid=04d9d3d4922b8bfb&hl=en | |
var app = UiApp.createApplication(); // included this part for debugging so you can see what data is coming in | |
var panel = app.createVerticalPanel(); | |
for( p in e.parameters){ | |
panel.add(app.createLabel(p +" "+e.parameters[p])); | |
} | |
app.add(panel); | |
return app; | |
} | |
//http://www.google.sc/support/forum/p/apps-script/thread?tid=345591f349a25cb4&hl=en | |
function setUp() { | |
ScriptProperties.setProperty('active', SpreadsheetApp.getActiveSpreadsheet().getId()); | |
} | |
// source: http://mashe.hawksey.info/2011/10/google-spreadsheets-as-a-database-insert-with-apps-script-form-postget-submit-method/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment