2013-05-03 12 views
7

Abbiamo un'esigenza molto specifica. Vogliamo creare un sistema di registrazione generico (basato su Java) per gli organizzatori di eventi. Quindi ogni organizzatore di eventi può definire un modulo personalizzato sulla nostra applicazione e quindi raccogliamo i dati dagli utenti per quel particolare evento.Come creare e gestire in modo programmatico Google Forms tramite l'API dell'elenco documenti di Google

Ora i campi di input possono passare da evento a evento, quindi ho pensato di utilizzare una soluzione cloud pronta per l'uso. Una cosa ovvia mi è venuta in mente di utilizzare Google Forms. Così, per ogni evento, se siamo in grado di programmazione di creare un modulo di Google e ottenere dopo 2 cose: 1) Collegamento Incorpora per quella forma 2) L'accesso ai corrispondenti dati di mantenere Google Spreadsheet

Possiamo usare il link embed per mostrare la Modulo di registrazione per gli utenti nella pagina degli eventi. E possiamo accedere al Google Spreadsheet per accedere ai dati che gli utenti hanno compilato nel modulo di registrazione.

Ma quando ho cercato, non ho potuto ottenere un modo chiaro per raggiungere questo obiettivo. Esistono alcune API dell'elenco di Google Documenti, attraverso le quali è possibile creare documenti Google a livello di codice, ma non sono riuscito a capire come soddisfare le nostre esigenze attraverso questa API.

Sarebbe di grande aiuto, se qualcuno ci può guidare in questo senso. Oppure suggerirci qualsiasi soluzione cloud alternativa.

AGGIORNAMENTO: Sembra che Google non fornisca affatto un'API per i moduli collegati con i fogli di calcolo. http://goo.gl/ia8rk Se siamo fortunati, potrebbero includere nelle loro versioni future. Quindi qualsiasi altra API basata su cloud che possa essere utile per questo problema ??

risposta

0

Se ho capito correttamente, hai un foglio Google e vuoi un modo per generare automaticamente un modulo. Quella forma generata dovrebbe collegare le sue risposte a quel foglio di calcolo. È corretto?

Non conosco un modo per farlo con Java (se c'è un'API disponibile per questo, non penso) ma che può essere facilmente realizzato con Google Scripts. Questo è stato creato nell'editor di script di un foglio di calcolo di Google.

Ecco un esempio:

function onOpen() { 
    // read the docs to add to the toolbar 
} 

function getColumnHeaders() { 
    // this grabs the headers of your sheet 
    var headers = SpreadsheetApp 
    .getActiveSheet() 
    .getRange(1, 1, 1, SpreadsheetApp.getActiveSheet().getLastColumn()) 
    .getValues()[0]; 

    // this will appear in your root directory 
    var newForm = FormApp.create('NEW FORM NAME'); 
    newForm.setDestination(FormApp.DestinationType.SPREADSHEET, SpreadsheetApp.getActiveSpreadsheet().getId()); 

    headers.forEach(function(each) { 
    newForm.addTextItem().setTitle(each); 
    }); 
} 

La documentazione può essere trovato qui: https://developers.google.com/apps-script/reference/forms/

Problemi correlati