JavaScript, HTML, CSS e... !
0 commenti

SpreadsheetApp.getUi() non può essere chiamato da questo contesto

Cannot call SpreadsheetApp.getUi() from this context

Questo tipo di errore (Fig. 1) viene restituito solitamente quando si tenta di invocare le funzioni di interfaccia utente (getUI) da un documento diverso da quello attivo, o meglio, uno script (bound-script) può interagire solo con l'interfaccia utente per l'istanza corrente del file aperto, pertanto uno script associato a un documento non può influenzare l'interfaccia utente di un altro documento (per approfondimenti: https://developers.google.com/apps-script/guides/bound#custom_menus_dialogs_and_sidebars).



SpreadsheetApp.getUi() non può essere chiamato da questo contesto

Fig. 1 - SpreadsheetApp.getUi() non può essere chiamato da questo contesto


Un errore simile 'SpreadsheetApp.getUi() cannot be called from this context' può essere restituito anche quando si tenta di chiamare una funzione per aprire una finestra di dialogo tramite un trigger automatico. Le interfacce di tipo UI richiedono un'azione da parte di un utente per essere lanciate, come ad esempio un click su una voce di menu, o su un bottone, che chiama una funzione e che a sua volta farà apparire la finestra di dialogo.

Una soluzione all'apertura di una modal (o dialog-box) all'interno di Web App la potete trovare nell'articolo 'Creare una Modal Box in puro Javascript per le Web App in Apps Script', di seguito un'anteprima del risultato (Fig. 1):



modal box in puro javascript per le web app in apps script

Fig. 1 - Modal box in puro Javascript per le Web App in Apps Script


Gli amanti di jQuery possono invece fare riferimento all'articolo 'Creare una Modal Box con jQuery per le Web App in Apps Script' dove è presente un codice di esempio per l'apertura di una modal semplice ed un altro per l'apertura di una modal contenente un form per l'immissione dati da parte dell'utente.

Tags

Michele Pisani

Michele Pisani

Sviluppatore Javascript ed esperto in Digital Analytics

L'esperienza nel settore Digital Analytics unita ad anni di sviluppo in Javascript ha trovato la massima espressione in Google Apps Script che mi ha permesso, con estrema facilità e poche righe di codice, di realizzare potenti applicazioni interattive e processi automatizzati integrati con i prodotti della G Suite.

Come contattarmi
scrivi un commento

0 Commenti

Non ci sono commenti

Nessuno ha ancora commentato questo articolo, fallo tu per primo!

scrivi un commento

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato.I campi contrassegnati da un * sono obbligatori
Puoi utilizzare i seguenti tag nei commenti:
[bold]testo[/bold] se vuoi evidenziare un testo con il grassetto[code]function helloworld() { }[/code] se vuoi pubblicare una porzione di codice[url]https://www.appsscript.it[/url] se devi riferirti ad un indirizzo web