Pratica l'utilizzo di Google Apps Script: accesso a Fogli Google, Maps e Gmail in 4 righe di codice.

1. Introduzione a Google Apps Script

In questo codelab, ti mostreremo uno dei modi più semplici per scrivere codice che accede alle tecnologie per sviluppatori di Google. Il tutto viene eseguito applicando JavaScript, un linguaggio di sviluppo web mainstream. Utilizzando Google Apps Script, scriverai il codice per estrarre un indirizzo stradale da una cella di un foglio Google, generare una mappa di Google in base all'indirizzo e quindi inviare la mappa come allegato utilizzando Gmail. Sai qual è la parte migliore? Saranno solo quattro righe di codice.

Obiettivi didattici

  • Come utilizzare Google Apps Script con vari servizi Google, come Fogli Google, Google Maps e Gmail.
  • Sviluppa codice utilizzando l'editor in-browser per Apps Script.

Che cosa ti serve

  • Un browser web con accesso a internet
  • Un Account Google (gli account Google Workspace potrebbero richiedere l'approvazione dell'amministratore)
  • Familiarità di base con Fogli Google
  • Possibilità di leggere la notazione A1 di Fogli

2. Sondaggio

Come utilizzerai questo codelab/tutorial?

Leggilo e basta Leggilo e completa gli esercizi

Come valuti la tua esperienza con le API e gli strumenti per sviluppatori di Google Workspace?

Principiante Intermedio Avanzato

3. Panoramica

Ora che sai di cosa tratta questo codelab, cosa farai esattamente?

  1. Scopri di più su Apps Script, che si basa su JavaScript.
  2. Crea un foglio di lavoro Fogli Google.
  3. Inserisci un indirizzo stradale nella cella in alto a sinistra (A1) del foglio di lavoro.
  4. Scopri come aprire l'editor di Apps Script per qualsiasi documento.
  5. Modifica il codice Apps Script, salvalo ed eseguilo.
  6. Utilizza Gmail per visualizzare il risultato.

Iniziamo.

Che cos'è Google Apps Script?

Google Apps Script è una piattaforma di sviluppo che consente di creare in modo semplice e veloce script e piccole applicazioni integrabili con Google Workspace. Con Apps Script, puoi:

  • Scrivi codice in JavaScript e accedi alle librerie integrate per le applicazioni Google Workspace come Gmail, Calendar, Drive e così via.
  • Non devi installare nulla: ti forniamo un editor di codice direttamente nel browser e i tuoi script vengono eseguiti sui server di Google.
  • Non devi preoccuparti di argomenti complessi come la sicurezza e le autorizzazioni di accesso ai dati, poiché la piattaforma se ne occupa per te.

Apps Script può essere utilizzato per creare varie applicazioni, dai chatbot alle app web. Uno degli utilizzi più comuni è l'estensione della funzionalità di un foglio di lavoro Google Sheets. Nel resto di questo codelab, imparerai a utilizzare Apps Script per estrarre i dati da un foglio di lavoro e collegarli ad altri servizi Google.

4. Creare un foglio Google e inserire un indirizzo stradale

In un nuovo foglio Google, inserisci un indirizzo stradale valido seguendo queste istruzioni:

  1. Crea un foglio Google utilizzando questo link pratico (sheets.google.com/create). In alternativa, vai su Google Drive (drive.google.com) e fai clic su Nuovo > Fogli Google > Foglio di lavoro vuoto.

413a93e5b2f6b3d4.png

  1. Nel foglio di lavoro vuoto, vai alla prima cella nell'angolo in alto a sinistra (A1). Si troverà nella colonna A e nella riga 1. Se hai bisogno di ripassare, puoi consultare questa descrizione della notazione A1.
  2. Inserisci un indirizzo valido nella cella. Scegli un indirizzo nel mondo con una posizione esatta utilizzando un indirizzo, un codice postale o una combinazione di città e stato/provincia. Ecco un esempio di indirizzo a New York:

7077e446455639df.png

Questo è tutto ciò che devi fare nel foglio. Apriamo l'editor e scriviamo un po' di codice.

5. Modificare il codice Apps Script

Ora che hai un nuovo foglio Google, è il momento di modificarne lo script associato. Segui queste istruzioni:

Apri l'editor di script

Nella barra dei menu, seleziona Estensioni > Apps Script per aprire l'editor di codice del browser per Apps Script.

In una nuova scheda del browser, l'editor di codice mostra lo script associato al contenitore predefinito per il foglio. Viene creata automaticamente una funzione predefinita denominata myFunction() e il cursore viene posizionato all'interno della funzione per consentirti di iniziare.

Invia una mappa Google dell'indirizzo via email

Il codice "template" che ti viene fornito è vuoto, quindi sostituiamolo con la nostra applicazione.

  1. Nell'editor di script, sostituisci il blocco di codice myFunction() predefinito con il seguente codice:
/** @OnlyCurrentDoc */
function sendMap() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var address = sheet.getRange('A1').getValue();
  var map = Maps.newStaticMap().addMarker(address);
  GmailApp.sendEmail('YOUR_EMAIL_ADDR', 'Map', 'See below.', {attachments:[map]});
}
  1. Sostituisci l'indirizzo email segnaposto ('YOUR_EMAIL_ADDR') con uno valido. Ad esempio, friend@example.com.
  2. Per salvare il copione, fai clic su Salva salva.
  3. Per rinominare il progetto Apps Script, fai clic su Progetto senza titolo, inserisci un titolo per il progetto e fai clic su Rinomina.

Revisione del codice

Esaminiamo le quattro righe della funzione sendMap() che compongono l'intera applicazione. È interessante notare che il codice fa riferimento a tre diversi prodotti Google.

La prima riga è un commento di annotazione che influisce sull'autorizzazione:

/** @OnlyCurrentDoc */

La maggior parte degli script chiede all'utente alcune autorizzazioni prima di poter essere eseguiti. Queste autorizzazioni controllano le azioni che l'utente consente allo script di eseguire. La prima riga è un commento contenente un'annotazione facoltativa che indica ad Apps Script di limitare l'accesso al foglio di lavoro corrente (anziché a tutti i fogli di lavoro dell'utente). È sempre consigliabile includere questa annotazione quando si lavora con un solo file.

Il codice utilizza una normale dichiarazione di funzione JavaScript per sendMap():

function sendMap() {

La riga successiva chiama il servizio fogli di lavoro accessibile da Apps Script tramite l'oggetto SpreadsheetApp. Il foglio restituito viene assegnato a una variabile con lo stesso nome. Il metodo getActiveSheet() recupera un riferimento all'oggetto foglio corrente e lo memorizza nella variabile sheet.

  var sheet = SpreadsheetApp.getActiveSheet();

Con l'oggetto sheet, facciamo riferimento all'intervallo di celle (di una singola cella) nella notazione A1 con getRange(). Un "intervallo" è un gruppo di celle, inclusa una singola cella come A1 (quella in cui abbiamo inserito l'indirizzo). Per recuperare i dati all'interno dell'intervallo, il metodo getValue() restituisce il valore della cella in alto a sinistra dell'intervallo e lo assegna alla variabile address. Puoi anche provare ad aggiungere altri indirizzi e a leggere da celle diverse.

  var address = sheet.getRange('A1').getValue();

La terza riga di codice si connette al servizio Maps di Google utilizzando l'oggetto Maps. newStaticMap() crea un oggetto mappa statico e il metodo addMarker() aggiunge un "pin" alla mappa utilizzando l'indirizzo nel foglio.

  var map = Maps.newStaticMap().addMarker(address);

Infine, il servizio Gmail tramite l'oggetto MailApp chiama il metodo sendEmail() per inviare l'email che include sia il testo "Vedi sotto" sia l'immagine della mappa come allegato.

  GmailApp.sendEmail('friend@example.com', 'Map', 'See below.', {attachments:[map]});
}

6. Esegui le app Fogli Google, Maps e Gmail

Una volta assegnato un nome e salvato, è il momento di eseguire la funzione. Nella parte superiore dell'editor, assicurati che sendMap() sia selezionato dall'elenco delle funzioni e fai clic su Esegui.

Una funzionalità di Apps Script apprezzata dagli sviluppatori è che non è necessario scrivere codice di autorizzazione che conceda al programma l'accesso ai dati dell'utente. Anche se Apps Script gestisce questa operazione, gli utenti della tua app devono comunque concedere l'autorizzazione allo script per accedere ai loro fogli di lavoro e inviare email tramite Gmail. La prima finestra di dialogo di autorizzazione ha il seguente aspetto:

ba6e1a798e404e0d.png

Fai clic su Rivedi autorizzazioni per continuare.

Successivamente, verrà visualizzata la finestra di dialogo OAuth2 che chiede l'autorizzazione ad accedere al foglio e a inviare email per tuo conto:

9bed7ef1ccbd7569.png

Dopo aver concesso l'autorizzazione, lo script viene eseguito fino al completamento.

Controlla l'account email da cui hai inviato il messaggio. Dovresti trovare un'email con "Mappa" come oggetto e un messaggio simile a questo:

51f61fc51a13d28f.png

Quando apri l'allegato nel messaggio email, dovresti visualizzare una mappa di Google con un segnaposto sull'indirizzo che hai inserito nel foglio:

739bb45b75e3f7c7.png

Con sole quattro righe di codice, hai avuto accesso a tre diversi prodotti Google in modo significativo.

7. Risorse aggiuntive

Il codice utilizzato in questo codelab è disponibile anche nel suo repository GitHub all'indirizzo github.com/googleworkspace/apps-script-intro-codelab. Di seguito sono riportate altre risorse per approfondire il materiale trattato in questo codelab ed esplorare altri modi di accedere agli strumenti per sviluppatori Google attraverso la programmazione.

Documentazione

Video

Novità e aggiornamenti

Altri codelab

Introduttivo

Intermedio

Applicazioni di riferimento