Sto riscontrando un problema critico e persistente con i trigger "onFormSubmit" nei miei progetti Google Apps Script. In sintesi, la funzione collegata al trigger "All'invio del modulo" non riceve l'oggetto evento e completo, in particolare e.namedValues risulta essere undefined o vuoto, impedendo l'elaborazione dei dati del modulo.
Descrizione del problema: Quando un utente invia un modulo Google (Google Forms), la funzione Apps Script designata per il trigger "All'invio del modulo" (onFormSubmit) viene eseguita, ma l'oggetto e passato alla funzione non contiene i dati delle risposte del modulo (e.namedValues è sempre undefined o un oggetto vuoto {}). Questo si traduce in errori come TypeError: Cannot read properties of undefined (reading 'namedValues') o in valori undefined quando si tenta di accedere ai campi del modulo.
Contesto: Il problema si manifesta con un modulo Google (ID Modulo: 1NhBJwi6nZgliIrLZrQCZnz45znrSjgWN8UHJjlDJRK0) collegato a un progetto Google Apps Script (ID Progetto Script: 1lGlYKfKdWpW374--OfSoyKCM0fCjYRl1z67sWipMSWDCTgbQB864QEEH). La funzione onFormSubmitComunicazioneAssenze(e) è destinata a elaborare i dati e aggiornare un Google Sheet.
Passaggi di troubleshooting già eseguiti (cruciali):
Verifica del codice: Il codice della funzione onFormSubmitComunicazioneAssenze è stato verificato più volte ed è corretto, includendo controlli per e.namedValues.
Verifica del trigger:
Il trigger è configurato correttamente come "Dal modulo - All'invio del modulo" per la funzione onFormSubmitComunicazioneAssenze.
L'ID del progetto script è stato confermato essere quello corretto e legato al modulo.
È stato eliminato e ricreato più volte il trigger per assicurare una configurazione pulita.
Allego uno screenshot della configurazione del trigger, che mostra 0% di errori di attivazione (Screenshot (3).png).
Test di autorizzazione:
È stata tentata l'esecuzione manuale dello script per forzare la richiesta di autorizzazione.
Non è comparsa alcuna finestra di richiesta di autorizzazione, suggerendo che il sistema di Google crede già che l'autorizzazione sia stata concessa.
Nella pagina myaccount.google.com/connections , la voce "Google Apps Script" non è presente nell'elenco delle app connesse, indicando una potenziale anomalia nei permessi a livello di account.
Test con modulo e script semplificati (diagnosi cruciale):
È stato creato un nuovo, minimalista modulo Google con una sola domanda a risposta breve.
È stato creato un nuovo, separato progetto Apps Script , legandolo a questo modulo di test.
Questo nuovo script conteneva solo una funzione onFormSubmitTestSemplice(e) che si limitava a loggare il contenuto di e.namedValues.
Il trigger "All'invio del modulo" è stato configurato per questo nuovo script/modulo.
Risultato: Anche con questo setup minimalista e completamente nuovo, e.namedValues è risultato undefined o vuoto.
Troubleshooting del browser:
Google Chrome è stato aggiornato all'ultima versione.
Sono stati eseguiti test in modalità incognito.
È stata tentata la cancellazione della cache e dei cookie.
Risultato: Nessuno di questi passaggi ha risolto il problema.
Conclusione: Tutti i test e le verifiche indicano che il problema non è legato al codice specifico o alla configurazione del trigger, ma a un'anomalia più profonda nel modo in cui l'oggetto evento di invio modulo viene passato da Google Forms a Google Apps Script all'interno di questo specifico account utente. Sembra essere un problema sistemico con l'ambiente o le autorizzazioni dell'account.
Richiesta: Chiedo gentilmente assistenza per diagnosticare e risolvere questa problematica fondamentale che impedisce il corretto funzionamento dei trigger di invio modulo in Google Apps Script.
Resto a disposizione per fornire qualsiasi dettaglio aggiuntivo o per effettuare ulteriori test.
Grazie per il vostro tempo e supporto.
Cordiali saluti,