Ćwiczenie praktyczne z językiem Google Apps Script: dostęp do Arkuszy, Map i Gmaila w 4 wierszach kodu

1. Google Apps Script – wprowadzenie

W ramach tego ćwiczenia w programie pokażemy Ci jeden z najprostszych sposobów pisania kodu korzystającego z technologii Google dla deweloperów. Wszystko to bazuje na języku JavaScript – popularnego języka programowania stron internetowych. Skrypt Google Apps Script pozwoli Ci napisać kod wyodrębniający adres pocztowy z komórki w arkuszu Google, wygenerować mapę Google na podstawie adresu, a następnie wysłać tę mapę jako załącznik, korzystając z Gmaila. A najlepsze jest to, Składa się on z 4 wierszy kodu.

Czego się nauczysz

  • Jak używać Google Apps Script z różnymi usługami Google, takimi jak Arkusze Google, Mapy Google i Gmail
  • Twórz kod za pomocą wbudowanego w przeglądarkę edytora Apps Script.

Czego potrzebujesz

  • Przeglądarka z dostępem do internetu
  • konto Google (konta Google Workspace mogą wymagać zatwierdzenia przez administratora),
  • Podstawowa znajomość Arkuszy Google
  • możliwość odczytywania notacji A1 w Arkuszach;

2. Ankieta

W jaki sposób będziesz używać tego ćwiczenia z programowania/samouczka?

Tylko do przeczytania Przeczytaj go i wykonaj ćwiczenia

Jak oceniasz swoje wrażenia z korzystania z narzędzi dla programistów Google Workspace Interfejsy API?

Początkujący Poziom średnio zaawansowany Biegły
.

3. Omówienie

Wiesz już, o czym są ćwiczenia z programowania. Co dokładnie będziesz robić?

  1. Dowiedz się więcej o Apps Script, który jest oparty na języku JavaScript.
  2. Utwórz arkusz kalkulacyjny w Arkuszach Google.
  3. Wpisz adres w lewej górnej komórce arkusza (A1).
  4. Dowiedz się, jak otworzyć edytor Apps Script dowolnego dokumentu.
  5. Edytuj kod Apps Script, zapisz go i uruchom.
  6. Aby wyświetlić wynik, użyj Gmaila.

Możemy zaczynać.

Co to jest Google Apps Script?

Google Apps Script to platforma programistyczna, która umożliwia szybkie i łatwe tworzenie skryptów i małych aplikacji, które można zintegrować z Google Workspace. Apps Script umożliwia:

  • Pisz kod w języku JavaScript i korzystaj z wbudowanych bibliotek dla aplikacji Google Workspace, takich jak Gmail, Kalendarz czy Dysk.
  • Nie musisz niczego instalować – udostępniamy Ci edytor kodu bezpośrednio w przeglądarce, a Twoje skrypty są uruchamiane na serwerach Google.
  • Nie musisz się martwić skomplikowanymi tematami, takimi jak bezpieczeństwo i uprawnienia dostępu do danych – platforma zajmuje się nimi za Ciebie.

Apps Script umożliwia tworzenie różnych aplikacji – od botów na czacie po aplikacje internetowe. Jednym z najpopularniejszych zastosowań jest rozszerzenie funkcjonalności arkusza kalkulacyjnego Arkuszy Google. W pozostałej części tego ćwiczenia w Codelabs dowiesz się, jak przy użyciu Apps Script pobierać dane z arkuszy kalkulacyjnych i łączyć je z innymi usługami Google.

4. Utwórz arkusz Google i wpisz ulicę i numer

W nowym arkuszu Google wpisz prawidłowy adres zgodnie z tymi instrukcjami:

  1. Utwórz arkusz Google, korzystając z tego wygodnego linku (sheets.google.com/create). Możesz też otworzyć Dysk Google (drive.google.com) i kliknąć Nowy > Arkusze Google > Pusty arkusz kalkulacyjny

413a93e5b2f6b3d4.png

  1. W pustym arkuszu kalkulacyjnym przejdź do pierwszej komórki w lewym górnym rogu (A1). Będzie on znajdować się w kolumnie A i wierszu 1. Jeśli chcesz odświeżyć swoją wiedzę, zapoznaj się z tym opisem notacji A1.
  2. Wpisz prawidłowy adres w komórce. Wybierz adres na świecie z dokładną lokalizacją – podaj ulicę, kod pocztowy lub kombinację miasta i województwa. Oto przykład adresu w Nowym Jorku:

7077e446455639df.png

To wszystko, co musisz zrobić w arkuszu. Otwórz edytor i napiszmy kod.

5. Edytuj kod Apps Script

Skoro masz już nowy arkusz Google, czas edytować powiązany skrypt. Aby to zrobić:

Otwórz edytor skryptów

Na pasku menu kliknij Rozszerzenia > Apps Script, aby otworzyć edytor kodu przeglądarki dla Apps Script.

Na nowej karcie przeglądarki edytor kodu pokazuje domyślny skrypt powiązany z kontenerem dla arkusza. Aby rozpocząć pracę z funkcją domyślną o nazwie myFunction(), zostanie w niej umieszczony kursor.

Wyślij e-mailem adres z Map Google

Szablon Podany kod jest pusty. Zastąpmy go naszą aplikacją.

  1. W edytorze skryptów zastąp domyślny blok kodu myFunction() tym kodem:
/** @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. Zastąp zastępczy adres e-mail ('YOUR_EMAIL_ADDR') prawidłowym adresem. Przykład: friend@example.com.
  2. Aby zapisać skrypt, kliknij Zapisz zapisz.
  3. Aby zmienić nazwę projektu Apps Script, kliknij Untitled project (Projekt bez tytułu), wpisz tytuł projektu i kliknij Zmień nazwę.

Weryfikacja kodu

Omówmy 4 wiersze funkcji sendMap(), które składają się na całą aplikację. Co ciekawe, kod odwołuje się do 3 różnych produktów Google.

Pierwszy wiersz to komentarz adnotacji, który wpływa na autoryzację:

/** @OnlyCurrentDoc */

Większość skryptów wymaga od użytkownika uprawnień, zanim będą mogły zostać uruchomione. Te uprawnienia określają, na co użytkownik zezwala skryptowi. Pierwszy wiersz to komentarz zawierający opcjonalną adnotację z prośbą o ograniczenie dostępu dla Apps Script do bieżącego arkusza kalkulacyjnego (a nie do wszystkich arkuszy kalkulacyjnych użytkownika). Sprawdzoną metodą jest dodanie tej adnotacji, gdy pracujesz tylko z jednym plikiem.

Kod używa normalnej deklaracji funkcji JavaScriptu dla elementu sendMap():

function sendMap() {

W następnym wierszu wywołujesz usługę arkusza kalkulacyjnego dostępną z Apps Script za pomocą obiektu SpreadsheetApp. Zwrócony arkusz jest przypisany do zmiennej o tej samej nazwie. Metoda getActiveSheet() uzyskuje odwołanie do bieżącego obiektu arkusza i zapisuje go w zmiennej sheet.

  var sheet = SpreadsheetApp.getActiveSheet();

W obiekcie sheet odwołujemy się do zakresu komórek (pojedynczej komórki) w notacji A1 za pomocą funkcji getRange(). „Zakres” to grupa komórek, w tym jedna, na przykład komórka A1 (ta, w której wprowadzono adres). Aby pobrać element w obrębie zakresu, metoda getValue() zwraca wartość lewej górnej komórki zakresu i przypisuje wartość do zmiennej address. Możesz też dodać więcej adresów i odczytać dane z innych komórek.

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

Trzeci wiersz kodu łączy się z usługą Map Google za pomocą obiektu Maps. newStaticMap() tworzy statyczny obiekt mapy, a metoda addMarker() dodaje element „pin” za pomocą adresu z arkusza.

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

Na koniec usługa Gmail za pomocą obiektu MailApp wywołuje metodę sendEmail(), aby wysłać e-maila zawierającego tekst „Zobacz poniżej”. oraz obraz mapy w formie załącznika.

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

6. Uruchamianie aplikacji Arkusze Google, Mapy i Gmail

Po nazwaniu i zapisaniu funkcji należy ją uruchomić. U góry edytora wybierz sendMap() z listy funkcji i kliknij Uruchom.

Docenianą przez programistów funkcja Apps Script jest fakt, że nie trzeba pisać kodu autoryzacji, który przyznaje programowi dostęp do danych użytkownika. Mimo że Apps Script zarządza tą funkcją, użytkownicy aplikacji nadal muszą zezwolić skryptowi na dostęp do swoich arkuszy kalkulacyjnych i wysyłanie e-maili przez Gmaila. Pierwsze okno autoryzacji wygląda tak:

ba6e1a798e404e0d.png

Aby kontynuować, kliknij Sprawdź uprawnienia.

Pojawi się okno OAuth2 z prośbą o zgodę na dostęp do Twojego arkusza i wysyłanie e-maili w Twoim imieniu:

9bed7ef1ccbd7569.png

Gdy przyznasz uprawnienia, skrypt będzie działać w całości.

Sprawdź konto e-mail, na które została wysłana wiadomość – powinna być tam wiadomość z „Mapą”. w temacie i wiadomości, która wygląda tak:

51f61fc51a13d28f.png

Gdy otworzysz załącznik w e-mailu, powinna się wyświetlić mapa Google z pinezką na adresie wpisanym w arkuszu:

739bb45b75e3f7c7.png

Wystarczy wpisać cztery wiersze kodu, by w znaczący sposób uzyskać dostęp do 3 różnych usług Google.

7. Dodatkowe materiały

Kod zaprezentowany w tym ćwiczeniu jest również dostępny w repozytorium GitHub na stronie github.com/googleworkspace/apps-script-intro-codelab. Poniżej znajdziesz więcej zasobów, które pomogą Ci pogłębić informacje przedstawione w tym ćwiczeniu z programowania i poznać inne sposoby korzystania z narzędzi Google dla programistów.

Dokumentacja

Filmy

Wiadomości i aktualizacje

Inne ćwiczenia z programowania

Wprowadzające

Średnio zaawansowany

Aplikacje referencyjne